]> git.sesse.net Git - vlc/commitdiff
Ignore exceptions correctly - don't let libvlc assert
authorRémi Denis-Courmont <rdenis@simphalempin.com>
Wed, 4 Jun 2008 16:59:28 +0000 (19:59 +0300)
committerRémi Denis-Courmont <rdenis@simphalempin.com>
Wed, 4 Jun 2008 16:59:28 +0000 (19:59 +0300)
src/vlc.c
src/winvlc.c

index 3f17c3ad1e9eac2ead3677851f2cb0be6d5b9fc4..0a77e340c027b10d2283146950612b920df9a4a3 100644 (file)
--- a/src/vlc.c
+++ b/src/vlc.c
@@ -115,8 +115,9 @@ int main( int i_argc, const char *ppsz_argv[] )
         if ((ppsz_argv[i] = FromLocale (ppsz_argv[i])) == NULL)
             return 1; // BOOM!
 
-    libvlc_exception_t ex;
+    libvlc_exception_t ex, dummy;
     libvlc_exception_init (&ex);
+    libvlc_exception_init (&dummy);
 
     /* Initialize libvlc */
     int i_argc_real = i_argc ? i_argc - 1 : 0;
@@ -125,9 +126,9 @@ int main( int i_argc, const char *ppsz_argv[] )
 
     if (vlc != NULL)
     {
-        libvlc_add_intf (vlc, "signals", NULL);
+        libvlc_add_intf (vlc, "signals", &dummy);
         libvlc_add_intf (vlc, NULL, &ex);
-        libvlc_playlist_play (vlc, -1, 0, NULL, NULL);
+        libvlc_playlist_play (vlc, -1, 0, NULL, &dummy);
         libvlc_wait (vlc);
         libvlc_release (vlc);
     }
@@ -136,6 +137,7 @@ int main( int i_argc, const char *ppsz_argv[] )
         fprintf( stderr, "%s\n", libvlc_exception_get_message( &ex));
 
     libvlc_exception_clear (&ex);
+    libvlc_exception_clear (&dummy);
 
     for (int i = 0; i < i_argc; i++)
         LocaleFree (ppsz_argv[i]);
index 492591786e1f7d426e24a2fc1dfa4f55e6501988..80f225921ce7b2d9de232a2b7717892a3c3d75ec 100644 (file)
@@ -103,15 +103,16 @@ int WINAPI wWinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance,
 
     argc = parse_cmdline (psz_cmdline, &argv);
 
-    libvlc_exception_t ex;
+    libvlc_exception_t ex, dummy;
     libvlc_exception_init (&ex);
+    libvlc_exception_init (&dummy);
 
     /* Initialize libvlc */
     libvlc_instance_t *vlc = libvlc_new (argc, (const char **)argv, &ex);
     if (vlc != NULL)
     {
         libvlc_add_intf (vlc, NULL, &ex);
-        libvlc_playlist_play (vlc, -1, 0, NULL, NULL);
+        libvlc_playlist_play (vlc, -1, 0, NULL, &dummy);
         libvlc_wait (vlc);
         libvlc_release (vlc);
     }
@@ -119,6 +120,7 @@ int WINAPI wWinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance,
 
     ret = libvlc_exception_raised (&ex);
     libvlc_exception_clear (&ex);
+    libvlc_exception_clear (&dummy);
     return ret;
 }