]> git.sesse.net Git - vlc/blobdiff - src/misc/filter_chain.c
Win32: use ShellExecuteW instead of ShellExecuteA in the update code
[vlc] / src / misc / filter_chain.c
index 1bf9ec2cb25bc27cae7d00ae9b1e97844686ddcb..01e99138409e0199bb48c3dcf4329a5c69e9063a 100644 (file)
@@ -97,15 +97,16 @@ static int filter_chain_DeleteFilterInternal( filter_chain_t *, filter_t * );
 
 static int UpdateBufferFunctions( filter_chain_t * );
 
+#undef filter_chain_New
 /**
  * Filter chain initialisation
  */
-filter_chain_t *__filter_chain_New( vlc_object_t *p_this,
-                                    const char *psz_capability,
-                                    bool b_allow_fmt_out_change,
-                                    int  (*pf_buffer_allocation_init)( filter_t *, void * ),
-                                    void (*pf_buffer_allocation_clean)( filter_t * ),
-                                    void *p_buffer_allocation_data )
+filter_chain_t *filter_chain_New( vlc_object_t *p_this,
+                                  const char *psz_capability,
+                                  bool b_allow_fmt_out_change,
+                                  int  (*pf_buffer_allocation_init)( filter_t *, void * ),
+                                  void (*pf_buffer_allocation_clean)( filter_t * ),
+                                  void *p_buffer_allocation_data )
 {
     assert( p_this );
     assert( psz_capability );
@@ -267,13 +268,13 @@ int filter_chain_MouseFilter( filter_chain_t *p_chain, vlc_mouse_t *p_dst, const
         filter_t *p_filter = &f->filter;
         vlc_mouse_t *p_mouse = f->mouse;
 
-        if( p_filter->pf_mouse && p_mouse )
+        if( p_filter->pf_video_mouse && p_mouse )
         {
             vlc_mouse_t old = *p_mouse;
             vlc_mouse_t filtered;
 
             *p_mouse = current;
-            if( p_filter->pf_mouse( p_filter, &filtered, &old, &current ) )
+            if( p_filter->pf_video_mouse( p_filter, &filtered, &old, &current ) )
                 return VLC_EGENERIC;
             current = filtered;
         }
@@ -366,7 +367,6 @@ error:
         module_unneed( p_filter, p_filter->p_module );
     es_format_Clean( &p_filter->fmt_in );
     es_format_Clean( &p_filter->fmt_out );
-    vlc_object_detach( p_filter );
     vlc_object_release( p_filter );
     return NULL;
 }
@@ -438,7 +438,6 @@ static int filter_chain_DeleteFilterInternal( filter_chain_t *p_chain,
     else
         AllocatorClean( &p_chain->allocator, p_chained );
 
-    vlc_object_detach( p_filter );
     if( p_filter->p_module )
         module_unneed( p_filter, p_filter->p_module );
     free( p_chained->mouse );
@@ -504,9 +503,7 @@ static picture_t *VideoBufferNew( filter_t *p_filter )
 {
     const video_format_t *p_fmt = &p_filter->fmt_out.video;
 
-    picture_t *p_picture = picture_New( p_fmt->i_chroma,
-                                        p_fmt->i_width, p_fmt->i_height,
-                                        p_fmt->i_aspect );
+    picture_t *p_picture = picture_NewFromFormat( p_fmt );
     if( !p_picture )
         msg_Err( p_filter, "Failed to allocate picture" );
     return p_picture;
@@ -520,20 +517,20 @@ static int InternalVideoInit( filter_t *p_filter, void *p_data )
 {
     VLC_UNUSED(p_data);
 
-    p_filter->pf_vout_buffer_new = VideoBufferNew;
-    p_filter->pf_vout_buffer_del = VideoBufferDelete;
+    p_filter->pf_video_buffer_new = VideoBufferNew;
+    p_filter->pf_video_buffer_del = VideoBufferDelete;
 
     return VLC_SUCCESS;
 }
 static void InternalVideoClean( filter_t *p_filter )
 {
-    p_filter->pf_vout_buffer_new = NULL;
-    p_filter->pf_vout_buffer_del = NULL;
+    p_filter->pf_video_buffer_new = NULL;
+    p_filter->pf_video_buffer_del = NULL;
 }
 
 static bool IsInternalVideoAllocator( chained_filter_t *p_filter )
 {
-    return p_filter->filter.pf_vout_buffer_new == VideoBufferNew;
+    return p_filter->filter.pf_video_buffer_new == VideoBufferNew;
 }
 
 /* */