Commit 1dedf688 authored by Sam Hocevar's avatar Sam Hocevar

* ./plugins/dummy/intf_dummy.c, ./plugins/chroma/i420_yuy2.c,

    src/interface/intf_eject.c, src/misc/threads.c: win32 compilation fix.
  * ./plugins/directx/aout_directx.c, plugins/directx/vout_directx.c,
    ./plugins/directx/vout_events.c: the DirectX notification and event threads
    now use the vlc_thread_create / vlc_thread_ready scheme. Untested.
  * ./configure.in: added a check for inttypes.h and sys/int_types.h.
  * ./configure.in: fixed the HTTP plugin compilation under BeOS.
  * ./plugins/network/ipv6.c: reactivated IPv6 module.
parent 2dad070c
...@@ -4,6 +4,17 @@ ...@@ -4,6 +4,17 @@
HEAD HEAD
* ./plugins/dummy/intf_dummy.c, ./plugins/chroma/i420_yuy2.c,
src/interface/intf_eject.c, src/misc/threads.c: win32 compilation fix.
* ./plugins/directx/aout_directx.c, plugins/directx/vout_directx.c,
./plugins/directx/vout_events.c: the DirectX notification and event threads
now use the vlc_thread_create / vlc_thread_ready scheme. Untested.
* ./configure.in: added a check for inttypes.h and sys/int_types.h.
* ./configure.in: fixed the HTTP plugin compilation under BeOS.
* ./plugins/network/ipv6.c: reactivated IPv6 module.
* ./src/misc/beos_specific.cpp: BeOS fixes, removed a static variable.
* ./include/main.h: replaced p_sys with explicit variables because it's
really much simpler this way.
* ./src/misc/beos_specific.cpp: the BeOS BApplication thread now uses the * ./src/misc/beos_specific.cpp: the BeOS BApplication thread now uses the
vlc_thread_create / vlc_thread_ready scheme to signal readiness. vlc_thread_create / vlc_thread_ready scheme to signal readiness.
* ./src/misc/objects.c: prevent the creation of a too small vlc_object_t. * ./src/misc/objects.c: prevent the creation of a too small vlc_object_t.
......
This diff is collapsed.
...@@ -133,6 +133,10 @@ AC_CHECK_FUNC(connect,,[ ...@@ -133,6 +133,10 @@ AC_CHECK_FUNC(connect,,[
ipv4_LDFLAGS="${ipv4_LDFLAGS} -lsocket" ipv4_LDFLAGS="${ipv4_LDFLAGS} -lsocket"
vlc_LDFLAGS="${vlc_LDFLAGS} -lsocket" vlc_LDFLAGS="${vlc_LDFLAGS} -lsocket"
)]) )])
AC_CHECK_FUNC(send,,[
AC_CHECK_LIB(socket,send,
http_LDFLAGS="${http_LDFLAGS} -lsocket"
)])
AC_CHECK_FUNC(gethostbyname,,[ AC_CHECK_FUNC(gethostbyname,,[
AC_CHECK_LIB(nsl,gethostbyname,ipv4_LDFLAGS="${ipv4_LDFLAGS} -lnsl") AC_CHECK_LIB(nsl,gethostbyname,ipv4_LDFLAGS="${ipv4_LDFLAGS} -lnsl")
]) ])
...@@ -205,7 +209,7 @@ AC_EGREP_HEADER(strncasecmp,strings.h,[ ...@@ -205,7 +209,7 @@ AC_EGREP_HEADER(strncasecmp,strings.h,[
Define if <strings.h> defines strncasecmp.)]) Define if <strings.h> defines strncasecmp.)])
dnl Check for headers dnl Check for headers
AC_CHECK_HEADERS(stdint.h getopt.h strings.h) AC_CHECK_HEADERS(stdint.h getopt.h strings.h inttypes.h sys/int_types.h)
AC_CHECK_HEADERS(sys/sockio.h fcntl.h sys/types.h sys/time.h sys/times.h) AC_CHECK_HEADERS(sys/sockio.h fcntl.h sys/types.h sys/time.h sys/times.h)
AC_CHECK_HEADERS(dlfcn.h image.h) AC_CHECK_HEADERS(dlfcn.h image.h)
AC_CHECK_HEADERS(arpa/inet.h net/if.h netinet/in.h sys/socket.h) AC_CHECK_HEADERS(arpa/inet.h net/if.h netinet/in.h sys/socket.h)
......
...@@ -217,6 +217,9 @@ ...@@ -217,6 +217,9 @@
/* Define if you have the <image.h> header file. */ /* Define if you have the <image.h> header file. */
#undef HAVE_IMAGE_H #undef HAVE_IMAGE_H
/* Define if you have the <inttypes.h> header file. */
#undef HAVE_INTTYPES_H
/* Define if you have the <kernel/OS.h> header file. */ /* Define if you have the <kernel/OS.h> header file. */
#undef HAVE_KERNEL_OS_H #undef HAVE_KERNEL_OS_H
...@@ -280,6 +283,9 @@ ...@@ -280,6 +283,9 @@
/* Define if you have the <strings.h> header file. */ /* Define if you have the <strings.h> header file. */
#undef HAVE_STRINGS_H #undef HAVE_STRINGS_H
/* Define if you have the <sys/int_types.h> header file. */
#undef HAVE_SYS_INT_TYPES_H
/* Define if you have the <sys/param.h> header file. */ /* Define if you have the <sys/param.h> header file. */
#undef HAVE_SYS_PARAM_H #undef HAVE_SYS_PARAM_H
......
...@@ -4,7 +4,7 @@ ...@@ -4,7 +4,7 @@
* (http://liba52.sf.net/). * (http://liba52.sf.net/).
***************************************************************************** *****************************************************************************
* Copyright (C) 2001 VideoLAN * Copyright (C) 2001 VideoLAN
* $Id: a52.c,v 1.16 2002/06/01 12:31:58 sam Exp $ * $Id: a52.c,v 1.17 2002/06/01 16:45:34 sam Exp $
* *
* Authors: Gildas Bazin <gbazin@netcourrier.com> * Authors: Gildas Bazin <gbazin@netcourrier.com>
* *
...@@ -26,18 +26,20 @@ ...@@ -26,18 +26,20 @@
/***************************************************************************** /*****************************************************************************
* Preamble * Preamble
*****************************************************************************/ *****************************************************************************/
#include <stdlib.h> /* malloc(), free() */
#include <string.h> /* strdup() */
#include <inttypes.h> /* int16_t .. */
#include <vlc/vlc.h> #include <vlc/vlc.h>
#include <vlc/aout.h> #include <vlc/aout.h>
#include <vlc/decoder.h> #include <vlc/decoder.h>
#include <stdlib.h> /* malloc(), free() */
#include <string.h> /* strdup() */
#ifdef HAVE_INTTYPES_H
# include <inttypes.h> /* int16_t .. */
#endif
#ifdef USE_A52DEC_TREE /* liba52 header file */ #ifdef USE_A52DEC_TREE /* liba52 header file */
#include "include/a52.h" # include "include/a52.h"
#else #else
#include "a52dec/a52.h" # include "a52dec/a52.h"
#endif #endif
#include "a52.h" #include "a52.h"
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
* i420_yuy2.c : YUV to YUV conversion module for vlc * i420_yuy2.c : YUV to YUV conversion module for vlc
***************************************************************************** *****************************************************************************
* Copyright (C) 2000, 2001 VideoLAN * Copyright (C) 2000, 2001 VideoLAN
* $Id: i420_yuy2.c,v 1.8 2002/06/01 12:31:58 sam Exp $ * $Id: i420_yuy2.c,v 1.9 2002/06/01 16:45:34 sam Exp $
* *
* Authors: Samuel Hocevar <sam@zoy.org> * Authors: Samuel Hocevar <sam@zoy.org>
* *
...@@ -58,6 +58,11 @@ static void I420_cyuv ( vout_thread_t *, picture_t *, picture_t * ); ...@@ -58,6 +58,11 @@ static void I420_cyuv ( vout_thread_t *, picture_t *, picture_t * );
static void I420_Y211 ( vout_thread_t *, picture_t *, picture_t * ); static void I420_Y211 ( vout_thread_t *, picture_t *, picture_t * );
#endif #endif
#ifdef MODULE_NAME_IS_chroma_i420_yuy2_mmx
static unsigned long long i_00ffw;
static unsigned long long i_80w;
#endif
/***************************************************************************** /*****************************************************************************
* Build configuration tree. * Build configuration tree.
*****************************************************************************/ *****************************************************************************/
...@@ -72,6 +77,9 @@ MODULE_INIT_START ...@@ -72,6 +77,9 @@ MODULE_INIT_START
SET_DESCRIPTION( _("MMX conversions from " SRC_FOURCC " to " DEST_FOURCC) ) SET_DESCRIPTION( _("MMX conversions from " SRC_FOURCC " to " DEST_FOURCC) )
ADD_CAPABILITY( CHROMA, 100 ) ADD_CAPABILITY( CHROMA, 100 )
ADD_REQUIREMENT( MMX ) ADD_REQUIREMENT( MMX )
/* Initialize MMX-specific constants */
i_00ffw = 0x00ff00ff00ff00ff;
i_80w = 0x0000000080808080;
#endif #endif
MODULE_INIT_STOP MODULE_INIT_STOP
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
* i420_yuy2.h : YUV to YUV conversion module for vlc * i420_yuy2.h : YUV to YUV conversion module for vlc
***************************************************************************** *****************************************************************************
* Copyright (C) 2000, 2001 VideoLAN * Copyright (C) 2000, 2001 VideoLAN
* $Id: i420_yuy2.h,v 1.9 2002/06/01 13:52:24 sam Exp $ * $Id: i420_yuy2.h,v 1.10 2002/06/01 16:45:34 sam Exp $
* *
* Authors: Samuel Hocevar <sam@zoy.org> * Authors: Samuel Hocevar <sam@zoy.org>
* *
...@@ -23,11 +23,6 @@ ...@@ -23,11 +23,6 @@
#ifdef MODULE_NAME_IS_chroma_i420_yuy2_mmx #ifdef MODULE_NAME_IS_chroma_i420_yuy2_mmx
#define UNUSED_LONGLONG(foo) \
unsigned long long foo __asm__ (#foo) __attribute__((unused))
UNUSED_LONGLONG(woo_00ffw) = 0x00ff00ff00ff00ff;
UNUSED_LONGLONG(woo_80w) = 0x0000000080808080;
#define MMX_CALL(MMX_INSTRUCTIONS) \ #define MMX_CALL(MMX_INSTRUCTIONS) \
do { \ do { \
__asm__ __volatile__( \ __asm__ __volatile__( \
...@@ -100,17 +95,17 @@ movq (%2), %%mm0 # Load 8 Y y7 y6 y5 y4 y3 y2 y1 y0 \n\ ...@@ -100,17 +95,17 @@ movq (%2), %%mm0 # Load 8 Y y7 y6 y5 y4 y3 y2 y1 y0 \n\
movq (%3), %%mm1 # Load 8 Y Y7 Y6 Y5 Y4 Y3 Y2 Y1 Y0 \n\ movq (%3), %%mm1 # Load 8 Y Y7 Y6 Y5 Y4 Y3 Y2 Y1 Y0 \n\
movd (%4), %%mm2 # Load 4 Cb 00 00 00 00 u3 u2 u1 u0 \n\ movd (%4), %%mm2 # Load 4 Cb 00 00 00 00 u3 u2 u1 u0 \n\
movd (%5), %%mm3 # Load 4 Cr 00 00 00 00 v3 v2 v1 v0 \n\ movd (%5), %%mm3 # Load 4 Cr 00 00 00 00 v3 v2 v1 v0 \n\
pand woo_00ffw, %%mm0 # get Y even 00 Y6 00 Y4 00 Y2 00 Y0 \n\ pand i_00ffw, %%mm0 # get Y even 00 Y6 00 Y4 00 Y2 00 Y0 \n\
packuswb %%mm0, %%mm0 # pack Y y6 y4 y2 y0 y6 y4 y2 y0 \n\ packuswb %%mm0, %%mm0 # pack Y y6 y4 y2 y0 y6 y4 y2 y0 \n\
pand woo_00ffw, %%mm2 # get U even 00 u6 00 u4 00 u2 00 u0 \n\ pand i_00ffw, %%mm2 # get U even 00 u6 00 u4 00 u2 00 u0 \n\
packuswb %%mm2, %%mm2 # pack U 00 00 u2 u0 00 00 u2 u0 \n\ packuswb %%mm2, %%mm2 # pack U 00 00 u2 u0 00 00 u2 u0 \n\
pand woo_00ffw, %%mm3 # get V even 00 v6 00 v4 00 v2 00 v0 \n\ pand i_00ffw, %%mm3 # get V even 00 v6 00 v4 00 v2 00 v0 \n\
packuswb %%mm3, %%mm3 # pack V 00 00 v2 v0 00 00 v2 v0 \n\ packuswb %%mm3, %%mm3 # pack V 00 00 v2 v0 00 00 v2 v0 \n\
punpcklbw %%mm3, %%mm2 # 00 00 00 00 v2 u2 v0 u0 \n\ punpcklbw %%mm3, %%mm2 # 00 00 00 00 v2 u2 v0 u0 \n\
psubsw woo_80w, %%mm2 # U,V -= 128 \n\ psubsw i_80w, %%mm2 # U,V -= 128 \n\
punpcklbw %%mm2, %%mm0 # v2 y6 u2 y4 v0 y2 u0 y0 \n\ punpcklbw %%mm2, %%mm0 # v2 y6 u2 y4 v0 y2 u0 y0 \n\
movq %%mm0, (%0) # Store YUYV \n\ movq %%mm0, (%0) # Store YUYV \n\
pand woo_00ffw, %%mm1 # get Y even 00 Y6 00 Y4 00 Y2 00 Y0 \n\ pand i_00ffw, %%mm1 # get Y even 00 Y6 00 Y4 00 Y2 00 Y0 \n\
packuswb %%mm1, %%mm1 # pack Y Y6 Y4 Y2 Y0 Y6 Y4 Y2 Y0 \n\ packuswb %%mm1, %%mm1 # pack Y Y6 Y4 Y2 Y0 Y6 Y4 Y2 Y0 \n\
punpcklbw %%mm2, %%mm1 # v2 Y6 u2 Y4 v0 Y2 u0 Y0 \n\ punpcklbw %%mm2, %%mm1 # v2 Y6 u2 Y4 v0 Y2 u0 Y0 \n\
movq %%mm1, (%1) # Store YUYV \n\ movq %%mm1, (%1) # Store YUYV \n\
......
This diff is collapsed.
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
* vout_directx.c: Windows DirectX video output display method * vout_directx.c: Windows DirectX video output display method
***************************************************************************** *****************************************************************************
* Copyright (C) 2001 VideoLAN * Copyright (C) 2001 VideoLAN
* $Id: vout_directx.c,v 1.37 2002/06/01 12:31:58 sam Exp $ * $Id: vout_directx.c,v 1.38 2002/06/01 16:45:34 sam Exp $
* *
* Authors: Gildas Bazin <gbazin@netcourrier.com> * Authors: Gildas Bazin <gbazin@netcourrier.com>
* *
...@@ -122,7 +122,6 @@ static int vout_Create( vout_thread_t *p_vout ) ...@@ -122,7 +122,6 @@ static int vout_Create( vout_thread_t *p_vout )
p_vout->p_sys->hbrush = NULL; p_vout->p_sys->hbrush = NULL;
p_vout->p_sys->hwnd = NULL; p_vout->p_sys->hwnd = NULL;
p_vout->p_sys->i_changes = 0; p_vout->p_sys->i_changes = 0;
p_vout->p_sys->b_event_thread_die = 0;
p_vout->p_sys->b_caps_overlay_clipping = 0; p_vout->p_sys->b_caps_overlay_clipping = 0;
SetRectEmpty( &p_vout->p_sys->rect_display ); SetRectEmpty( &p_vout->p_sys->rect_display );
p_vout->p_sys->b_using_overlay = config_GetInt( p_vout, "overlay" ); p_vout->p_sys->b_using_overlay = config_GetInt( p_vout, "overlay" );
...@@ -136,11 +135,6 @@ static int vout_Create( vout_thread_t *p_vout ) ...@@ -136,11 +135,6 @@ static int vout_Create( vout_thread_t *p_vout )
p_vout->p_sys->i_window_width = p_vout->i_window_width; p_vout->p_sys->i_window_width = p_vout->i_window_width;
p_vout->p_sys->i_window_height = p_vout->i_window_height; p_vout->p_sys->i_window_height = p_vout->i_window_height;
/* Set locks and condition variables */
vlc_mutex_init( p_vout, &p_vout->p_sys->event_thread_lock );
vlc_cond_init( &p_vout->p_sys->event_thread_wait );
p_vout->p_sys->i_event_thread_status = THREAD_CREATE;
/* Create the DirectXEventThread, this thread is created by us to isolate /* Create the DirectXEventThread, this thread is created by us to isolate
* the Win32 PeekMessage function calls. We want to do this because * the Win32 PeekMessage function calls. We want to do this because
* Windows can stay blocked inside this call for a long time, and when * Windows can stay blocked inside this call for a long time, and when
...@@ -149,32 +143,30 @@ static int vout_Create( vout_thread_t *p_vout ) ...@@ -149,32 +143,30 @@ static int vout_Create( vout_thread_t *p_vout )
* window (because PeekMessage has to be called from the same thread which * window (because PeekMessage has to be called from the same thread which
* created the window). */ * created the window). */
msg_Dbg( p_vout, "creating DirectXEventThread" ); msg_Dbg( p_vout, "creating DirectXEventThread" );
if( vlc_thread_create( p_vout, &p_vout->p_sys->event_thread_id, p_vout->p_sys->p_event = vlc_object_create( p_vout, sizeof(event_thread_t) );
"DirectX Events Thread", p_vout->p_sys->p_event->p_vout = p_vout;
(void *) DirectXEventThread, (void *) p_vout) ) if( vlc_thread_create( p_vout->p_sys->p_event,
"DirectX Events Thread", DirectXEventThread, 1 ) )
{ {
msg_Err( p_vout, "cannot create DirectXEventThread" ); msg_Err( p_vout, "cannot create DirectXEventThread" );
vlc_object_destroy( p_vout->p_sys->p_event );
free( p_vout->p_sys ); free( p_vout->p_sys );
return( 1 ); return( 1 );
} }
/* We need to wait for the actual creation of the thread and window */ if( p_vout->p_sys->p_event->b_error )
vlc_mutex_lock( &p_vout->p_sys->event_thread_lock );
if( p_vout->p_sys->i_event_thread_status == THREAD_CREATE )
{
vlc_cond_wait ( &p_vout->p_sys->event_thread_wait,
&p_vout->p_sys->event_thread_lock );
}
vlc_mutex_unlock( &p_vout->p_sys->event_thread_lock );
if( p_vout->p_sys->i_event_thread_status != THREAD_READY )
{ {
msg_Err( p_vout, "DirectXEventThread failed" ); msg_Err( p_vout, "DirectXEventThread failed" );
p_vout->p_sys->p_event->b_die = 1;
vlc_thread_join( p_vout->p_sys->p_event );
vlc_object_destroy( p_vout->p_sys->p_event );
free( p_vout->p_sys ); free( p_vout->p_sys );
return( 1 ); return( 1 );
} }
msg_Dbg( p_vout, "DirectXEventThread running" ); vlc_object_attach( p_vout->p_sys->p_event, p_vout );
msg_Dbg( p_vout, "DirectXEventThread running" );
/* Initialise DirectDraw */ /* Initialise DirectDraw */
if( DirectXInitDDraw( p_vout ) ) if( DirectXInitDDraw( p_vout ) )
...@@ -253,17 +245,20 @@ static void vout_Destroy( vout_thread_t *p_vout ) ...@@ -253,17 +245,20 @@ static void vout_Destroy( vout_thread_t *p_vout )
DirectXCloseDisplay( p_vout ); DirectXCloseDisplay( p_vout );
DirectXCloseDDraw( p_vout ); DirectXCloseDDraw( p_vout );
vlc_object_unlink_all( p_vout->p_sys->p_event );
/* Kill DirectXEventThread */ /* Kill DirectXEventThread */
vlc_mutex_lock( &p_vout->p_sys->event_thread_lock ); p_vout->p_sys->p_event->b_die = 1;
p_vout->p_sys->b_event_thread_die = 1;
/* we need to be sure DirectXEventThread won't stay stuck in GetMessage, /* we need to be sure DirectXEventThread won't stay stuck in GetMessage,
* so we send a fake message */ * so we send a fake message */
if( p_vout->p_sys->hwnd ) if( p_vout->p_sys->hwnd )
{
PostMessage( p_vout->p_sys->hwnd, WM_NULL, 0, 0); PostMessage( p_vout->p_sys->hwnd, WM_NULL, 0, 0);
}
vlc_mutex_unlock( &p_vout->p_sys->event_thread_lock ); vlc_thread_join( p_vout->p_sys->p_event );
vlc_thread_join( p_vout->p_sys->event_thread_id ); vlc_object_destroy( p_vout->p_sys->p_event );
if( p_vout->p_sys != NULL ) if( p_vout->p_sys != NULL )
{ {
...@@ -363,7 +358,7 @@ static int vout_Manage( vout_thread_t *p_vout ) ...@@ -363,7 +358,7 @@ static int vout_Manage( vout_thread_t *p_vout )
} }
/* Check if the event thread is still running */ /* Check if the event thread is still running */
if( p_vout->p_sys->b_event_thread_die ) if( p_vout->p_sys->p_event->b_die )
return 1; /* exit */ return 1; /* exit */
return( 0 ); return( 0 );
...@@ -739,7 +734,7 @@ static int DirectXCreateSurface( vout_thread_t *p_vout, ...@@ -739,7 +734,7 @@ static int DirectXCreateSurface( vout_thread_t *p_vout,
if( !b_overlay ) if( !b_overlay )
{ {
boolean_t b_rgb_surface = ( i_chroma == FOURCC_RGB2 ) || vlc_bool_t b_rgb_surface = ( i_chroma == FOURCC_RGB2 ) ||
( i_chroma == FOURCC_RV15 ) || ( i_chroma == FOURCC_RV16 ) || ( i_chroma == FOURCC_RV15 ) || ( i_chroma == FOURCC_RV16 ) ||
( i_chroma == FOURCC_RV24 ) || ( i_chroma == FOURCC_RV32 ); ( i_chroma == FOURCC_RV24 ) || ( i_chroma == FOURCC_RV32 );
...@@ -904,7 +899,7 @@ static int NewPictureVec( vout_thread_t *p_vout, picture_t *p_pic, ...@@ -904,7 +899,7 @@ static int NewPictureVec( vout_thread_t *p_vout, picture_t *p_pic,
int i_num_pics ) int i_num_pics )
{ {
int i; int i;
boolean_t b_result_ok; vlc_bool_t b_result_ok;
LPDIRECTDRAWSURFACE3 p_surface; LPDIRECTDRAWSURFACE3 p_surface;
msg_Dbg( p_vout, "NewPictureVec" ); msg_Dbg( p_vout, "NewPictureVec" );
...@@ -1081,11 +1076,10 @@ static int NewPictureVec( vout_thread_t *p_vout, picture_t *p_pic, ...@@ -1081,11 +1076,10 @@ static int NewPictureVec( vout_thread_t *p_vout, picture_t *p_pic,
I_OUTPUTPICTURES = 1; I_OUTPUTPICTURES = 1;
intf_WarnMsg( 3, "vout: DirectX plain surface created " msg_Dbg( p_vout, "DirectX plain surface created successfully" );
"successfully" );
} }
else else
intf_ErrMsg( "vout error: DirectX can't create plain surface." ); msg_Err( p_vout, "DirectX could not create plain surface" );
} }
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
* vout_directx.h: Windows DirectX video output header file * vout_directx.h: Windows DirectX video output header file
***************************************************************************** *****************************************************************************
* Copyright (C) 1998, 1999, 2000 VideoLAN * Copyright (C) 1998, 1999, 2000 VideoLAN
* $Id: vout_directx.h,v 1.7 2002/06/01 12:31:58 sam Exp $ * $Id: vout_directx.h,v 1.8 2002/06/01 16:45:34 sam Exp $
* *
* Authors: Gildas Bazin <gbazin@netcourrier.com> * Authors: Gildas Bazin <gbazin@netcourrier.com>
* *
...@@ -21,6 +21,17 @@ ...@@ -21,6 +21,17 @@
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111, USA. * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111, USA.
*****************************************************************************/ *****************************************************************************/
/*****************************************************************************
* event_thread_t: DirectX event thread
*****************************************************************************/
typedef struct event_thread_s
{
VLC_COMMON_MEMBERS
vout_thread_t * p_vout;
} event_thread_t;
/***************************************************************************** /*****************************************************************************
* vout_sys_t: video output DirectX method descriptor * vout_sys_t: video output DirectX method descriptor
***************************************************************************** *****************************************************************************
...@@ -29,7 +40,6 @@ ...@@ -29,7 +40,6 @@
*****************************************************************************/ *****************************************************************************/
struct vout_sys_s struct vout_sys_s
{ {
LPDIRECTDRAW2 p_ddobject; /* DirectDraw object */ LPDIRECTDRAW2 p_ddobject; /* DirectDraw object */
LPDIRECTDRAWSURFACE3 p_display; /* Display device */ LPDIRECTDRAWSURFACE3 p_display; /* Display device */
LPDIRECTDRAWSURFACE3 p_current_surface; /* surface currently displayed */ LPDIRECTDRAWSURFACE3 p_current_surface; /* surface currently displayed */
...@@ -70,9 +80,7 @@ struct vout_sys_s ...@@ -70,9 +80,7 @@ struct vout_sys_s
volatile vlc_bool_t b_cursor_hidden; volatile vlc_bool_t b_cursor_hidden;
volatile mtime_t i_lastmoved; volatile mtime_t i_lastmoved;
vlc_thread_t event_thread_id; /* event thread */ event_thread_t * p_event;
vlc_mutex_t event_thread_lock; /* lock for the event thread */
vlc_cond_t event_thread_wait;
volatile int i_event_thread_status; /* DirectXEventThread status */ volatile int i_event_thread_status; /* DirectXEventThread status */
volatile vlc_bool_t b_event_thread_die; /* flag to kill the event thread */ volatile vlc_bool_t b_event_thread_die; /* flag to kill the event thread */
...@@ -98,7 +106,7 @@ struct picture_sys_s ...@@ -98,7 +106,7 @@ struct picture_sys_s
/***************************************************************************** /*****************************************************************************
* Prototypes from vout_events.c * Prototypes from vout_events.c
*****************************************************************************/ *****************************************************************************/
void DirectXEventThread ( vout_thread_t *p_vout ); void DirectXEventThread ( event_thread_t *p_event );
void DirectXUpdateOverlay( vout_thread_t *p_vout ); void DirectXUpdateOverlay( vout_thread_t *p_vout );
/***************************************************************************** /*****************************************************************************
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
* vout_events.c: Windows DirectX video output events handler * vout_events.c: Windows DirectX video output events handler
***************************************************************************** *****************************************************************************
* Copyright (C) 2001 VideoLAN * Copyright (C) 2001 VideoLAN
* $Id: vout_events.c,v 1.19 2002/06/01 12:31:58 sam Exp $ * $Id: vout_events.c,v 1.20 2002/06/01 16:45:34 sam Exp $
* *
* Authors: Gildas Bazin <gbazin@netcourrier.com> * Authors: Gildas Bazin <gbazin@netcourrier.com>
* *
...@@ -61,7 +61,7 @@ static long FAR PASCAL DirectXEventProc ( HWND hwnd, UINT message, ...@@ -61,7 +61,7 @@ static long FAR PASCAL DirectXEventProc ( HWND hwnd, UINT message,
* The main goal of this thread is to isolate the Win32 PeekMessage function * The main goal of this thread is to isolate the Win32 PeekMessage function
* because this one can block for a long time. * because this one can block for a long time.
*****************************************************************************/ *****************************************************************************/
void DirectXEventThread( vout_thread_t *p_vout ) void DirectXEventThread( event_thread_t *p_event )
{ {
MSG msg; MSG msg;
POINT old_mouse_pos; POINT old_mouse_pos;
...@@ -71,27 +71,22 @@ void DirectXEventThread( vout_thread_t *p_vout ) ...@@ -71,27 +71,22 @@ void DirectXEventThread( vout_thread_t *p_vout )
/* Create a window for the video */ /* Create a window for the video */
/* Creating a window under Windows also initializes the thread's event /* Creating a window under Windows also initializes the thread's event
* message qeue */ * message qeue */
vlc_mutex_lock( &p_vout->p_sys->event_thread_lock ); if( DirectXCreateWindow( p_event->p_vout ) )
if( DirectXCreateWindow( p_vout ) )
{ {
msg_Err( p_vout, "out of memory" ); msg_Err( p_event, "out of memory" );
p_vout->p_sys->i_event_thread_status = THREAD_FATAL; p_event->b_dead = 1;
p_vout->p_sys->b_event_thread_die = 1;
} }
else p_vout->p_sys->i_event_thread_status = THREAD_READY;
/* signal the creation of the window */ /* signal the creation of the window */
vlc_cond_signal( &p_vout->p_sys->event_thread_wait ); vlc_thread_ready( p_event );
vlc_mutex_unlock( &p_vout->p_sys->event_thread_lock );
/* Main loop */ /* Main loop */
/* GetMessage will sleep if there's no message in the queue */ /* GetMessage will sleep if there's no message in the queue */
while( !p_vout->p_sys->b_event_thread_die while( !p_event->b_die
&& GetMessage( &msg, p_vout->p_sys->hwnd, 0, 0 ) ) && GetMessage( &msg, p_event->p_vout->p_sys->hwnd, 0, 0 ) )
{ {
/* Check if we are asked to exit */ /* Check if we are asked to exit */
if( p_vout->b_die || p_vout->p_sys->b_event_thread_die ) if( p_event->b_die )
break; break;
switch( msg.message ) switch( msg.message )
...@@ -103,11 +98,11 @@ void DirectXEventThread( vout_thread_t *p_vout ) ...@@ -103,11 +98,11 @@ void DirectXEventThread( vout_thread_t *p_vout )
(abs(GET_Y_LPARAM(msg.lParam) - old_mouse_pos.y)) > 2 ) ) (abs(GET_Y_LPARAM(msg.lParam) - old_mouse_pos.y)) > 2 ) )
{ {
GetCursorPos( &old_mouse_pos ); GetCursorPos( &old_mouse_pos );
p_vout->p_sys->i_lastmoved = mdate(); p_event->p_vout->p_sys->i_lastmoved = mdate();
if( p_vout->p_sys->b_cursor_hidden ) if( p_event->p_vout->p_sys->b_cursor_hidden )
{ {
p_vout->p_sys->b_cursor_hidden = 0; p_event->p_vout->p_sys->b_cursor_hidden = 0;
ShowCursor( TRUE ); ShowCursor( TRUE );
} }
} }
...@@ -119,27 +114,36 @@ void DirectXEventThread( vout_thread_t *p_vout ) ...@@ -119,27 +114,36 @@ void DirectXEventThread( vout_thread_t *p_vout )
break; break;
case WM_RBUTTONUP: case WM_RBUTTONUP:
p_vout->p_vlc->p_intf->b_menu_change = 1; {
intf_thread_t *p_intf;
p_intf = vlc_object_find( p_event->p_vlc, VLC_OBJECT_INTF,
FIND_CHILD );
if( p_intf )
{
p_intf->b_menu_change = 1;
vlc_object_release( p_intf );
}
}
break; break;
case WM_LBUTTONDOWN: case WM_LBUTTONDOWN:
break; break;
case WM_LBUTTONDBLCLK: case WM_LBUTTONDBLCLK:
p_vout->p_sys->i_changes |= VOUT_FULLSCREEN_CHANGE; p_event->p_vout->p_sys->i_changes |= VOUT_FULLSCREEN_CHANGE;
break; break;
case WM_KEYDOWN: case WM_KEYDOWN:
/* the key events are first processed here. The next /* the key events are first processed here. The next
* message processed by this main message loop will be the * message processed by this main message loop will be the
* char translation of the key event */ * char translation of the key event */
msg_Dbg( p_vout, "WM_KEYDOWN" ); msg_Dbg( p_event, "WM_KEYDOWN" );
switch( msg.wParam ) switch( msg.wParam )
{ {
case VK_ESCAPE: case VK_ESCAPE:
case VK_F12: case VK_F12:
/* exit application */ /* exit application */
p_vout->p_vlc->b_die = 1; p_event->p_vlc->b_die = 1;
break; break;
} }
TranslateMessage(&msg); TranslateMessage(&msg);
...@@ -151,47 +155,47 @@ void DirectXEventThread( vout_thread_t *p_vout ) ...@@ -151,47 +155,47 @@ void DirectXEventThread( vout_thread_t *p_vout )
case 'q': case 'q':
case 'Q': case 'Q':
/* exit application */ /* exit application */
p_vout->p_vlc->b_die = 1; p_event->p_vlc->b_die = 1;
break; break;
case 'f': /* switch to fullscreen */ case 'f': /* switch to fullscreen */
case 'F': case 'F':
p_vout->p_sys->i_changes |= VOUT_FULLSCREEN_CHANGE; p_event->p_vout->p_sys->i_changes |= VOUT_FULLSCREEN_CHANGE;
break; break;
case 'c': /* toggle grayscale */ case 'c': /* toggle grayscale */
case 'C': case 'C':
p_vout->b_grayscale = ! p_vout->b_grayscale; p_event->p_vout->b_grayscale = ! p_event->p_vout->b_grayscale;
p_vout->p_sys->i_changes |= VOUT_GRAYSCALE_CHANGE; p_event->p_vout->p_sys->i_changes |= VOUT_GRAYSCALE_CHANGE;
break; break;
case 'i': /* toggle info */ case 'i': /* toggle info */
case 'I': case 'I':
p_vout->b_info = ! p_vout->b_info; p_event->p_vout->b_info = ! p_event->p_vout->b_info;
p_vout->p_sys->i_changes |= VOUT_INFO_CHANGE; p_event->p_vout->p_sys->i_changes |= VOUT_INFO_CHANGE;
break; break;
case 's': /* toggle scaling */ case 's': /* toggle scaling */
case 'S': case 'S':
p_vout->b_scale = ! p_vout->b_scale; p_event->p_vout->b_scale = ! p_event->p_vout->b_scale;
p_vout->p_sys->i_changes |= VOUT_SCALE_CHANGE; p_event->p_vout->p_sys->i_changes |= VOUT_SCALE_CHANGE;
break; break;
case ' ': /* toggle interface */ case ' ': /* toggle interface */
p_vout->b_interface = ! p_vout->b_interface; p_event->p_vout->b_interface = ! p_event->p_vout->b_interface;
p_vout->p_sys->i_changes |= VOUT_INTF_CHANGE; p_event->p_vout->p_sys->i_changes |= VOUT_INTF_CHANGE;
break; break;
case '0': network_ChannelJoin( p_vout->p_this, 0 ); break; case '0': network_ChannelJoin( p_event->p_this, 0 ); break;
case '1': network_ChannelJoin( p_vout->p_this, 1 ); break; case '1': network_ChannelJoin( p_event->p_this, 1 ); break;
case '2': network_ChannelJoin( p_vout->p_this, 2 ); break; case '2': network_ChannelJoin( p_event->p_this, 2 ); break;
case '3': network_ChannelJoin( p_vout->p_this, 3 ); break; case '3': network_ChannelJoin( p_event->p_this, 3 ); break;
case '4': network_ChannelJoin( p_vout->p_this, 4 ); break; case '4': network_ChannelJoin( p_event->p_this, 4 ); break;
case '5': network_ChannelJoin( p_vout->p_this, 5 ); break; case '5': network_ChannelJoin( p_event->p_this, 5 ); break;
case '6': network_ChannelJoin( p_vout->p_this, 6 ); break; case '6': network_ChannelJoin( p_event->p_this, 6 ); break;
case '7': network_ChannelJoin( p_vout->p_this, 7 ); break; case '7': network_ChannelJoin( p_event->p_this, 7 ); break;
case '8': network_ChannelJoin( p_vout->p_this, 8 ); break; case '8': network_ChannelJoin( p_event->p_this, 8 ); break;
case '9': network_ChannelJoin( p_vout->p_this, 9 ); break; case '9': network_ChannelJoin( p_event->p_this, 9 ); break;
default: default:
break; break;
...@@ -210,16 +214,16 @@ void DirectXEventThread( vout_thread_t *p_vout ) ...@@ -210,16 +214,16 @@ void DirectXEventThread( vout_thread_t *p_vout )
if( msg.message == WM_QUIT ) if( msg.message == WM_QUIT )
{ {
msg_Warn( p_vout, "WM_QUIT... should not happen!!" ); msg_Warn( p_event, "WM_QUIT... should not happen!!" );
p_vout->p_sys->hwnd = NULL; /* Window already destroyed */ p_event->p_vout->p_sys->hwnd = NULL; /* Window already destroyed */
} }
msg_Dbg( p_vout, "DirectXEventThread Terminating" ); msg_Dbg( p_event, "DirectXEventThread Terminating" );
/* clear the changes formerly signaled */ /* clear the changes formerly signaled */
p_vout->p_sys->i_changes = 0; p_event->p_vout->p_sys->i_changes = 0;
DirectXCloseWindow( p_vout ); DirectXCloseWindow( p_event->p_vout );
} }
...@@ -376,18 +380,12 @@ static void DirectXCloseWindow( vout_thread_t *p_vout ) ...@@ -376,18 +380,12 @@ static void DirectXCloseWindow( vout_thread_t *p_vout )
{ {
msg_Dbg( p_vout, "DirectXCloseWindow" ); msg_Dbg( p_vout, "DirectXCloseWindow" );
vlc_mutex_lock( &p_vout->p_sys->event_thread_lock );
if( p_vout->p_sys->hwnd != NULL ) if( p_vout->p_sys->hwnd != NULL )
{ {
DestroyWindow( p_vout->p_sys->hwnd ); DestroyWindow( p_vout->p_sys->hwnd );
p_vout->p_sys->hwnd = NULL; p_vout->p_sys->hwnd = NULL;
} }
p_vout->p_sys->i_event_thread_status = THREAD_OVER;
vlc_mutex_unlock( &p_vout->p_sys->event_thread_lock );
/* We don't unregister the Window Class because it could lead to race /* We don't unregister the Window Class because it could lead to race
* conditions and it will be done anyway by the system when the app will * conditions and it will be done anyway by the system when the app will
* exit */ * exit */
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
* intf_dummy.c: dummy interface plugin * intf_dummy.c: dummy interface plugin
***************************************************************************** *****************************************************************************
* Copyright (C) 2000, 2001 VideoLAN * Copyright (C) 2000, 2001 VideoLAN
* $Id: intf_dummy.c,v 1.18 2002/06/01 12:31:58 sam Exp $ * $Id: intf_dummy.c,v 1.19 2002/06/01 16:45:34 sam Exp $
* *
* Authors: Samuel Hocevar <sam@zoy.org> * Authors: Samuel Hocevar <sam@zoy.org>
* *
...@@ -74,8 +74,8 @@ static int intf_Open( intf_thread_t *p_intf ) ...@@ -74,8 +74,8 @@ static int intf_Open( intf_thread_t *p_intf )
freopen( "CONOUT$", "w", stdout ); freopen( "CONOUT$", "w", stdout );
freopen( "CONOUT$", "w", stderr ); freopen( "CONOUT$", "w", stderr );
freopen( "CONIN$", "r", stdin ); freopen( "CONIN$", "r", stdin );
intf_Msg( VERSION_MESSAGE ); msg_Info( p_intf, VERSION_MESSAGE );
intf_Msg( _("\nUsing the dummy interface plugin...") ); msg_Info( p_intf, _("\nUsing the dummy interface plugin...") );
#endif #endif
return( 0 ); return( 0 );
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
* idctaltivec.c : AltiVec IDCT module * idctaltivec.c : AltiVec IDCT module
***************************************************************************** *****************************************************************************
* Copyright (C) 2001 VideoLAN * Copyright (C) 2001 VideoLAN
* $Id: idctaltivec.c,v 1.25 2002/06/01 12:31:59 sam Exp $ * $Id: idctaltivec.c,v 1.26 2002/06/01 16:45:34 sam Exp $
* *
* Authors: Christophe Massiot <massiot@via.ecp.fr> * Authors: Christophe Massiot <massiot@via.ecp.fr>
* *
...@@ -26,12 +26,14 @@ ...@@ -26,12 +26,14 @@
/***************************************************************************** /*****************************************************************************
* Preamble * Preamble
*****************************************************************************/ *****************************************************************************/
#include <stdlib.h>
#include <string.h>
#include <inttypes.h>
#include <vlc/vlc.h> #include <vlc/vlc.h>
#include <stdlib.h> /* malloc(), free() */
#include <string.h>
#ifdef HAVE_INTTYPES_H
# include <inttypes.h> /* int16_t .. */
#endif
#include "idct.h" #include "idct.h"
/***************************************************************************** /*****************************************************************************
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
* motionaltivec.c : AltiVec motion compensation module for vlc * motionaltivec.c : AltiVec motion compensation module for vlc
***************************************************************************** *****************************************************************************
* Copyright (C) 2001 VideoLAN * Copyright (C) 2001 VideoLAN
* $Id: motionaltivec.c,v 1.13 2002/06/01 12:32:00 sam Exp $ * $Id: motionaltivec.c,v 1.14 2002/06/01 16:45:34 sam Exp $
* *
* Authors: Michel Lespinasse <walken@zoy.org> * Authors: Michel Lespinasse <walken@zoy.org>
* Paul Mackerras <paulus@linuxcare.com.au> * Paul Mackerras <paulus@linuxcare.com.au>
...@@ -27,11 +27,13 @@ ...@@ -27,11 +27,13 @@
/***************************************************************************** /*****************************************************************************
* Preamble * Preamble
*****************************************************************************/ *****************************************************************************/
#include <vlc/vlc.h>
#include <stdlib.h> /* malloc(), free() */ #include <stdlib.h> /* malloc(), free() */
#include <string.h> #include <string.h>
#include <inttypes.h> #ifdef HAVE_INTTYPES_H
# include <inttypes.h> /* int16_t .. */
#include <vlc/vlc.h> #endif
/***************************************************************************** /*****************************************************************************
* Local and extern prototypes. * Local and extern prototypes.
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
* ipv6.c: IPv6 network abstraction layer * ipv6.c: IPv6 network abstraction layer
***************************************************************************** *****************************************************************************
* Copyright (C) 2002 VideoLAN * Copyright (C) 2002 VideoLAN
* $Id: ipv6.c,v 1.9 2002/06/01 12:32:00 sam Exp $ * $Id: ipv6.c,v 1.10 2002/06/01 16:45:34 sam Exp $
* *
* Authors: Alexis Guillard <alexis.guillard@bt.com> * Authors: Alexis Guillard <alexis.guillard@bt.com>
* Christophe Massiot <massiot@via.ecp.fr> * Christophe Massiot <massiot@via.ecp.fr>
...@@ -66,7 +66,7 @@ static const struct in6_addr in6addr_any = {{IN6ADDR_ANY_INIT}}; ...@@ -66,7 +66,7 @@ static const struct in6_addr in6addr_any = {{IN6ADDR_ANY_INIT}};
* Local prototypes * Local prototypes
*****************************************************************************/ *****************************************************************************/
static void getfunctions( function_list_t * ); static void getfunctions( function_list_t * );
static int NetworkOpen( network_socket_t * ); static int NetworkOpen( vlc_object_t *, network_socket_t * );
/***************************************************************************** /*****************************************************************************
* Build configuration tree. * Build configuration tree.
...@@ -125,7 +125,7 @@ static int BuildAddr( struct sockaddr_in6 * p_socket, ...@@ -125,7 +125,7 @@ static int BuildAddr( struct sockaddr_in6 * p_socket,
} }
if( !_getaddrinfo || !_freeaddrinfo ) if( !_getaddrinfo || !_freeaddrinfo )
{ {
intf_ErrMsg( "ipv6 error: no IPv6 stack installed" ); //X msg_Err( p_this, "no IPv6 stack installed" );
if( wship6_dll ) FreeLibrary( wship6_dll ); if( wship6_dll ) FreeLibrary( wship6_dll );
return( -1 ); return( -1 );
} }
...@@ -218,7 +218,7 @@ static int BuildAddr( struct sockaddr_in6 * p_socket, ...@@ -218,7 +218,7 @@ static int BuildAddr( struct sockaddr_in6 * p_socket,
* Its use leads to great confusion and is currently discouraged. * Its use leads to great confusion and is currently discouraged.
* This function returns -1 in case of error. * This function returns -1 in case of error.
*****************************************************************************/ *****************************************************************************/
static int OpenUDP( network_socket_t * p_socket ) static int OpenUDP( vlc_object_t * p_this, network_socket_t * p_socket )
{ {
char * psz_bind_addr = p_socket->psz_bind_addr; char * psz_bind_addr = p_socket->psz_bind_addr;
int i_bind_port = p_socket->i_bind_port; int i_bind_port = p_socket->i_bind_port;
...@@ -237,7 +237,7 @@ static int OpenUDP( network_socket_t * p_socket ) ...@@ -237,7 +237,7 @@ static int OpenUDP( network_socket_t * p_socket )
* protocol */ * protocol */
if( (i_handle = socket( AF_INET6, SOCK_DGRAM, 0 )) == -1 ) if( (i_handle = socket( AF_INET6, SOCK_DGRAM, 0 )) == -1 )
{ {
//X intf_ErrMsg( "ipv6 error: cannot create socket (%s)", strerror(errno) ); msg_Err( p_this, "cannot create socket (%s)", strerror(errno) );
return( -1 ); return( -1 );
} }
...@@ -246,8 +246,8 @@ static int OpenUDP( network_socket_t * p_socket ) ...@@ -246,8 +246,8 @@ static int OpenUDP( network_socket_t * p_socket )
if( setsockopt( i_handle, SOL_SOCKET, SO_REUSEADDR, if( setsockopt( i_handle, SOL_SOCKET, SO_REUSEADDR,
(void *) &i_opt, sizeof( i_opt ) ) == -1 ) (void *) &i_opt, sizeof( i_opt ) ) == -1 )
{ {
//X intf_ErrMsg( "ipv6 error: cannot configure socket (SO_REUSEADDR: %s)", msg_Err( p_this, "cannot configure socket (SO_REUSEADDR: %s)",
strerror(errno)); strerror(errno) );
close( i_handle ); close( i_handle );
return( -1 ); return( -1 );
} }
...@@ -258,9 +258,8 @@ static int OpenUDP( network_socket_t * p_socket ) ...@@ -258,9 +258,8 @@ static int OpenUDP( network_socket_t * p_socket )
if( setsockopt( i_handle, SOL_SOCKET, SO_RCVBUF, if( setsockopt( i_handle, SOL_SOCKET, SO_RCVBUF,
(void *) &i_opt, sizeof( i_opt ) ) == -1 ) (void *) &i_opt, sizeof( i_opt ) ) == -1 )
{ {
//X intf_WarnMsg( 1, msg_Warn( p_this, "cannot configure socket (SO_RCVBUF: %s)",
"ipv6 warning: cannot configure socket (SO_RCVBUF: %s)", strerror(errno) );
strerror(errno));
} }
/* Check if we really got what we have asked for, because Linux, etc. /* Check if we really got what we have asked for, because Linux, etc.
...@@ -271,13 +270,13 @@ static int OpenUDP( network_socket_t * p_socket ) ...@@ -271,13 +270,13 @@ static int OpenUDP( network_socket_t * p_socket )
if( getsockopt( i_handle, SOL_SOCKET, SO_RCVBUF, if( getsockopt( i_handle, SOL_SOCKET, SO_RCVBUF,
(void*) &i_opt, &i_opt_size ) == -1 ) (void*) &i_opt, &i_opt_size ) == -1 )
{ {
//X intf_WarnMsg( 1, "ipv6 warning: cannot query socket (SO_RCVBUF: %s)", msg_Warn( p_this, "cannot query socket (SO_RCVBUF: %s)",
//X strerror(errno)); strerror(errno) );
} }
else if( i_opt < 0x80000 ) else if( i_opt < 0x80000 )
{ {
//X intf_WarnMsg( 1, "ipv6 warning: socket buffer size is 0x%x" msg_Warn( p_this, "socket buffer size is 0x%x instead of 0x%x",
" instead of 0x%x", i_opt, 0x80000 ); i_opt, 0x80000 );
} }
/* Build the local socket */ /* Build the local socket */
...@@ -290,7 +289,7 @@ static int OpenUDP( network_socket_t * p_socket ) ...@@ -290,7 +289,7 @@ static int OpenUDP( network_socket_t * p_socket )
/* Bind it */ /* Bind it */
if( bind( i_handle, (struct sockaddr *)&sock, sizeof( sock ) ) < 0 ) if( bind( i_handle, (struct sockaddr *)&sock, sizeof( sock ) ) < 0 )
{ {
//X intf_ErrMsg( "ipv6 error: cannot bind socket (%s)", strerror(errno) ); msg_Err( p_this, "cannot bind socket (%s)", strerror(errno) );
close( i_handle ); close( i_handle );
return( -1 ); return( -1 );
} }
...@@ -302,9 +301,8 @@ static int OpenUDP( network_socket_t * p_socket ) ...@@ -302,9 +301,8 @@ static int OpenUDP( network_socket_t * p_socket )
if( setsockopt( i_handle, SOL_SOCKET, SO_BROADCAST, if( setsockopt( i_handle, SOL_SOCKET, SO_BROADCAST,
(void*) &i_opt, sizeof( i_opt ) ) == -1 ) (void*) &i_opt, sizeof( i_opt ) ) == -1 )
{ {
//X intf_WarnMsg( 1, msg_Warn( p_this, "ipv6 warning: cannot configure socket "
//X "ipv6 warning: cannot configure socket (SO_BROADCAST: %s)", "(SO_BROADCAST: %s)", strerror(errno) );
//X strerror(errno));
} }
} }
...@@ -316,7 +314,7 @@ static int OpenUDP( network_socket_t * p_socket ) ...@@ -316,7 +314,7 @@ static int OpenUDP( network_socket_t * p_socket )
/* Build socket for remote connection */ /* Build socket for remote connection */
if ( BuildAddr( &sock, psz_server_addr, i_server_port ) == -1 ) if ( BuildAddr( &sock, psz_server_addr, i_server_port ) == -1 )
{ {
//X intf_ErrMsg( "ipv6 error: cannot build remote address" ); msg_Err( p_this, "cannot build remote address" );
close( i_handle ); close( i_handle );
return( -1 ); return( -1 );
} }
...@@ -325,8 +323,7 @@ static int OpenUDP( network_socket_t * p_socket ) ...@@ -325,8 +323,7 @@ static int OpenUDP( network_socket_t * p_socket )
if( connect( i_handle, (struct sockaddr *) &sock, if( connect( i_handle, (struct sockaddr *) &sock,
sizeof( sock ) ) == (-1) ) sizeof( sock ) ) == (-1) )
{ {
//X intf_ErrMsg( "ipv6 error: cannot connect socket (%s)", msg_Err( p_this, "cannot connect socket (%s)", strerror(errno) );
//X strerror(errno) );
close( i_handle ); close( i_handle );
return( -1 ); return( -1 );
} }
...@@ -345,7 +342,7 @@ static int OpenUDP( network_socket_t * p_socket ) ...@@ -345,7 +342,7 @@ static int OpenUDP( network_socket_t * p_socket )
* Other parameters are ignored. * Other parameters are ignored.
* This function returns -1 in case of error. * This function returns -1 in case of error.
*****************************************************************************/ *****************************************************************************/
static int OpenTCP( network_socket_t * p_socket ) static int OpenTCP( vlc_object_t * p_this, network_socket_t * p_socket )
{ {
char * psz_server_addr = p_socket->psz_server_addr; char * psz_server_addr = p_socket->psz_server_addr;
int i_server_port = p_socket->i_server_port; int i_server_port = p_socket->i_server_port;
...@@ -362,7 +359,7 @@ static int OpenTCP( network_socket_t * p_socket ) ...@@ -362,7 +359,7 @@ static int OpenTCP( network_socket_t * p_socket )
* protocol */ * protocol */
if( (i_handle = socket( AF_INET6, SOCK_STREAM, 0 )) == -1 ) if( (i_handle = socket( AF_INET6, SOCK_STREAM, 0 )) == -1 )
{ {
//X intf_ErrMsg( "ipv6 error: cannot create socket (%s)", strerror(errno) ); msg_Err( p_this, "cannot create socket (%s)", strerror(errno) );
return( -1 ); return( -1 );
} }
...@@ -377,8 +374,7 @@ static int OpenTCP( network_socket_t * p_socket ) ...@@ -377,8 +374,7 @@ static int OpenTCP( network_socket_t * p_socket )
if( connect( i_handle, (struct sockaddr *) &sock, if( connect( i_handle, (struct sockaddr *) &sock,
sizeof( sock ) ) == (-1) ) sizeof( sock ) ) == (-1) )
{ {
//X intf_ErrMsg( "ipv6 error: cannot connect socket (%s)", msg_Err( p_this, "cannot connect socket (%s)", strerror(errno) );
strerror(errno) );
close( i_handle ); close( i_handle );
return( -1 ); return( -1 );
} }
...@@ -392,14 +388,14 @@ static int OpenTCP( network_socket_t * p_socket ) ...@@ -392,14 +388,14 @@ static int OpenTCP( network_socket_t * p_socket )
/***************************************************************************** /*****************************************************************************
* NetworkOpen: wrapper around OpenUDP and OpenTCP * NetworkOpen: wrapper around OpenUDP and OpenTCP
*****************************************************************************/ *****************************************************************************/
static int NetworkOpen( network_socket_t * p_socket ) static int NetworkOpen( vlc_object_t * p_this, network_socket_t * p_socket )
{ {
if( p_socket->i_type == NETWORK_UDP ) if( p_socket->i_type == NETWORK_UDP )
{ {
return OpenUDP( p_socket ); return OpenUDP( p_this, p_socket );
} }
else else
{ {
return OpenTCP( p_socket ); return OpenTCP( p_this, p_socket );
} }
} }
...@@ -21,9 +21,13 @@ ...@@ -21,9 +21,13 @@
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111, USA. * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111, USA.
*****************************************************************************/ *****************************************************************************/
#include <vlc/vlc.h>
#include <sys/ioctl.h> #include <sys/ioctl.h>
#include <stdio.h> #include <stdio.h>
#include <inttypes.h> #ifdef HAVE_INTTYPES_H
# include <inttypes.h> /* int16_t .. */
#endif
#include <sys/types.h> #include <sys/types.h>
#include <sys/stat.h> #include <sys/stat.h>
#include <fcntl.h> #include <fcntl.h>
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: vlc 0.73.3\n" "Project-Id-Version: vlc 0.73.3\n"
"POT-Creation-Date: 2002-05-31 11:45+0200\n" "POT-Creation-Date: 2002-06-01 18:43+0200\n"
"PO-Revision-Date: 2002-04-18 23:38+0100\n" "PO-Revision-Date: 2002-04-18 23:38+0100\n"
"Last-Translator: Thomas Graf <tgr@reeler.org>\n" "Last-Translator: Thomas Graf <tgr@reeler.org>\n"
"Language-Team: LANGUAGE <LL@li.org>\n" "Language-Team: LANGUAGE <LL@li.org>\n"
...@@ -14,13 +14,13 @@ msgstr "" ...@@ -14,13 +14,13 @@ msgstr ""
"Content-Type: text/plain; charset=iso-8859-1\n" "Content-Type: text/plain; charset=iso-8859-1\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
#: src/libvlc.c:270 #: src/libvlc.c:277
#, c-format #, c-format
msgid "Usage: %s [options] [parameters] [file]...\n" msgid "Usage: %s [options] [parameters] [file]...\n"
msgstr "Usage: %s [Optionen] [Parameter] [Date]...\n" msgstr "Usage: %s [Optionen] [Parameter] [Date]...\n"
#. Print module name #. Print module name
#: src/libvlc.c:828 #: src/libvlc.c:868
#, fuzzy, c-format #, fuzzy, c-format
msgid "" msgid ""
"%s module options:\n" "%s module options:\n"
...@@ -28,27 +28,27 @@ msgid "" ...@@ -28,27 +28,27 @@ msgid ""
msgstr "%s Modul Optionen:\n" msgstr "%s Modul Optionen:\n"
#. We could also have "=<" here #. We could also have "=<" here
#: src/libvlc.c:848 src/misc/configuration.c:794 #: src/libvlc.c:888 src/misc/configuration.c:798
msgid "string" msgid "string"
msgstr "text" msgstr "text"
#: src/libvlc.c:851 src/misc/configuration.c:779 #: src/libvlc.c:891 src/misc/configuration.c:783
msgid "integer" msgid "integer"
msgstr "zahl" msgstr "zahl"
#: src/libvlc.c:854 src/misc/configuration.c:786 #: src/libvlc.c:894 src/misc/configuration.c:790
msgid "float" msgid "float"
msgstr "gleitpunktzahl" msgstr "gleitpunktzahl"
#: src/libvlc.c:860 #: src/libvlc.c:900
msgid " (default: enabled)" msgid " (default enabled)"
msgstr "" msgstr ""
#: src/libvlc.c:861 #: src/libvlc.c:901
msgid " (default: disabled)" msgid " (default disabled)"
msgstr "" msgstr ""
#: src/libvlc.c:915 #: src/libvlc.c:955
#, fuzzy #, fuzzy
msgid "" msgid ""
"\n" "\n"
...@@ -79,7 +79,7 @@ msgstr "" ...@@ -79,7 +79,7 @@ msgstr ""
"pausieren\n" "pausieren\n"
" vlc:quit \tVLC beenden" " vlc:quit \tVLC beenden"
#: src/libvlc.c:936 src/libvlc.c:985 src/libvlc.c:1009 src/libvlc.c:1028 #: src/libvlc.c:976 src/libvlc.c:1025 src/libvlc.c:1049 src/libvlc.c:1068
#, fuzzy #, fuzzy
msgid "" msgid ""
"\n" "\n"
...@@ -89,19 +89,19 @@ msgstr "" ...@@ -89,19 +89,19 @@ msgstr ""
"Drck die Eingabetaste um weiterzufahren..." "Drck die Eingabetaste um weiterzufahren..."
#. Usage #. Usage
#: src/libvlc.c:959 #: src/libvlc.c:999
#, fuzzy, c-format #, fuzzy, c-format
msgid "" msgid ""
"Usage: %s [options] [parameters] [file]...\n" "Usage: %s [options] [parameters] [file]...\n"
"\n" "\n"
msgstr "Usage: %s [Optionen] [Parameter] [Date]...\n" msgstr "Usage: %s [Optionen] [Parameter] [Date]...\n"
#: src/libvlc.c:962 #: src/libvlc.c:1002
#, fuzzy #, fuzzy
msgid "[module] [description]\n" msgid "[module] [description]\n"
msgstr "[Modul] [Beschreibung]" msgstr "[Modul] [Beschreibung]"
#: src/libvlc.c:1003 #: src/libvlc.c:1043
msgid "" msgid ""
"This program comes with NO WARRANTY, to the extent permitted by law.\n" "This program comes with NO WARRANTY, to the extent permitted by law.\n"
"You may redistribute it under the terms of the GNU General Public License;\n" "You may redistribute it under the terms of the GNU General Public License;\n"
...@@ -113,7 +113,7 @@ msgstr "" ...@@ -113,7 +113,7 @@ msgstr ""
#. * libvlc.h: main libvlc header #. * libvlc.h: main libvlc header
#. ***************************************************************************** #. *****************************************************************************
#. * Copyright (C) 1998-2002 VideoLAN #. * Copyright (C) 1998-2002 VideoLAN
#. * $Id: de.po,v 1.10 2002/06/01 12:32:01 sam Exp $ #. * $Id: de.po,v 1.11 2002/06/01 16:45:34 sam Exp $
#. * #. *
#. * Authors: Vincent Seguin <seguin@via.ecp.fr> #. * Authors: Vincent Seguin <seguin@via.ecp.fr>
#. * Samuel Hocevar <sam@zoy.org> #. * Samuel Hocevar <sam@zoy.org>
...@@ -711,12 +711,12 @@ msgid "Playlist" ...@@ -711,12 +711,12 @@ msgid "Playlist"
msgstr "Abspielliste" msgstr "Abspielliste"
#. Misc options #. Misc options
#: plugins/a52/a52.c:81 plugins/ac3_adec/ac3_adec.c:72 plugins/dsp/dsp.c:81 #: plugins/a52/a52.c:83 plugins/ac3_adec/ac3_adec.c:72 plugins/dsp/dsp.c:81
#: plugins/dummy/dummy.c:51 plugins/fb/fb.c:70 plugins/filter/deinterlace.c:50 #: plugins/dummy/dummy.c:51 plugins/fb/fb.c:70 plugins/filter/deinterlace.c:50
#: plugins/filter/distort.c:50 plugins/filter/transform.c:51 #: plugins/filter/distort.c:50 plugins/filter/transform.c:51
#: plugins/filter/wall.c:45 plugins/ggi/ggi.c:64 plugins/gtk/gnome.c:73 #: plugins/filter/wall.c:45 plugins/ggi/ggi.c:64 plugins/gtk/gnome.c:73
#: plugins/gtk/gtk.c:71 plugins/mad/mad_adec.c:66 plugins/mga/xmga.c:106 #: plugins/gtk/gtk.c:71 plugins/mad/mad_adec.c:66 plugins/mga/xmga.c:106
#: plugins/mpeg_vdec/video_parser.c:95 plugins/text/logger.c:86 #: plugins/mpeg_vdec/video_parser.c:96 plugins/text/logger.c:86
#: plugins/win32/win32.cpp:48 plugins/x11/x11.c:55 plugins/x11/xvideo.c:65 #: plugins/win32/win32.cpp:48 plugins/x11/x11.c:55 plugins/x11/xvideo.c:65
#: src/libvlc.h:366 #: src/libvlc.h:366
msgid "Miscellaneous" msgid "Miscellaneous"
...@@ -752,18 +752,18 @@ msgstr "Versionsinformationen ausgeben." ...@@ -752,18 +752,18 @@ msgstr "Versionsinformationen ausgeben."
msgid "print build information" msgid "print build information"
msgstr "Versionsinformationen ausgeben." msgstr "Versionsinformationen ausgeben."
#: src/misc/configuration.c:779 #: src/misc/configuration.c:783
msgid "boolean" msgid "boolean"
msgstr "boolesch" msgstr "boolesch"
#. **************************************************************************** #. ****************************************************************************
#. * Build configuration structure. #. * Build configuration structure.
#. **************************************************************************** #. ****************************************************************************
#: plugins/a52/a52.c:72 #: plugins/a52/a52.c:74
msgid "A/52 dynamic range compression" msgid "A/52 dynamic range compression"
msgstr "" msgstr ""
#: plugins/a52/a52.c:74 #: plugins/a52/a52.c:76
msgid "" msgid ""
"Dynamic range compression makes the loud sounds softer, and the soft sounds " "Dynamic range compression makes the loud sounds softer, and the soft sounds "
"louder, so you can more easily listen to the stream in a noisy environment " "louder, so you can more easily listen to the stream in a noisy environment "
...@@ -771,7 +771,7 @@ msgid "" ...@@ -771,7 +771,7 @@ msgid ""
"playback will be more adapted to a movie theater or a listening room." "playback will be more adapted to a movie theater or a listening room."
msgstr "" msgstr ""
#: plugins/a52/a52.c:86 #: plugins/a52/a52.c:88
msgid "a52 ATSC A/52 aka AC-3 audio decoder module" msgid "a52 ATSC A/52 aka AC-3 audio decoder module"
msgstr "a52 ATSC A/52 aka AC-3 Audio Dekoder Modul" msgstr "a52 ATSC A/52 aka AC-3 Audio Dekoder Modul"
...@@ -827,18 +827,18 @@ msgstr "I420,IYUV,YV12 to RGB,RV15,RV16,RV24,RV32 Umwandlungen" ...@@ -827,18 +827,18 @@ msgstr "I420,IYUV,YV12 to RGB,RV15,RV16,RV24,RV32 Umwandlungen"
msgid "MMX I420,IYUV,YV12 to RV15,RV16,RV24,RV32 conversions" msgid "MMX I420,IYUV,YV12 to RV15,RV16,RV24,RV32 conversions"
msgstr "MMX I420,IYUV,YV12 to RV15,RV16,RV24,RV32 Umwandlungen" msgstr "MMX I420,IYUV,YV12 to RV15,RV16,RV24,RV32 Umwandlungen"
#: plugins/chroma/i420_ymga.c:55 plugins/chroma/i420_yuy2.c:69 #: plugins/chroma/i420_ymga.c:55 plugins/chroma/i420_yuy2.c:74
#: plugins/chroma/i422_yuy2.c:68 #: plugins/chroma/i422_yuy2.c:68
msgid "conversions from " msgid "conversions from "
msgstr "Wandlungen von " msgstr "Wandlungen von "
#: plugins/chroma/i420_ymga.c:55 plugins/chroma/i420_ymga.c:58 #: plugins/chroma/i420_ymga.c:55 plugins/chroma/i420_ymga.c:58
#: plugins/chroma/i420_yuy2.c:69 plugins/chroma/i420_yuy2.c:72 #: plugins/chroma/i420_yuy2.c:74 plugins/chroma/i420_yuy2.c:77
#: plugins/chroma/i422_yuy2.c:68 plugins/chroma/i422_yuy2.c:71 #: plugins/chroma/i422_yuy2.c:68 plugins/chroma/i422_yuy2.c:71
msgid " to " msgid " to "
msgstr "zu " msgstr "zu "
#: plugins/chroma/i420_ymga.c:58 plugins/chroma/i420_yuy2.c:72 #: plugins/chroma/i420_ymga.c:58 plugins/chroma/i420_yuy2.c:77
#: plugins/chroma/i422_yuy2.c:71 #: plugins/chroma/i422_yuy2.c:71
msgid "MMX conversions from " msgid "MMX conversions from "
msgstr "MXX Wandlungen von " msgstr "MXX Wandlungen von "
...@@ -1781,11 +1781,11 @@ msgstr "Kapitel %d" ...@@ -1781,11 +1781,11 @@ msgstr "Kapitel %d"
#. **************************************************************************** #. ****************************************************************************
#. * Build configuration tree. #. * Build configuration tree.
#. **************************************************************************** #. ****************************************************************************
#: plugins/idct/idct.c:47 plugins/mpeg_vdec/video_parser.c:70 #: plugins/idct/idct.c:47 plugins/mpeg_vdec/video_parser.c:71
msgid "IDCT module" msgid "IDCT module"
msgstr "IDCT Modul" msgstr "IDCT Modul"
#: plugins/idct/idctaltivec.c:49 #: plugins/idct/idctaltivec.c:51
#, fuzzy #, fuzzy
msgid "AltiVec IDCT module" msgid "AltiVec IDCT module"
msgstr "AltiVec IDCT Modul" msgstr "AltiVec IDCT Modul"
...@@ -1901,7 +1901,7 @@ msgstr "" ...@@ -1901,7 +1901,7 @@ msgstr ""
msgid "X11 MGA module" msgid "X11 MGA module"
msgstr "X11 MGA Modul" msgstr "X11 MGA Modul"
#: plugins/motion/motion.c:45 plugins/mpeg_vdec/video_parser.c:76 #: plugins/motion/motion.c:45 plugins/mpeg_vdec/video_parser.c:77
msgid "motion compensation module" msgid "motion compensation module"
msgstr "Motion Compensation Modul" msgstr "Motion Compensation Modul"
...@@ -1909,7 +1909,7 @@ msgstr "Motion Compensation Modul" ...@@ -1909,7 +1909,7 @@ msgstr "Motion Compensation Modul"
msgid "3D Now! motion compensation module" msgid "3D Now! motion compensation module"
msgstr "3D Now! Motion Compensation Modul" msgstr "3D Now! Motion Compensation Modul"
#: plugins/motion/motionaltivec.c:48 #: plugins/motion/motionaltivec.c:50
msgid "AltiVec motion compensation module" msgid "AltiVec motion compensation module"
msgstr "AltiVec Motion Compensation Modul" msgstr "AltiVec Motion Compensation Modul"
...@@ -1942,7 +1942,7 @@ msgstr "ISO 13818-1 MPEG Transport Stream Eingabe" ...@@ -1942,7 +1942,7 @@ msgstr "ISO 13818-1 MPEG Transport Stream Eingabe"
msgid "ISO 13818-1 MPEG Transport Stream input (libdvbpsi)" msgid "ISO 13818-1 MPEG Transport Stream input (libdvbpsi)"
msgstr "ISO 13818-1 MPEG Transport Stream Eingabe" msgstr "ISO 13818-1 MPEG Transport Stream Eingabe"
#: plugins/mpeg_vdec/video_parser.c:72 #: plugins/mpeg_vdec/video_parser.c:73
#, fuzzy #, fuzzy
msgid "" msgid ""
"This option allows you to select the IDCT module used by this video decoder. " "This option allows you to select the IDCT module used by this video decoder. "
...@@ -1951,7 +1951,7 @@ msgstr "" ...@@ -1951,7 +1951,7 @@ msgstr ""
"Diese Option erlaubt Dir die Standard Oberflche festzulegen.\n" "Diese Option erlaubt Dir die Standard Oberflche festzulegen.\n"
"Merke Dir, standardmssig wird die beste Methode verwendet." "Merke Dir, standardmssig wird die beste Methode verwendet."
#: plugins/mpeg_vdec/video_parser.c:78 #: plugins/mpeg_vdec/video_parser.c:79
#, fuzzy #, fuzzy
msgid "" msgid ""
"This option allows you to select the motion compensation module used by this " "This option allows you to select the motion compensation module used by this "
...@@ -1961,21 +1961,21 @@ msgstr "" ...@@ -1961,21 +1961,21 @@ msgstr ""
"Diese Option erlaubt Dir den standard Video Ausgabemodus festzulegen.\n" "Diese Option erlaubt Dir den standard Video Ausgabemodus festzulegen.\n"
"Merke Dir, standardmssig wird die beste Methode ausgewhlt." "Merke Dir, standardmssig wird die beste Methode ausgewhlt."
#: plugins/mpeg_vdec/video_parser.c:82 #: plugins/mpeg_vdec/video_parser.c:83
msgid "use additional processors" msgid "use additional processors"
msgstr "Benutz zustzliche Prozessoren" msgstr "Benutz zustzliche Prozessoren"
#: plugins/mpeg_vdec/video_parser.c:84 #: plugins/mpeg_vdec/video_parser.c:85
msgid "" msgid ""
"This video decoder can benefit from a multiprocessor computer. If you have " "This video decoder can benefit from a multiprocessor computer. If you have "
"one, you can specify the number of processors here." "one, you can specify the number of processors here."
msgstr "" msgstr ""
#: plugins/mpeg_vdec/video_parser.c:87 #: plugins/mpeg_vdec/video_parser.c:88
msgid "force synchro algorithm {I|I+|IP|IP+|IPB}" msgid "force synchro algorithm {I|I+|IP|IP+|IPB}"
msgstr "Synchro Algorithmus focieren {I|I+|IP|IP+|IPB}" msgstr "Synchro Algorithmus focieren {I|I+|IP|IP+|IPB}"
#: plugins/mpeg_vdec/video_parser.c:89 #: plugins/mpeg_vdec/video_parser.c:90
msgid "" msgid ""
"This allows you to force the synchro algorithm, by directly selecting the " "This allows you to force the synchro algorithm, by directly selecting the "
"types of picture you want to decode. Please bear in mind that if you select " "types of picture you want to decode. Please bear in mind that if you select "
...@@ -1983,7 +1983,7 @@ msgid "" ...@@ -1983,7 +1983,7 @@ msgid ""
"anything." "anything."
msgstr "" msgstr ""
#: plugins/mpeg_vdec/video_parser.c:106 #: plugins/mpeg_vdec/video_parser.c:107
msgid "MPEG I/II video decoder module" msgid "MPEG I/II video decoder module"
msgstr "MPEG I/II Video Dekoder Modul" msgstr "MPEG I/II Video Dekoder Modul"
......
This diff is collapsed.
...@@ -5,7 +5,7 @@ ...@@ -5,7 +5,7 @@
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: PACKAGE VERSION\n" "Project-Id-Version: PACKAGE VERSION\n"
"POT-Creation-Date: 2002-05-31 11:45+0200\n" "POT-Creation-Date: 2002-06-01 18:43+0200\n"
"PO-Revision-Date: 2001-12-10 13:32+0100\n" "PO-Revision-Date: 2001-12-10 13:32+0100\n"
"Last-Translator: Samuel Hocevar <sam@zoy.org>\n" "Last-Translator: Samuel Hocevar <sam@zoy.org>\n"
"Language-Team: LANGUAGE <LL@li.org>\n" "Language-Team: LANGUAGE <LL@li.org>\n"
...@@ -13,13 +13,13 @@ msgstr "" ...@@ -13,13 +13,13 @@ msgstr ""
"Content-Type: text/plain; charset=iso-8859-1\n" "Content-Type: text/plain; charset=iso-8859-1\n"
"Content-Transfer-Encoding: 8-bit\n" "Content-Transfer-Encoding: 8-bit\n"
#: src/libvlc.c:270 #: src/libvlc.c:277
#, c-format #, c-format
msgid "Usage: %s [options] [parameters] [file]...\n" msgid "Usage: %s [options] [parameters] [file]...\n"
msgstr "Utilisation: %s [options] [paramtres] [fichier]...\n" msgstr "Utilisation: %s [options] [paramtres] [fichier]...\n"
#. Print module name #. Print module name
#: src/libvlc.c:828 #: src/libvlc.c:868
#, c-format #, c-format
msgid "" msgid ""
"%s module options:\n" "%s module options:\n"
...@@ -29,27 +29,27 @@ msgstr "" ...@@ -29,27 +29,27 @@ msgstr ""
"\n" "\n"
#. We could also have "=<" here #. We could also have "=<" here
#: src/libvlc.c:848 src/misc/configuration.c:794 #: src/libvlc.c:888 src/misc/configuration.c:798
msgid "string" msgid "string"
msgstr "chane" msgstr "chane"
#: src/libvlc.c:851 src/misc/configuration.c:779 #: src/libvlc.c:891 src/misc/configuration.c:783
msgid "integer" msgid "integer"
msgstr "entier" msgstr "entier"
#: src/libvlc.c:854 src/misc/configuration.c:786 #: src/libvlc.c:894 src/misc/configuration.c:790
msgid "float" msgid "float"
msgstr "flottant" msgstr "flottant"
#: src/libvlc.c:860 #: src/libvlc.c:900
msgid " (default: enabled)" msgid " (default enabled)"
msgstr "" msgstr ""
#: src/libvlc.c:861 #: src/libvlc.c:901
msgid " (default: disabled)" msgid " (default disabled)"
msgstr "" msgstr ""
#: src/libvlc.c:915 #: src/libvlc.c:955
msgid "" msgid ""
"\n" "\n"
"Playlist items:\n" "Playlist items:\n"
...@@ -77,7 +77,7 @@ msgstr "" ...@@ -77,7 +77,7 @@ msgstr ""
" vlc:pause fait une pause dans la playlist\n" " vlc:pause fait une pause dans la playlist\n"
" vlc:quit quitter VLC\n" " vlc:quit quitter VLC\n"
#: src/libvlc.c:936 src/libvlc.c:985 src/libvlc.c:1009 src/libvlc.c:1028 #: src/libvlc.c:976 src/libvlc.c:1025 src/libvlc.c:1049 src/libvlc.c:1068
msgid "" msgid ""
"\n" "\n"
"Press the RETURN key to continue...\n" "Press the RETURN key to continue...\n"
...@@ -86,7 +86,7 @@ msgstr "" ...@@ -86,7 +86,7 @@ msgstr ""
"Appuyez sur ENTRE pour continuer...\n" "Appuyez sur ENTRE pour continuer...\n"
#. Usage #. Usage
#: src/libvlc.c:959 #: src/libvlc.c:999
#, c-format #, c-format
msgid "" msgid ""
"Usage: %s [options] [parameters] [file]...\n" "Usage: %s [options] [parameters] [file]...\n"
...@@ -95,11 +95,11 @@ msgstr "" ...@@ -95,11 +95,11 @@ msgstr ""
"Utilisation: %s [options] [paramtres] [fichier]...\n" "Utilisation: %s [options] [paramtres] [fichier]...\n"
"\n" "\n"
#: src/libvlc.c:962 #: src/libvlc.c:1002
msgid "[module] [description]\n" msgid "[module] [description]\n"
msgstr "[module] [description]\n" msgstr "[module] [description]\n"
#: src/libvlc.c:1003 #: src/libvlc.c:1043
msgid "" msgid ""
"This program comes with NO WARRANTY, to the extent permitted by law.\n" "This program comes with NO WARRANTY, to the extent permitted by law.\n"
"You may redistribute it under the terms of the GNU General Public License;\n" "You may redistribute it under the terms of the GNU General Public License;\n"
...@@ -116,7 +116,7 @@ msgstr "" ...@@ -116,7 +116,7 @@ msgstr ""
#. * libvlc.h: main libvlc header #. * libvlc.h: main libvlc header
#. ***************************************************************************** #. *****************************************************************************
#. * Copyright (C) 1998-2002 VideoLAN #. * Copyright (C) 1998-2002 VideoLAN
#. * $Id: fr.po,v 1.13 2002/06/01 12:32:01 sam Exp $ #. * $Id: fr.po,v 1.14 2002/06/01 16:45:34 sam Exp $
#. * #. *
#. * Authors: Vincent Seguin <seguin@via.ecp.fr> #. * Authors: Vincent Seguin <seguin@via.ecp.fr>
#. * Samuel Hocevar <sam@zoy.org> #. * Samuel Hocevar <sam@zoy.org>
...@@ -708,12 +708,12 @@ msgid "Playlist" ...@@ -708,12 +708,12 @@ msgid "Playlist"
msgstr "Playlist" msgstr "Playlist"
#. Misc options #. Misc options
#: plugins/a52/a52.c:81 plugins/ac3_adec/ac3_adec.c:72 plugins/dsp/dsp.c:81 #: plugins/a52/a52.c:83 plugins/ac3_adec/ac3_adec.c:72 plugins/dsp/dsp.c:81
#: plugins/dummy/dummy.c:51 plugins/fb/fb.c:70 plugins/filter/deinterlace.c:50 #: plugins/dummy/dummy.c:51 plugins/fb/fb.c:70 plugins/filter/deinterlace.c:50
#: plugins/filter/distort.c:50 plugins/filter/transform.c:51 #: plugins/filter/distort.c:50 plugins/filter/transform.c:51
#: plugins/filter/wall.c:45 plugins/ggi/ggi.c:64 plugins/gtk/gnome.c:73 #: plugins/filter/wall.c:45 plugins/ggi/ggi.c:64 plugins/gtk/gnome.c:73
#: plugins/gtk/gtk.c:71 plugins/mad/mad_adec.c:66 plugins/mga/xmga.c:106 #: plugins/gtk/gtk.c:71 plugins/mad/mad_adec.c:66 plugins/mga/xmga.c:106
#: plugins/mpeg_vdec/video_parser.c:95 plugins/text/logger.c:86 #: plugins/mpeg_vdec/video_parser.c:96 plugins/text/logger.c:86
#: plugins/win32/win32.cpp:48 plugins/x11/x11.c:55 plugins/x11/xvideo.c:65 #: plugins/win32/win32.cpp:48 plugins/x11/x11.c:55 plugins/x11/xvideo.c:65
#: src/libvlc.h:366 #: src/libvlc.h:366
msgid "Miscellaneous" msgid "Miscellaneous"
...@@ -747,18 +747,18 @@ msgstr "afficher le nom et la version du logiciel" ...@@ -747,18 +747,18 @@ msgstr "afficher le nom et la version du logiciel"
msgid "print build information" msgid "print build information"
msgstr "afficher les informations de compilation du logiciel" msgstr "afficher les informations de compilation du logiciel"
#: src/misc/configuration.c:779 #: src/misc/configuration.c:783
msgid "boolean" msgid "boolean"
msgstr "boolen" msgstr "boolen"
#. **************************************************************************** #. ****************************************************************************
#. * Build configuration structure. #. * Build configuration structure.
#. **************************************************************************** #. ****************************************************************************
#: plugins/a52/a52.c:72 #: plugins/a52/a52.c:74
msgid "A/52 dynamic range compression" msgid "A/52 dynamic range compression"
msgstr "" msgstr ""
#: plugins/a52/a52.c:74 #: plugins/a52/a52.c:76
msgid "" msgid ""
"Dynamic range compression makes the loud sounds softer, and the soft sounds " "Dynamic range compression makes the loud sounds softer, and the soft sounds "
"louder, so you can more easily listen to the stream in a noisy environment " "louder, so you can more easily listen to the stream in a noisy environment "
...@@ -766,7 +766,7 @@ msgid "" ...@@ -766,7 +766,7 @@ msgid ""
"playback will be more adapted to a movie theater or a listening room." "playback will be more adapted to a movie theater or a listening room."
msgstr "" msgstr ""
#: plugins/a52/a52.c:86 #: plugins/a52/a52.c:88
msgid "a52 ATSC A/52 aka AC-3 audio decoder module" msgid "a52 ATSC A/52 aka AC-3 audio decoder module"
msgstr "module de dcodage son ATSC A/52 (ou AC-3)" msgstr "module de dcodage son ATSC A/52 (ou AC-3)"
...@@ -822,18 +822,18 @@ msgstr "conversions de I420,IYUV,YV12 vers RGB,RV15,RV16,RV24,RV32" ...@@ -822,18 +822,18 @@ msgstr "conversions de I420,IYUV,YV12 vers RGB,RV15,RV16,RV24,RV32"
msgid "MMX I420,IYUV,YV12 to RV15,RV16,RV24,RV32 conversions" msgid "MMX I420,IYUV,YV12 to RV15,RV16,RV24,RV32 conversions"
msgstr "conversions MMX de I420,IYUV,YV12 vers RV15,RV16,RV24,RV32" msgstr "conversions MMX de I420,IYUV,YV12 vers RV15,RV16,RV24,RV32"
#: plugins/chroma/i420_ymga.c:55 plugins/chroma/i420_yuy2.c:69 #: plugins/chroma/i420_ymga.c:55 plugins/chroma/i420_yuy2.c:74
#: plugins/chroma/i422_yuy2.c:68 #: plugins/chroma/i422_yuy2.c:68
msgid "conversions from " msgid "conversions from "
msgstr "conversions de " msgstr "conversions de "
#: plugins/chroma/i420_ymga.c:55 plugins/chroma/i420_ymga.c:58 #: plugins/chroma/i420_ymga.c:55 plugins/chroma/i420_ymga.c:58
#: plugins/chroma/i420_yuy2.c:69 plugins/chroma/i420_yuy2.c:72 #: plugins/chroma/i420_yuy2.c:74 plugins/chroma/i420_yuy2.c:77
#: plugins/chroma/i422_yuy2.c:68 plugins/chroma/i422_yuy2.c:71 #: plugins/chroma/i422_yuy2.c:68 plugins/chroma/i422_yuy2.c:71
msgid " to " msgid " to "
msgstr " vers " msgstr " vers "
#: plugins/chroma/i420_ymga.c:58 plugins/chroma/i420_yuy2.c:72 #: plugins/chroma/i420_ymga.c:58 plugins/chroma/i420_yuy2.c:77
#: plugins/chroma/i422_yuy2.c:71 #: plugins/chroma/i422_yuy2.c:71
msgid "MMX conversions from " msgid "MMX conversions from "
msgstr "conversions MMX de " msgstr "conversions MMX de "
...@@ -1775,11 +1775,11 @@ msgstr "Chapitre %d" ...@@ -1775,11 +1775,11 @@ msgstr "Chapitre %d"
#. **************************************************************************** #. ****************************************************************************
#. * Build configuration tree. #. * Build configuration tree.
#. **************************************************************************** #. ****************************************************************************
#: plugins/idct/idct.c:47 plugins/mpeg_vdec/video_parser.c:70 #: plugins/idct/idct.c:47 plugins/mpeg_vdec/video_parser.c:71
msgid "IDCT module" msgid "IDCT module"
msgstr "module d'IDCT" msgstr "module d'IDCT"
#: plugins/idct/idctaltivec.c:49 #: plugins/idct/idctaltivec.c:51
msgid "AltiVec IDCT module" msgid "AltiVec IDCT module"
msgstr "module d'IDCT optimis AltiVec" msgstr "module d'IDCT optimis AltiVec"
...@@ -1898,7 +1898,7 @@ msgstr "" ...@@ -1898,7 +1898,7 @@ msgstr ""
msgid "X11 MGA module" msgid "X11 MGA module"
msgstr "module MGA X11" msgstr "module MGA X11"
#: plugins/motion/motion.c:45 plugins/mpeg_vdec/video_parser.c:76 #: plugins/motion/motion.c:45 plugins/mpeg_vdec/video_parser.c:77
msgid "motion compensation module" msgid "motion compensation module"
msgstr "module de compensation de mouvement" msgstr "module de compensation de mouvement"
...@@ -1906,7 +1906,7 @@ msgstr "module de compensation de mouvement" ...@@ -1906,7 +1906,7 @@ msgstr "module de compensation de mouvement"
msgid "3D Now! motion compensation module" msgid "3D Now! motion compensation module"
msgstr "module de compensation de mouvement optimis 3D Now!" msgstr "module de compensation de mouvement optimis 3D Now!"
#: plugins/motion/motionaltivec.c:48 #: plugins/motion/motionaltivec.c:50
msgid "AltiVec motion compensation module" msgid "AltiVec motion compensation module"
msgstr "module de compensation de mouvement optimis AltiVec" msgstr "module de compensation de mouvement optimis AltiVec"
...@@ -1938,7 +1938,7 @@ msgstr "entr ...@@ -1938,7 +1938,7 @@ msgstr "entr
msgid "ISO 13818-1 MPEG Transport Stream input (libdvbpsi)" msgid "ISO 13818-1 MPEG Transport Stream input (libdvbpsi)"
msgstr "entre ISO 13818-1 MPEG Transport Stream (libdvbpsi)" msgstr "entre ISO 13818-1 MPEG Transport Stream (libdvbpsi)"
#: plugins/mpeg_vdec/video_parser.c:72 #: plugins/mpeg_vdec/video_parser.c:73
msgid "" msgid ""
"This option allows you to select the IDCT module used by this video decoder. " "This option allows you to select the IDCT module used by this video decoder. "
"The default behavior is to automatically select the best module available." "The default behavior is to automatically select the best module available."
...@@ -1947,7 +1947,7 @@ msgstr "" ...@@ -1947,7 +1947,7 @@ msgstr ""
"Le comportement par dfaut est de choisir automatiquement le meilleur module " "Le comportement par dfaut est de choisir automatiquement le meilleur module "
"disponible." "disponible."
#: plugins/mpeg_vdec/video_parser.c:78 #: plugins/mpeg_vdec/video_parser.c:79
msgid "" msgid ""
"This option allows you to select the motion compensation module used by this " "This option allows you to select the motion compensation module used by this "
"video decoder. The default behavior is to automatically select the best " "video decoder. The default behavior is to automatically select the best "
...@@ -1957,21 +1957,21 @@ msgstr "" ...@@ -1957,21 +1957,21 @@ msgstr ""
"utilispar ce dcodeur vido. Le comportement par dfaut est de choisir " "utilispar ce dcodeur vido. Le comportement par dfaut est de choisir "
"automatiquement le meilleur module disponible." "automatiquement le meilleur module disponible."
#: plugins/mpeg_vdec/video_parser.c:82 #: plugins/mpeg_vdec/video_parser.c:83
msgid "use additional processors" msgid "use additional processors"
msgstr "utiliser des processeurs supplmentaires" msgstr "utiliser des processeurs supplmentaires"
#: plugins/mpeg_vdec/video_parser.c:84 #: plugins/mpeg_vdec/video_parser.c:85
msgid "" msgid ""
"This video decoder can benefit from a multiprocessor computer. If you have " "This video decoder can benefit from a multiprocessor computer. If you have "
"one, you can specify the number of processors here." "one, you can specify the number of processors here."
msgstr "" msgstr ""
#: plugins/mpeg_vdec/video_parser.c:87 #: plugins/mpeg_vdec/video_parser.c:88
msgid "force synchro algorithm {I|I+|IP|IP+|IPB}" msgid "force synchro algorithm {I|I+|IP|IP+|IPB}"
msgstr "forcer l'algorithme de synchro {I|I+|IP|IP+|IPB}" msgstr "forcer l'algorithme de synchro {I|I+|IP|IP+|IPB}"
#: plugins/mpeg_vdec/video_parser.c:89 #: plugins/mpeg_vdec/video_parser.c:90
msgid "" msgid ""
"This allows you to force the synchro algorithm, by directly selecting the " "This allows you to force the synchro algorithm, by directly selecting the "
"types of picture you want to decode. Please bear in mind that if you select " "types of picture you want to decode. Please bear in mind that if you select "
...@@ -1979,7 +1979,7 @@ msgid "" ...@@ -1979,7 +1979,7 @@ msgid ""
"anything." "anything."
msgstr "" msgstr ""
#: plugins/mpeg_vdec/video_parser.c:106 #: plugins/mpeg_vdec/video_parser.c:107
msgid "MPEG I/II video decoder module" msgid "MPEG I/II video decoder module"
msgstr "module dcodeur vido MPEG I/II" msgstr "module dcodeur vido MPEG I/II"
......
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
* intf_eject.c: CD/DVD-ROM ejection handling functions * intf_eject.c: CD/DVD-ROM ejection handling functions
***************************************************************************** *****************************************************************************
* Copyright (C) 2001, 2002 VideoLAN * Copyright (C) 2001, 2002 VideoLAN
* $Id: intf_eject.c,v 1.13 2002/06/01 12:32:01 sam Exp $ * $Id: intf_eject.c,v 1.14 2002/06/01 16:45:35 sam Exp $
* *
* Author: Julien Blache <jb@technologeek.org> for the Linux part * Author: Julien Blache <jb@technologeek.org> for the Linux part
* with code taken from the Linux "eject" command * with code taken from the Linux "eject" command
...@@ -167,11 +167,9 @@ int intf_Eject( vlc_object_t *p_this, const char *psz_device ) ...@@ -167,11 +167,9 @@ int intf_Eject( vlc_object_t *p_this, const char *psz_device )
/* Win2K ejection code */ /* Win2K ejection code */
if ( GetVersion() < 0x80000000 ) if ( GetVersion() < 0x80000000 )
{ {
intf_WarnMsg (3, "intf: win2k ejecting procedure launched") ;
wsprintf(psz_drive_id, psz_volume_format, psz_device) ; wsprintf(psz_drive_id, psz_volume_format, psz_device) ;
intf_WarnMsg(3, "intf: Ejecting drive %s", psz_drive_id) ; msg_Dbg( p_this, "ejecting drive %s", psz_drive_id );
/* Create the file handle */ /* Create the file handle */
h_drive = CreateFile( psz_drive_id, h_drive = CreateFile( psz_drive_id,
...@@ -184,7 +182,8 @@ int intf_Eject( vlc_object_t *p_this, const char *psz_device ) ...@@ -184,7 +182,8 @@ int intf_Eject( vlc_object_t *p_this, const char *psz_device )
if (h_drive == INVALID_HANDLE_VALUE ) if (h_drive == INVALID_HANDLE_VALUE )
{ {
intf_ErrMsg ("intf error: (Win32) couldn't create handle for device %s", psz_device) ; msg_Err( p_this, "could not create handle for device %s",
psz_device );
} }
i_ret = DeviceIoControl ( h_drive, i_ret = DeviceIoControl ( h_drive,
......
...@@ -4,7 +4,7 @@ ...@@ -4,7 +4,7 @@
* and spawns threads. * and spawns threads.
***************************************************************************** *****************************************************************************
* Copyright (C) 1998-2001 VideoLAN * Copyright (C) 1998-2001 VideoLAN
* $Id: libvlc.c,v 1.2 2002/06/01 14:31:32 sam Exp $ * $Id: libvlc.c,v 1.3 2002/06/01 16:45:34 sam Exp $
* *
* Authors: Vincent Seguin <seguin@via.ecp.fr> * Authors: Vincent Seguin <seguin@via.ecp.fr>
* Samuel Hocevar <sam@zoy.org> * Samuel Hocevar <sam@zoy.org>
...@@ -103,9 +103,11 @@ static void ListModules ( vlc_object_t * ); ...@@ -103,9 +103,11 @@ static void ListModules ( vlc_object_t * );
static void Version ( void ); static void Version ( void );
static void Build ( void ); static void Build ( void );
#ifndef WIN32
static void InitSignalHandler ( void ); static void InitSignalHandler ( void );
static void SimpleSignalHandler ( int i_signal ); static void SimpleSignalHandler ( int i_signal );
static void FatalSignalHandler ( int i_signal ); static void FatalSignalHandler ( int i_signal );
#endif
#ifdef WIN32 #ifdef WIN32
static void ShowConsole ( void ); static void ShowConsole ( void );
...@@ -144,7 +146,9 @@ vlc_t * vlc_create( void ) ...@@ -144,7 +146,9 @@ vlc_t * vlc_create( void )
vlc_mutex_init( p_vlc->p_this, &p_vlc->structure_lock ); vlc_mutex_init( p_vlc->p_this, &p_vlc->structure_lock );
/* Set signal handling policy for all threads */ /* Set signal handling policy for all threads */
#ifndef WIN32
InitSignalHandler( ); InitSignalHandler( );
#endif
/* Store our newly allocated structure in the global list */ /* Store our newly allocated structure in the global list */
vlc_mutex_lock( p_vlc->p_global_lock ); vlc_mutex_lock( p_vlc->p_global_lock );
...@@ -1082,6 +1086,7 @@ static void ShowConsole( void ) ...@@ -1082,6 +1086,7 @@ static void ShowConsole( void )
} }
#endif #endif
#ifndef WIN32
/***************************************************************************** /*****************************************************************************
* InitSignalHandler: system signal handler initialization * InitSignalHandler: system signal handler initialization
***************************************************************************** *****************************************************************************
...@@ -1091,7 +1096,6 @@ static void ShowConsole( void ) ...@@ -1091,7 +1096,6 @@ static void ShowConsole( void )
*****************************************************************************/ *****************************************************************************/
static void InitSignalHandler( void ) static void InitSignalHandler( void )
{ {
#ifndef WIN32
/* Termination signals */ /* Termination signals */
signal( SIGINT, FatalSignalHandler ); signal( SIGINT, FatalSignalHandler );
signal( SIGHUP, FatalSignalHandler ); signal( SIGHUP, FatalSignalHandler );
...@@ -1100,7 +1104,6 @@ static void InitSignalHandler( void ) ...@@ -1100,7 +1104,6 @@ static void InitSignalHandler( void )
/* Other signals */ /* Other signals */
signal( SIGALRM, SimpleSignalHandler ); signal( SIGALRM, SimpleSignalHandler );
signal( SIGPIPE, SimpleSignalHandler ); signal( SIGPIPE, SimpleSignalHandler );
#endif
} }
/***************************************************************************** /*****************************************************************************
...@@ -1156,11 +1159,9 @@ static void FatalSignalHandler( int i_signal ) ...@@ -1156,11 +1159,9 @@ static void FatalSignalHandler( int i_signal )
else if( mdate() > abort_time + 1000000 ) else if( mdate() > abort_time + 1000000 )
{ {
/* If user asks again 1 second later, die badly */ /* If user asks again 1 second later, die badly */
#ifndef WIN32
signal( SIGINT, SIG_IGN ); signal( SIGINT, SIG_IGN );
signal( SIGHUP, SIG_IGN ); signal( SIGHUP, SIG_IGN );
signal( SIGQUIT, SIG_IGN ); signal( SIGQUIT, SIG_IGN );
#endif
for( i_index = 0 ; i_index < i_vlc ; i_index++ ) for( i_index = 0 ; i_index < i_vlc ; i_index++ )
{ {
...@@ -1173,4 +1174,5 @@ static void FatalSignalHandler( int i_signal ) ...@@ -1173,4 +1174,5 @@ static void FatalSignalHandler( int i_signal )
vlc_mutex_unlock( &global_lock ); vlc_mutex_unlock( &global_lock );
} }
#endif
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
* modules_plugin.h : Plugin management functions used by the core application. * modules_plugin.h : Plugin management functions used by the core application.
***************************************************************************** *****************************************************************************
* Copyright (C) 2001 VideoLAN * Copyright (C) 2001 VideoLAN
* $Id: modules_plugin.h,v 1.28 2002/06/01 12:32:01 sam Exp $ * $Id: modules_plugin.h,v 1.29 2002/06/01 16:45:35 sam Exp $
* *
* Authors: Samuel Hocevar <sam@zoy.org> * Authors: Samuel Hocevar <sam@zoy.org>
* *
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
* threads.c : threads implementation for the VideoLAN client * threads.c : threads implementation for the VideoLAN client
***************************************************************************** *****************************************************************************
* Copyright (C) 1999, 2000, 2001, 2002 VideoLAN * Copyright (C) 1999, 2000, 2001, 2002 VideoLAN
* $Id: threads.c,v 1.2 2002/06/01 14:31:32 sam Exp $ * $Id: threads.c,v 1.3 2002/06/01 16:45:35 sam Exp $
* *
* Authors: Jean-Marc Dressler <polux@via.ecp.fr> * Authors: Jean-Marc Dressler <polux@via.ecp.fr>
* Samuel Hocevar <sam@zoy.org> * Samuel Hocevar <sam@zoy.org>
...@@ -155,7 +155,6 @@ int vlc_threads_end( void ) ...@@ -155,7 +155,6 @@ int vlc_threads_end( void )
#endif #endif
} }
static int mutexes = 0;
/***************************************************************************** /*****************************************************************************
* vlc_mutex_init: initialize a mutex * vlc_mutex_init: initialize a mutex
*****************************************************************************/ *****************************************************************************/
...@@ -402,12 +401,15 @@ int __vlc_thread_create( vlc_object_t *p_this, char * psz_file, int i_line, ...@@ -402,12 +401,15 @@ int __vlc_thread_create( vlc_object_t *p_this, char * psz_file, int i_line,
i_ret = 0; i_ret = 0;
#elif defined( WIN32 ) #elif defined( WIN32 )
{
unsigned threadID; unsigned threadID;
/* When using the MSVCRT C library you have to use the _beginthreadex /* When using the MSVCRT C library you have to use the _beginthreadex
* function instead of CreateThread, otherwise you'll end up with memory * function instead of CreateThread, otherwise you'll end up with memory
* leaks and the signal functions not working */ * leaks and the signal functions not working */
p_this->thread_id = (HANDLE)_beginthreadex( NULL, 0, (PTHREAD_START) func, p_this->thread_id =
(HANDLE)_beginthreadex( NULL, 0, (PTHREAD_START) func,
(void *)p_this, 0, &threadID ); (void *)p_this, 0, &threadID );
}
i_ret = ( p_this->thread_id ? 0 : 1 ); i_ret = ( p_this->thread_id ? 0 : 1 );
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
* win32_specific.c: Win32 specific features * win32_specific.c: Win32 specific features
***************************************************************************** *****************************************************************************
* Copyright (C) 2001 VideoLAN * Copyright (C) 2001 VideoLAN
* $Id: win32_specific.c,v 1.9 2002/06/01 14:31:32 sam Exp $ * $Id: win32_specific.c,v 1.10 2002/06/01 16:45:35 sam Exp $
* *
* Authors: Samuel Hocevar <sam@zoy.org> * Authors: Samuel Hocevar <sam@zoy.org>
* Gildas Bazin <gbazin@netcourrier.com> * Gildas Bazin <gbazin@netcourrier.com>
...@@ -66,7 +66,7 @@ void system_Configure( vlc_object_t *p_this ) ...@@ -66,7 +66,7 @@ void system_Configure( vlc_object_t *p_this )
/***************************************************************************** /*****************************************************************************
* system_End: terminate winsock. * system_End: terminate winsock.
*****************************************************************************/ *****************************************************************************/
void system_End( vlc_object_t * ) void system_End( vlc_object_t *p_this )
{ {
WSACleanup(); WSACleanup();
} }
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment