]> git.sesse.net Git - vlc/blobdiff - src/misc/beos_specific.cpp
Added picture_pool_GetSize helper.
[vlc] / src / misc / beos_specific.cpp
index 321db791f4ce923b955b882094f03a70f21fef23..51c70cf8a8182b9caeb871e1b55dab9c037c16f0 100644 (file)
@@ -79,7 +79,7 @@ extern "C"
 /*****************************************************************************
  * Local prototypes.
  *****************************************************************************/
-static void AppThread( vlc_object_t *p_appthread );
+static void* AppThread( vlc_object_t *p_appthread );
 
 /*****************************************************************************
  * system_Init: create a BApplication object and fill in program path.
@@ -112,7 +112,7 @@ void system_End( libvlc_int_t *p_this )
     vlc_thread_join( p_appthread );
     vlc_object_release( p_appthread );
 
-    free( vlc_global()->psz_vlcpath );
+    free( psz_vlcpath );
 }
 
 /* following functions are local */
@@ -120,8 +120,9 @@ void system_End( libvlc_int_t *p_this )
 /*****************************************************************************
  * AppThread: the BApplication thread.
  *****************************************************************************/
-static void AppThread( vlc_object_t * p_this )
+static void* AppThread( vlc_object_t * p_this )
 {
+    int canc = vlc_savecancel ();
     VlcApplication * BeApp =
         new VlcApplication("application/x-vnd.videolan-vlc");
     vlc_object_attach( p_this, p_this->p_libvlc );
@@ -129,6 +130,8 @@ static void AppThread( vlc_object_t * p_this )
     BeApp->Run();
     vlc_object_detach( p_this );
     delete BeApp;
+    vlc_restorecancel (canc);
+    return NULL;
 }
 
 } /* extern "C" */
@@ -179,7 +182,7 @@ void VlcApplication::ReadyToRun( )
     BEntry entry( &info.ref );
     entry.GetPath( &path );
     path.GetParent( &path );
-    vlc_global()->psz_vlcpath = strdup( path.Path() );
+    psz_vlcpath = strdup( path.Path() );
 
     /* Tell the main thread we are finished initializing the BApplication */
     vlc_thread_ready( p_this );
@@ -240,7 +243,7 @@ bool VlcApplication::QuitRequested()
 {
     if( !fReadyToQuit )
     {
-        vlc_object_kill( p_this->p_libvlc );
+        libvlc_Quit( p_this->p_libvlc );
         return false;
     }