]> git.sesse.net Git - vlc/commitdiff
- Redo [22749]. Fix Mozilla plugin, fix OSX framework, fix the bindings.
authorRémi Denis-Courmont <rem@videolan.org>
Mon, 25 Feb 2008 19:58:26 +0000 (19:58 +0000)
committerRémi Denis-Courmont <rem@videolan.org>
Mon, 25 Feb 2008 19:58:26 +0000 (19:58 +0000)
 - Fix ActiveX.

src/control/core.c

index c967c39c9ea1582cfc941f15972fd60b1ee0f986..08f550b61229261a10840a3e60f8451f6ed90845 100644 (file)
@@ -110,12 +110,17 @@ libvlc_instance_t * libvlc_new( int argc, const char *const *argv,
     p_new = (libvlc_instance_t *)malloc( sizeof( libvlc_instance_t ) );
     if( !p_new ) RAISENULL( "Out of memory" );
 
+    const char *my_argv[argc + 2];
+
+    my_argv[0] = "libvlc"; /* dummy arg0, skipped by getopt() et al */
+    for( int i = 0; i < argc; i++ )
+         my_argv[i + 1] = argv[i];
+    my_argv[argc + 1] = NULL; /* C calling conventions require a NULL */
+
     /** \todo Look for interface settings. If we don't have any, add -I dummy */
     /* Because we probably don't want a GUI by default */
 
-    /* WARNING: caller must pass a program path in argv[0], which can be a dummy path
-     *          this is used by libvlc to locate, this is leveraged by plugins */
-    if( libvlc_InternalInit( p_libvlc_int, argc, argv ) )
+    if( libvlc_InternalInit( p_libvlc_int, argc + 1, my_argv ) )
         RAISENULL( "VLC initialization failed" );
 
     p_new->p_libvlc_int = p_libvlc_int;