Changeset 4dc02f7b5a9753b4b3fb72189ed302cceb96646c

Show
Ignore:
Timestamp:
04/23/08 21:24:45 (2 months ago)
Author:
Rémi Denis-Courmont <rem@videolan.org>
git-committer:
Rémi Denis-Courmont <rem@videolan.org> 1208978685 +0300
git-parent:

[6ed74223505b91d3ebed2f42fea6ccbcfc776622]

git-author:
Rémi Denis-Courmont <rem@videolan.org> 1208978685 +0300
Message:

Win32: Simplify mutex

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • include/vlc_threads.h

    r6ed7422 r4dc02f7  
    129129typedef BOOL (WINAPI *SIGNALOBJECTANDWAIT) ( HANDLE, HANDLE, DWORD, BOOL ); 
    130130 
    131 typedef struct 
    132 
    133     HANDLE              mutex; 
    134 } vlc_mutex_t; 
     131typedef HANDLE  vlc_mutex_t; 
    135132 
    136133typedef struct 
  • include/vlc_threads_funcs.h

    r6ed7422 r4dc02f7  
    102102    VLC_UNUSED( psz_file); VLC_UNUSED( i_line ); 
    103103 
    104     WaitForSingleObject( p_mutex->mutex, INFINITE ); 
     104    WaitForSingleObject( *p_mutex, INFINITE ); 
    105105 
    106106#elif defined( HAVE_KERNEL_SCHEDULER_H ) 
     
    137137    VLC_UNUSED( psz_file); VLC_UNUSED( i_line ); 
    138138 
    139     ReleaseMutex( p_mutex->mutex ); 
     139    ReleaseMutex( *p_mutex ); 
    140140 
    141141#elif defined( HAVE_KERNEL_SCHEDULER_H ) 
     
    233233    /* Increase our wait count */ 
    234234    p_condvar->i_waiting_threads++; 
    235     SignalObjectAndWait( p_mutex->mutex, p_condvar->event, INFINITE, FALSE ); 
     235    SignalObjectAndWait( *p_mutex, p_condvar->event, INFINITE, FALSE ); 
    236236    p_condvar->i_waiting_threads--; 
    237237 
     
    300300    /* Increase our wait count */ 
    301301    p_condvar->i_waiting_threads++; 
    302     result = SignalObjectAndWait( p_mutex->mutex, p_condvar->event, 
     302    result = SignalObjectAndWait( *p_mutex, p_condvar->event, 
    303303                                  delay_ms, FALSE ); 
    304304    p_condvar->i_waiting_threads--; 
  • src/misc/threads.c

    r6ed7422 r4dc02f7  
    230230 
    231231#elif defined( WIN32 ) 
    232     p_mutex->mutex = CreateMutex( 0, FALSE, 0 ); 
    233     return ( p_mutex->mutex != NULL ? 0 : 1 )
     232    *p_mutex = CreateMutex( 0, FALSE, 0 ); 
     233    return (*p_mutex != NULL) ? 0 : ENOMEM
    234234 
    235235#elif defined( HAVE_KERNEL_SCHEDULER_H ) 
     
    281281#if defined( WIN32 ) 
    282282    /* Create mutex returns a recursive mutex */ 
    283     p_mutex->mutex = CreateMutex( 0, FALSE, 0 ); 
    284     return ( p_mutex->mutex != NULL ? 0 : 1 )
     283    *p_mutex = CreateMutex( 0, FALSE, 0 ); 
     284    return (*p_mutex != NULL) ? 0 : ENOMEM
    285285#elif defined( LIBVLC_USE_PTHREAD ) 
    286286    pthread_mutexattr_t attr; 
     
    319319    VLC_UNUSED( psz_file); VLC_UNUSED( i_line ); 
    320320 
    321     CloseHandle( p_mutex->mutex ); 
     321    CloseHandle( *p_mutex ); 
    322322 
    323323#elif defined( HAVE_KERNEL_SCHEDULER_H ) 
     
    418418#if defined( HAVE_KERNEL_SCHEDULER_H ) 
    419419# error Unimplemented! 
    420 #elif defined( UNDER_CE ) || defined( WIN32 ) 
     420#elif defined( UNDER_CE ) 
    421421#elif defined( WIN32 ) 
    422422    *p_tls = TlsAlloc();