Revert "Fix compilation, by "fixing" VLC_PUBLIC_API." as the compilation breakage...
authorPierre d'Herbemont <pdherbemont@free.fr>
Wed, 19 Mar 2008 09:31:46 +0000 (10:31 +0100)
committerPierre d'Herbemont <pdherbemont@free.fr>
Wed, 19 Mar 2008 09:31:46 +0000 (10:31 +0100)
This reverts commit 82d39c38faa8a4eaeb613d65d27957321f449c02.

include/vlc_common.h
include/vlc_objects.h

index bc179a0..1384f90 100644 (file)
@@ -455,8 +455,8 @@ typedef int ( * vlc_callback_t ) ( vlc_object_t *,      /* variable's object */
 
 #if defined (WIN32) && defined (DLL_EXPORT)
 #  ifdef __cplusplus
-#    define VLC_PUBLIC_API __declspec(dllexport)
-#    define VLC_PRIVATE_API __declspec(dllexport)
+#    define VLC_PUBLIC_API extern "C" __declspec(dllexport)
+#    define VLC_PRIVATE_API extern "C" __declspec(dllexport)
 #    define   VLC_EXPORT( type, name, args ) extern "C" __declspec(dllexport) type name args
 #    define VLC_INTERNAL( type, name, args ) extern "C" type name args
 #  else
@@ -468,12 +468,12 @@ typedef int ( * vlc_callback_t ) ( vlc_object_t *,      /* variable's object */
 #else
 #  ifdef __cplusplus
 #    ifdef HAVE_ATTRIBUTE_VISIBILITY
-#      define VLC_PUBLIC_API __attribute__((visibility("default")))
-#      define VLC_PRIVATE_API __attribute__((visibility("default")))
+#      define VLC_PUBLIC_API extern "C" __attribute__((visibility("default")))
+#      define VLC_PRIVATE_API extern "C" __attribute__((visibility("default")))
 #      define   VLC_EXPORT( type, name, args ) extern "C" __attribute__((visibility("default"))) type name args
 #      define VLC_INTERNAL( type, name, args ) extern "C" __attribute__((visibility("hidden"))) type name args
 #    else
-#      define VLC_PUBLIC_API
+#      define VLC_PUBLIC_API extern "C"
 #      define   VLC_EXPORT( type, name, args ) extern "C" type name args
 #      define VLC_INTERNAL( type, name, args ) extern "C" type name args
 #    endif
index 1115bbe..0f5bbde 100644 (file)
@@ -86,6 +86,9 @@
 /* Types */
 typedef void (*vlc_destructor_t)(struct vlc_object_t *);
 
+/* Constants */
+VLC_PUBLIC_API const vlc_destructor_t kVLCDestructor;
+
 /*****************************************************************************
  * The vlc_object_t type. Yes, it's that simple :-)
  *****************************************************************************/