objects: merge vlc_object_t and vlc_common_members
authorRémi Denis-Courmont <remi@remlab.net>
Sun, 14 Apr 2019 19:09:02 +0000 (22:09 +0300)
committerRémi Denis-Courmont <remi@remlab.net>
Sun, 14 Apr 2019 19:24:33 +0000 (22:24 +0300)
This should fix historical aliasing issues.

56 files changed:
include/vlc_addons.h
include/vlc_aout.h
include/vlc_aout_volume.h
include/vlc_codec.h
include/vlc_demux.h
include/vlc_events.h
include/vlc_extensions.h
include/vlc_filter.h
include/vlc_fingerprinter.h
include/vlc_inhibit.h
include/vlc_input.h
include/vlc_interface.h
include/vlc_keystore.h
include/vlc_media_library.h
include/vlc_meta.h
include/vlc_meta_fetcher.h
include/vlc_objects.h
include/vlc_opengl.h
include/vlc_playlist_export.h
include/vlc_playlist_legacy.h
include/vlc_probe.h
include/vlc_renderer_discovery.h
include/vlc_services_discovery.h
include/vlc_sout.h
include/vlc_spu.h
include/vlc_stream.h
include/vlc_stream_extractor.h
include/vlc_tls.h
include/vlc_video_splitter.h
include/vlc_vod.h
include/vlc_vout.h
include/vlc_vout_display.h
include/vlc_vout_window.h
include/vlc_xml.h
lib/media_player_internal.h
modules/access/http/connmgr.c
modules/audio_output/mmdevice.h
modules/codec/avcodec/encoder.c
modules/codec/avcodec/va.h
modules/demux/mpeg/ps.c
modules/keystore/secret.c
modules/misc/webservices/acoustid.c
modules/video_chroma/d3d11_fmt.c
modules/video_output/opengl/converter.h
modules/video_output/vulkan/instance.h
src/input/player.c
src/input/vlm_internal.h
src/interface/dialog.c
src/media_source/media_source.c
src/misc/messages.c
src/misc/objects.c
src/misc/update.h
src/misc/variables.h
src/modules/modules.c
src/network/httpd.c
src/video_output/vout_spuregion_helper.h

index c1131e0..7447c7e 100644 (file)
@@ -106,7 +106,7 @@ typedef struct addons_finder_t addons_finder_t;
 typedef struct addons_finder_sys_t addons_finder_sys_t;
 struct addons_finder_t
 {
-    struct vlc_common_members obj;
+    struct vlc_object_t obj;
 
     int ( * pf_find )( addons_finder_t * );
     int ( * pf_retrieve )( addons_finder_t *, addon_entry_t * );
@@ -120,7 +120,7 @@ typedef struct addons_storage_t addons_storage_t;
 typedef struct addons_storage_sys_t addons_storage_sys_t;
 struct addons_storage_t
 {
-    struct vlc_common_members obj;
+    struct vlc_object_t obj;
 
     int ( * pf_install )( addons_storage_t *, addon_entry_t * );
     int ( * pf_remove )( addons_storage_t *, addon_entry_t * );
index 579119f..43fbf2f 100644 (file)
@@ -137,7 +137,7 @@ struct vlc_audio_output_events {
  **/
 struct audio_output
 {
-    struct vlc_common_members obj;
+    struct vlc_object_t obj;
 
     void *sys; /**< Private data for callbacks */
 
index 2421877..4988ef1 100644 (file)
@@ -43,7 +43,7 @@ typedef struct audio_volume audio_volume_t;
  */
 struct audio_volume
 {
-    struct vlc_common_members obj;
+    struct vlc_object_t obj;
 
     vlc_fourcc_t format; /**< Audio samples format */
     void (*amplify)(audio_volume_t *, block_t *, float); /**< Amplifier */
index 118adc0..71f3e84 100644 (file)
@@ -98,7 +98,7 @@ struct decoder_owner_callbacks
  */
 struct decoder_t
 {
-    struct vlc_common_members obj;
+    struct vlc_object_t obj;
 
     /* Module properties */
     module_t *          p_module;
@@ -220,7 +220,7 @@ struct decoder_cc_desc_t
 
 struct encoder_t
 {
-    struct vlc_common_members obj;
+    struct vlc_object_t obj;
 
     /* Module properties */
     module_t *          p_module;
@@ -498,7 +498,7 @@ enum vlc_decoder_device_type
  */
 typedef struct vlc_decoder_device
 {
-    struct vlc_common_members obj;
+    struct vlc_object_t obj;
 
     /** Private context that could be used by the "decoder device" module
      * implementation */
index 11cfc6e..9930c09 100644 (file)
@@ -53,7 +53,7 @@
 /* demux_meta_t is returned by "meta reader" module to the demuxer */
 typedef struct demux_meta_t
 {
-    struct vlc_common_members obj;
+    struct vlc_object_t obj;
     input_item_t *p_item; /***< the input item that is being read */
 
     vlc_meta_t *p_meta;                 /**< meta data */
index beefd41..845dd31 100644 (file)
@@ -46,9 +46,9 @@
  * (see src/misc/variables.c).
  *
  * It has the following advantages over Variable based Callback:
- * - No need to implement the whole vlc_common_members in the object,
+ * - No need to implement the whole vlc_object_t in the object,
  * thus it reduce it size. This is especially true for input_item_t which
- * doesn't have vlc_common_members. This is the first reason of existence of
+ * doesn't have vlc_object_t. This is the first reason of existence of
  * this implementation.
  * - Libvlc can easily be based upon that.
  * - Existing event are clearly declared (in include/vlc_events.h)
@@ -56,7 +56,7 @@
  *
  **** Example usage
  *
- * (vlc_cool_object_t doesn't need to have the vlc_common_members.)
+ * (vlc_cool_object_t doesn't need to have the vlc_object_t.)
  *
  * struct vlc_cool_object_t
  * {
index bba1364..28937fc 100644 (file)
@@ -51,7 +51,7 @@ typedef struct extension_t {
 /** Extensions manager object */
 struct extensions_manager_t
 {
-    struct vlc_common_members obj;
+    struct vlc_object_t obj;
 
     module_t *p_module;                /**< Extensions manager module */
     extensions_manager_sys_t *p_sys;   /**< Reserved for the module */
index b2a8f87..65d2ea0 100644 (file)
@@ -65,7 +65,7 @@ struct vlc_mouse_t;
  */
 struct filter_t
 {
-    struct vlc_common_members obj;
+    struct vlc_object_t obj;
 
     /* Module properties */
     module_t *          p_module;
index aba6d8e..200f3ae 100644 (file)
@@ -68,7 +68,7 @@ static inline void fingerprint_request_Delete( fingerprint_request_t *p_f )
 
 struct fingerprinter_thread_t
 {
-    struct vlc_common_members obj;
+    struct vlc_object_t obj;
 
     /* Specific interfaces */
     fingerprinter_sys_t * p_sys;
index 9609200..113a9e6 100644 (file)
@@ -42,7 +42,7 @@ enum vlc_inhibit_flags
 
 struct vlc_inhibit
 {
-    struct vlc_common_members obj;
+    struct vlc_object_t obj;
 
     vlc_inhibit_sys_t *p_sys;
     void (*inhibit) (vlc_inhibit_t *, unsigned flags);
index 51bad61..e6bd844 100644 (file)
@@ -224,7 +224,7 @@ typedef struct input_resource_t input_resource_t;
  */
 struct input_thread_t
 {
-    struct vlc_common_members obj;
+    struct vlc_object_t obj;
 };
 
 /**
index ff285f7..66331e3 100644 (file)
@@ -46,7 +46,7 @@ typedef struct intf_sys_t intf_sys_t;
 /** Describe all interface-specific data of the interface thread */
 typedef struct intf_thread_t
 {
-    struct vlc_common_members obj;
+    struct vlc_object_t obj;
 
     struct intf_thread_t *p_next; /** LibVLC interfaces book keeping */
 
index 8fe8964..8026298 100644 (file)
@@ -294,7 +294,7 @@ vlc_keystore_release_entry(vlc_keystore_entry *p_entry)
 typedef struct vlc_keystore_sys vlc_keystore_sys;
 struct vlc_keystore
 {
-    struct vlc_common_members obj;
+    struct vlc_object_t obj;
     module_t            *p_module;
     vlc_keystore_sys    *p_sys;
 
index ce88509..1abbf50 100644 (file)
@@ -664,7 +664,7 @@ typedef struct vlc_medialibrary_callbacks_t
 
 struct vlc_medialibrary_module_t
 {
-    struct vlc_common_members obj;
+    struct vlc_object_t obj;
 
     module_t *p_module;
 
index f564989..897d227 100644 (file)
@@ -98,7 +98,7 @@ VLC_API const char * vlc_meta_TypeToLocalizedString( vlc_meta_type_t meta_type )
 
 typedef struct meta_export_t
 {
-    struct vlc_common_members obj;
+    struct vlc_object_t obj;
     input_item_t *p_item;
     const char *psz_file;
 } meta_export_t;
index da9a353..d540b2d 100644 (file)
@@ -30,7 +30,7 @@ typedef enum meta_fetcher_scope_t
 
 typedef struct meta_fetcher_t
 {
-    struct vlc_common_members obj;
+    struct vlc_object_t obj;
     input_item_t *p_item;
     meta_fetcher_scope_t e_scope;
 } meta_fetcher_t;
index 4b4527c..cc5eea6 100644 (file)
@@ -30,6 +30,7 @@
 
 struct vlc_logger;
 struct vlc_object_internals;
+struct vlc_object_marker;
 
 /**
  * VLC object common members
@@ -38,10 +39,13 @@ struct vlc_object_internals;
  * Object also have private properties maintained by the core, see
  * \ref vlc_object_internals_t
  */
-struct vlc_common_members
+struct vlc_object_t
 {
     struct vlc_logger *logger;
-    struct vlc_object_internals *priv;
+    union {
+        struct vlc_object_internals *priv;
+        struct vlc_object_marker *obj;
+    };
 
     bool no_interact;
 
@@ -64,10 +68,16 @@ struct vlc_common_members
 #if !defined(__cplusplus)
 # define VLC_OBJECT(x) \
     _Generic((x)->obj, \
-        struct vlc_common_members: (vlc_object_t *)(x) \
+        struct vlc_object_marker *: (x), \
+        default: (&((x)->obj)) \
     )
 # define vlc_object_cast(t)
 #else
+static inline vlc_object_t *VLC_OBJECT(vlc_object_t *o)
+{
+    return o;
+}
+
 # define vlc_object_cast(t) \
 struct t; \
 static inline struct vlc_object_t *VLC_OBJECT(struct t *d) \
@@ -76,7 +86,6 @@ static inline struct vlc_object_t *VLC_OBJECT(struct t *d) \
 }
 #endif
 
-vlc_object_cast(vlc_object_t)
 vlc_object_cast(libvlc_int_t)
 vlc_object_cast(intf_thread_t)
 vlc_object_cast(vlc_player_t)
@@ -100,19 +109,10 @@ vlc_object_cast(services_discovery_t)
 vlc_object_cast(vlc_renderer_discovery_t)
 vlc_object_cast(vlc_medialibrary_module_t)
 
-/*****************************************************************************
- * The vlc_object_t type. Yes, it's that simple :-)
- *****************************************************************************/
-/** The main vlc_object_t structure */
-struct vlc_object_t
-{
-    struct vlc_common_members obj;
-};
-
 /* The root object */
 struct libvlc_int_t
 {
-    struct vlc_common_members obj;
+    struct vlc_object_t obj;
 };
 
 /**
@@ -158,7 +158,7 @@ VLC_API vlc_object_t *vlc_object_parent(vlc_object_t *obj) VLC_USED;
 
 static inline struct vlc_logger *vlc_object_logger(vlc_object_t *obj)
 {
-    return obj->obj.logger;
+    return obj->logger;
 }
 #define vlc_object_logger(o) vlc_object_logger(VLC_OBJECT(o))
 
index c8e7de6..8c4909f 100644 (file)
@@ -40,7 +40,7 @@ typedef struct vlc_gl_t vlc_gl_t;
 
 struct vlc_gl_t
 {
-    struct vlc_common_members obj;
+    struct vlc_object_t obj;
 
     struct vout_window_t *surface;
     module_t *module;
index ffee11e..d4cf0ce 100644 (file)
@@ -61,7 +61,7 @@ vlc_playlist_view_Get(struct vlc_playlist_view *view, size_t index);
  */
 struct vlc_playlist_export
 {
-    struct vlc_common_members obj;
+    struct vlc_object_t obj;
     char *base_url;
     FILE *file;
     struct vlc_playlist_view *playlist_view;
index ad0cb8d..8f4521e 100644 (file)
@@ -111,7 +111,7 @@ struct intf_thread_t;
 /** Helper structure to export to file part of the playlist */
 typedef struct playlist_export_t
 {
-    struct vlc_common_members obj;
+    struct vlc_object_t obj;
     char *base_url;
     FILE *p_file;
     playlist_item_t *p_root;
@@ -145,7 +145,7 @@ typedef enum
 /** Structure containing information about the playlist */
 struct playlist_t
 {
-    struct vlc_common_members obj;
+    struct vlc_object_t obj;
 
     playlist_item_array_t items; /**< Arrays of items */
 
index 89ba938..3ed3106 100644 (file)
@@ -38,7 +38,7 @@ void *vlc_probe (vlc_object_t *, const char *, size_t *);
 
 struct vlc_probe_t
 {
-    struct vlc_common_members obj;
+    struct vlc_object_t obj;
 
     void  *list;
     size_t count;
index dc55ba2..8c13a4a 100644 (file)
@@ -163,7 +163,7 @@ struct vlc_renderer_discovery_owner
 
 struct vlc_renderer_discovery_t
 {
-    struct vlc_common_members obj;
+    struct vlc_object_t obj;
     module_t *          p_module;
 
     struct vlc_renderer_discovery_owner owner;
index 17114f7..e7b0e7b 100644 (file)
@@ -57,7 +57,7 @@ struct services_discovery_owner_t
  */
 struct services_discovery_t
 {
-    struct vlc_common_members obj;
+    struct vlc_object_t obj;
     module_t *          p_module;             /**< Loaded module */
 
     char *psz_name;                           /**< Main name of the SD */
index c8647c1..484e91f 100644 (file)
@@ -46,7 +46,7 @@ extern "C" {
  * invalid unsynchronized access) */
 struct sout_instance_t
 {
-    struct vlc_common_members obj;
+    struct vlc_object_t obj;
 
     char *psz_sout;
 
@@ -67,7 +67,7 @@ struct sout_instance_t
 /** Stream output access_output */
 struct sout_access_out_t
 {
-    struct vlc_common_members obj;
+    struct vlc_object_t obj;
 
     module_t                *p_module;
     char                    *psz_access;
@@ -115,7 +115,7 @@ static inline bool sout_AccessOutCanControlPace( sout_access_out_t *p_ao )
 /** Muxer structure */
 struct  sout_mux_t
 {
-    struct vlc_common_members obj;
+    struct vlc_object_t obj;
     module_t            *p_module;
 
     sout_instance_t     *p_sout;
@@ -193,7 +193,7 @@ enum sout_stream_query_e {
 
 struct sout_stream_t
 {
-    struct vlc_common_members obj;
+    struct vlc_object_t obj;
 
     module_t          *p_module;
     sout_instance_t   *p_sout;
index 3f5ef1c..ee6c68f 100644 (file)
@@ -45,7 +45,7 @@ typedef struct spu_private_t spu_private_t;
  */
 struct spu_t
 {
-    struct vlc_common_members obj;
+    struct vlc_object_t obj;
 
     spu_private_t *p;
 };
index 43369ec..bc6c0d3 100644 (file)
@@ -44,7 +44,7 @@ extern "C" {
 
 struct stream_t
 {
-    struct vlc_common_members obj;
+    struct vlc_object_t obj;
 
     char        *psz_name;
     char        *psz_url; /**< Full URL or MRL (can be NULL) */
index 0f628eb..1090c70 100644 (file)
@@ -48,7 +48,7 @@ extern "C" {
  **/
 
 typedef struct stream_extractor_t {
-    struct vlc_common_members obj;
+    struct vlc_object_t obj;
 
     /**
      * \name Callbacks for entity extraction
@@ -71,7 +71,7 @@ typedef struct stream_extractor_t {
 } stream_extractor_t;
 
 typedef struct stream_directory_t {
-    struct vlc_common_members obj;
+    struct vlc_object_t obj;
 
     /**
      * \name Callbacks for stream directories
index c5c294d..c91385e 100644 (file)
@@ -138,7 +138,7 @@ struct vlc_tls_operations
  */
 typedef struct vlc_tls_client
 {
-    struct vlc_common_members obj;
+    struct vlc_object_t obj;
     const struct vlc_tls_client_operations *ops;
     void *sys;
 } vlc_tls_client_t;
@@ -216,7 +216,7 @@ VLC_API vlc_tls_t *vlc_tls_ClientSessionCreate(vlc_tls_client_t *creds,
  */
 typedef struct vlc_tls_server
 {
-    struct vlc_common_members obj;
+    struct vlc_object_t obj;
     const struct vlc_tls_server_operations *ops;
     void *sys;
 
index 092c761..c57538d 100644 (file)
@@ -55,7 +55,7 @@ typedef struct
  */
 struct video_splitter_t
 {
-    struct vlc_common_members obj;
+    struct vlc_object_t obj;
 
     /* Module properties */
     module_t        *p_module;
index 32db1c7..de0bf41 100644 (file)
@@ -34,7 +34,7 @@
 
 struct vod_t
 {
-    struct vlc_common_members obj;
+    struct vlc_object_t obj;
 
     /* Module properties */
     module_t  *p_module;
index 1d4e9ff..88f825d 100644 (file)
@@ -57,7 +57,7 @@ typedef struct vout_thread_sys_t vout_thread_sys_t;
  * structure.
  */
 struct vout_thread_t {
-    struct vlc_common_members obj;
+    struct vlc_object_t obj;
 
     /* Private vout_thread data */
     vout_thread_sys_t *p;
index f42db98..5b07e11 100644 (file)
@@ -217,7 +217,7 @@ typedef int (*vout_display_open_cb)(vout_display_t *vd,
 typedef int (*vout_display_close_cb)(vout_display_t *vd);
 
 struct vout_display_t {
-    struct vlc_common_members obj;
+    struct vlc_object_t obj;
 
     /* Module */
     module_t *module;
index aea7a1f..73154d2 100644 (file)
@@ -333,7 +333,7 @@ struct vout_window_operations {
  * Finally, it must support some control requests such as for fullscreen mode.
  */
 typedef struct vout_window_t {
-    struct vlc_common_members obj;
+    struct vlc_object_t obj;
 
      /**
       * Window handle type
index 61abc74..9e0b48e 100644 (file)
@@ -35,7 +35,7 @@ extern "C" {
 
 struct xml_t
 {
-    struct vlc_common_members obj;
+    struct vlc_object_t obj;
 
     /* Module properties */
     module_t  *p_module;
@@ -64,7 +64,7 @@ static inline void xml_CatalogAdd( xml_t *xml, const char *type,
 
 struct xml_reader_t
 {
-    struct vlc_common_members obj;
+    struct vlc_object_t obj;
 
     void     *p_sys;
     stream_t *p_stream;
index e6ec99f..bc1faf4 100644 (file)
@@ -37,7 +37,7 @@
 
 struct libvlc_media_player_t
 {
-    struct vlc_common_members obj;
+    struct vlc_object_t obj;
 
     int                i_refcount;
     vlc_mutex_t        object_lock;
index 9735d18..43326b5 100644 (file)
@@ -275,7 +275,7 @@ struct vlc_http_mgr *vlc_http_mgr_create(vlc_object_t *obj,
     if (unlikely(mgr == NULL))
         return NULL;
 
-    mgr->logger = obj->obj.logger;
+    mgr->logger = obj->logger;
     mgr->obj = obj;
     mgr->creds = NULL;
     mgr->jar = jar;
index 2e131ab..c027367 100644 (file)
@@ -33,7 +33,7 @@ typedef struct aout_stream aout_stream_t;
  */
 struct aout_stream
 {
-    struct vlc_common_members obj;
+    struct vlc_object_t obj;
     void *sys;
 
     HRESULT (*time_get)(aout_stream_t *, vlc_tick_t *);
index 2f8e2d8..cbac0d3 100644 (file)
@@ -70,7 +70,7 @@ struct thread_context_t;
  *****************************************************************************/
 struct thread_context_t
 {
-    struct vlc_common_members obj;
+    struct vlc_object_t obj;
 
     AVCodecContext  *p_context;
     int             (* pf_func)(AVCodecContext *c, void *arg);
index 9a5baaf..97df858 100644 (file)
@@ -29,7 +29,7 @@ typedef struct vlc_va_t vlc_va_t;
 typedef struct vlc_va_sys_t vlc_va_sys_t;
 
 struct vlc_va_t {
-    struct vlc_common_members obj;
+    struct vlc_object_t obj;
 
     vlc_va_sys_t *sys;
     int  (*get)(vlc_va_t *, picture_t *pic, uint8_t **surface);
index 01e7ff0..859c23b 100644 (file)
@@ -247,7 +247,7 @@ static int OpenForce( vlc_object_t *p_this )
 
 static int Open( vlc_object_t *p_this )
 {
-    return OpenCommon( p_this, p_this->obj.force );
+    return OpenCommon( p_this, p_this->force );
 }
 
 /*****************************************************************************
index d4d663d..d1f1e39 100644 (file)
@@ -293,7 +293,7 @@ dbus_vanished_cb(GDBusConnection *connection, const gchar *name,
 static int
 Open(vlc_object_t *p_this)
 {
-    if (!p_this->obj.force)
+    if (!p_this->force)
     {
         /* First, check if secrets service is running using g_bus_watch_name().
          * Indeed, secret_service_get_sync will spawn a service if it's not
index 9fd67c8..be7cb8d 100644 (file)
@@ -160,13 +160,13 @@ int DoAcoustIdWebRequest( vlc_object_t *p_obj, acoustid_fingerprint_t *p_data )
          return VLC_EGENERIC;
 
     msg_Dbg( p_obj, "Querying AcoustID from %s", psz_url );
-    bool saved_no_interact = p_obj->obj.no_interact;
-    p_obj->obj.no_interact = true;
+    bool saved_no_interact = p_obj->no_interact;
+    p_obj->no_interact = true;
 
     stream_t *p_stream = vlc_stream_NewURL( p_obj, psz_url );
 
     free( psz_url );
-    p_obj->obj.no_interact = saved_no_interact;
+    p_obj->no_interact = saved_no_interact;
     if ( p_stream == NULL )
         return VLC_EGENERIC;
 
index 4509820..10514fd 100644 (file)
@@ -311,7 +311,7 @@ HRESULT D3D11_CreateDevice(vlc_object_t *obj, d3d11_handle_t *hd3d,
     HRESULT hr = E_NOTIMPL;
     UINT creationFlags = 0;
 
-    if (hw_decoding || !obj->obj.force)
+    if (hw_decoding || !obj->force)
         creationFlags |= D3D11_CREATE_DEVICE_VIDEO_SUPPORT;
 
 #if !defined(NDEBUG)
@@ -350,7 +350,7 @@ HRESULT D3D11_CreateDevice(vlc_object_t *obj, d3d11_handle_t *hd3d,
                     driverAttempts[driver], out->feature_level);
             D3D11_GetDriverVersion( obj, out );
             /* we can work with legacy levels but only if forced */
-            if ( obj->obj.force || out->feature_level >= D3D_FEATURE_LEVEL_11_0 )
+            if ( obj->force || out->feature_level >= D3D_FEATURE_LEVEL_11_0 )
                 break;
             msg_Dbg(obj, "Incompatible feature level %x", out->feature_level);
             ID3D11DeviceContext_Release(out->d3dcontext);
index ce8846d..a84e6c6 100644 (file)
@@ -252,7 +252,7 @@ struct pl_shader_res;
 typedef struct opengl_tex_converter_t opengl_tex_converter_t;
 struct opengl_tex_converter_t
 {
-    struct vlc_common_members obj;
+    struct vlc_object_t obj;
 
     module_t *p_module;
 
index f4830c8..30f0962 100644 (file)
@@ -35,7 +35,7 @@ struct vout_window_cfg_t;
 typedef struct vlc_vk_t
 {
     // fields internal to instance.c, should not be touched
-    struct vlc_common_members obj;
+    struct vlc_object_t obj;
     module_t *module;
     vlc_atomic_rc_t ref_count;
     void *platform_sys;
index a4e54f8..1cd06ca 100644 (file)
@@ -143,7 +143,7 @@ struct vlc_player_input
 
 struct vlc_player_t
 {
-    struct vlc_common_members obj;
+    struct vlc_object_t obj;
     vlc_mutex_t lock;
     vlc_mutex_t aout_listeners_lock;
     vlc_mutex_t vout_listeners_lock;
index e5bcb1e..e765c22 100644 (file)
@@ -47,7 +47,7 @@ typedef struct
 
 typedef struct
 {
-    struct vlc_common_members obj;
+    struct vlc_object_t obj;
     vlm_media_t cfg;
 
     struct
@@ -83,7 +83,7 @@ typedef struct
 
 struct vlm_t
 {
-    struct vlc_common_members obj;
+    struct vlc_object_t obj;
 
     vlc_mutex_t  lock;
     vlc_thread_t thread;
index 8cc7762..f18c6af 100644 (file)
@@ -122,7 +122,7 @@ struct dialog_i11e_context
 static inline vlc_dialog_provider *
 get_dialog_provider(vlc_object_t *p_obj, bool b_check_interact)
 {
-    if (b_check_interact && p_obj->obj.no_interact)
+    if (b_check_interact && p_obj->no_interact)
         return NULL;
 
     vlc_dialog_provider *p_provider =
index d02be7a..f6ac776 100644 (file)
@@ -51,7 +51,7 @@ typedef struct
 
 struct vlc_media_source_provider_t
 {
-    struct vlc_common_members obj;
+    struct vlc_object_t obj;
     vlc_mutex_t lock;
     struct vlc_list media_sources;
 };
index c100a56..0872511 100644 (file)
@@ -377,7 +377,7 @@ static struct vlc_logger *vlc_LogSwitchCreate(void)
  * Module-based message log.
  */
 struct vlc_logger_module {
-    struct vlc_common_members obj;
+    struct vlc_object_t obj;
     struct vlc_logger frontend;
     const struct vlc_logger_operations *ops;
     void *opaque;
index 534fb41..f87edd9 100644 (file)
@@ -72,18 +72,18 @@ int vlc_object_init(vlc_object_t *restrict obj, vlc_object_t *parent,
     vlc_cond_init (&priv->var_wait);
     priv->resources = NULL;
 
-    obj->obj.priv = priv;
-    obj->obj.force = false;
+    obj->priv = priv;
+    obj->force = false;
 
     if (likely(parent != NULL))
     {
-        obj->obj.logger = parent->obj.logger;
-        obj->obj.no_interact = parent->obj.no_interact;
+        obj->logger = parent->logger;
+        obj->no_interact = parent->no_interact;
     }
     else
     {
-        obj->obj.logger = NULL;
-        obj->obj.no_interact = false;
+        obj->logger = NULL;
+        obj->no_interact = false;
     }
 
     return 0;
@@ -151,7 +151,7 @@ void vlc_object_vaLog(vlc_object_t *obj, int prio, const char *module,
     if (typename == NULL)
         typename = "generic";
 
-    vlc_vaLog(&obj->obj.logger, prio, typename, module, file, line, func,
+    vlc_vaLog(&obj->logger, prio, typename, module, file, line, func,
               format, ap);
 }
 
index c5ca7d1..227870f 100644 (file)
@@ -132,7 +132,7 @@ typedef struct public_key_t public_key_t;
  */
 typedef struct
 {
-    struct vlc_common_members obj;
+    struct vlc_object_t obj;
 
     vlc_thread_t thread;
     atomic_bool aborted;
index 71e5a33..5ef84f1 100644 (file)
@@ -46,7 +46,7 @@ struct vlc_object_internals
     struct vlc_res *resources;
 };
 
-# define vlc_internals(o) ((o)->obj.priv)
+# define vlc_internals(o) ((o)->priv)
 # define vlc_externals(priv) (abort(), (void *)(priv))
 
 extern void var_DestroyAll( vlc_object_t * );
index caef245..9c5c422 100644 (file)
@@ -254,7 +254,7 @@ static int generic_start(void *func, bool forced, va_list ap)
     int (*activate)(vlc_object_t *) = func;
     int ret;
 
-    obj->obj.force = forced;
+    obj->force = forced;
     ret = activate(obj);
     if (ret != VLC_SUCCESS)
         vlc_objres_clear(obj);
@@ -273,15 +273,15 @@ static void generic_stop(void *func, va_list ap)
 module_t *module_need(vlc_object_t *obj, const char *cap, const char *name,
                       bool strict)
 {
-    const bool b_force_backup = obj->obj.force; /* FIXME: remove this */
-    module_t *module = vlc_module_load(obj->obj.logger, cap, name, strict,
+    const bool b_force_backup = obj->force; /* FIXME: remove this */
+    module_t *module = vlc_module_load(obj->logger, cap, name, strict,
                                        generic_start, obj);
     if (module != NULL) {
         var_Create(obj, "module-name", VLC_VAR_STRING);
         var_SetString(obj, "module-name", module_get_object(module));
     }
 
-    obj->obj.force = b_force_backup;
+    obj->force = b_force_backup;
     return module;
 }
 
index b249c99..2db57bc 100644 (file)
@@ -74,7 +74,7 @@ static void httpd_AppendData(httpd_stream_t *stream, uint8_t *p_data, int i_data
 /* each host run in his own thread */
 struct httpd_host_t
 {
-    struct vlc_common_members obj;
+    struct vlc_object_t obj;
     struct vlc_list node;
 
     /* ref count */
index bd4045a..05c3496 100644 (file)
@@ -67,18 +67,18 @@ spuregion_CreateFromPicture( vlc_object_t *p_this, video_format_t *p_fmt,
                              const char *psz_uri )
 {
     picture_t *p_pic = NULL;
-    struct vlc_logger *logger = p_this->obj.logger;
-    bool no_interact = p_this->obj.no_interact;
-    p_this->obj.logger = NULL;
-    p_this->obj.no_interact = true;
+    struct vlc_logger *logger = p_this->logger;
+    bool no_interact = p_this->no_interact;
+    p_this->logger = NULL;
+    p_this->no_interact = true;
     image_handler_t *p_image = image_HandlerCreate( p_this );
     if( p_image )
     {
         p_pic = image_ReadUrl( p_image, psz_uri, p_fmt );
         image_HandlerDelete( p_image );
     }
-    p_this->obj.no_interact = no_interact;
-    p_this->obj.logger = logger;
+    p_this->no_interact = no_interact;
+    p_this->logger = logger;
 
     if(!p_pic)
         return NULL;