diff --git a/Gui/mplayer/play.c b/Gui/mplayer/play.c index d5c3c62766..6942c31c70 100644 --- a/Gui/mplayer/play.c +++ b/Gui/mplayer/play.c @@ -50,6 +50,7 @@ void mplStop() if ( !mplShMem->Playing ) return; mplShMem->Playing=0; mplShMem->TimeSec=0; + mplShMem->Position=0; if ( !appMPlayer.subWindow.isFullScreen ) { wsMoveWindow( &appMPlayer.subWindow,appMPlayer.sub.x,appMPlayer.sub.y ); @@ -96,15 +97,9 @@ void mplResize( unsigned int X,unsigned int Y,unsigned int width,unsigned int he void mplMPlayerInit( int argc,char* argv[], char *envp[] ) { -#if 0 - mplShMem=shmem_alloc( ShMemSize ); -#else - mplShMem=calloc( 1,ShMemSize ); -#endif - signal( SIGTYPE,mplMainSigHandler ); - - memset( mplShMem,0,ShMemSize ); + mplShMem=calloc( 1,sizeof( mplCommStruct ) ); mplShMem->Balance=50.0f; + signal( SIGTYPE,mplMainSigHandler ); } float mplGetPosition( void ) diff --git a/Gui/mplayer/widgets.c b/Gui/mplayer/widgets.c index 98bc3c115d..c6e7716af2 100644 --- a/Gui/mplayer/widgets.c +++ b/Gui/mplayer/widgets.c @@ -85,7 +85,7 @@ static void gtkThreadProc( int argc,char * argv[] ) void gtkInit( int argc,char* argv[], char *envp[] ) { - gtkShMem=shmem_alloc( ShMemSize ); + gtkShMem=shmem_alloc( sizeof( gtkCommStruct ) ); if ( ( gtkPID = fork() ) == 0 ) gtkThreadProc( argc,argv ); } diff --git a/Gui/mplayer/widgets.h b/Gui/mplayer/widgets.h index b2f9091bd9..7d3184e370 100644 --- a/Gui/mplayer/widgets.h +++ b/Gui/mplayer/widgets.h @@ -47,8 +47,6 @@ typedef struct gtkOptionsStruct op; } gtkCommStruct; -#define ShMemSize sizeof( gtkCommStruct ) - extern gtkCommStruct * gtkShMem; extern GtkWidget * SkinBrowser;