Changeset 45f5d65544760ed4147bfad8cda66b29da39207f
- Timestamp:
- 29/02/08 20:09:17
(7 months ago)
- Author:
- Pierre d'Herbemont <pdherbemont@videolan.org>
- git-committer:
- Pierre d'Herbemont <pdherbemont@videolan.org> 1204312157 +0000
- git-parent:
[478c793817a11dab66c865e322555517bacd3fd4]
- git-author:
- Pierre d'Herbemont <pdherbemont@videolan.org> 1204312157 +0000
- Message:
control/event.c: Remove libvlc_event_detach_lock_state().
-
Files:
-
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
| r5411dce |
r45f5d65 |
|
| 346 | 346 | **************************************************************************/ |
|---|
| 347 | 347 | void libvlc_event_detach( libvlc_event_manager_t *p_event_manager, |
|---|
| 348 | | libvlc_event_type_t event_type, |
|---|
| 349 | | libvlc_callback_t pf_callback, |
|---|
| 350 | | void *p_user_data, |
|---|
| 351 | | libvlc_exception_t *p_e ) |
|---|
| 352 | | { |
|---|
| 353 | | libvlc_event_detach_lock_state( p_event_manager, event_type, pf_callback, |
|---|
| 354 | | p_user_data, libvlc_UnLocked, p_e ); |
|---|
| 355 | | } |
|---|
| 356 | | |
|---|
| 357 | | /************************************************************************** |
|---|
| 358 | | * libvlc_event_detach_no_lock (internal) : |
|---|
| 359 | | * |
|---|
| 360 | | * Remove a callback for an event. |
|---|
| 361 | | **************************************************************************/ |
|---|
| 362 | | void libvlc_event_detach_lock_state( libvlc_event_manager_t *p_event_manager, |
|---|
| 363 | 348 | libvlc_event_type_t event_type, |
|---|
| 364 | 349 | libvlc_callback_t pf_callback, |
|---|
| 365 | 350 | void *p_user_data, |
|---|
| 366 | | libvlc_lock_state_t lockstate, |
|---|
| 367 | 351 | libvlc_exception_t *p_e ) |
|---|
| 368 | 352 | { |
|---|
| … | … | |
| 371 | 355 | int i, j; |
|---|
| 372 | 356 | |
|---|
| 373 | | if( lockstate == libvlc_UnLocked ) |
|---|
| 374 | | vlc_mutex_lock( &p_event_manager->event_sending_lock ); |
|---|
| | 357 | vlc_mutex_lock( &p_event_manager->event_sending_lock ); |
|---|
| 375 | 358 | vlc_mutex_lock( &p_event_manager->object_lock ); |
|---|
| 376 | 359 | for( i = 0; i < vlc_array_count(&p_event_manager->listeners_groups); i++) |
|---|
| … | … | |
| 387 | 370 | { |
|---|
| 388 | 371 | /* that's our listener */ |
|---|
| | 372 | |
|---|
| | 373 | /* Mark this group as edited so that libvlc_event_send |
|---|
| | 374 | * will recheck what listener to call */ |
|---|
| | 375 | listeners_group->b_sublistener_removed = VLC_FALSE; |
|---|
| | 376 | |
|---|
| 389 | 377 | free( listener ); |
|---|
| 390 | 378 | vlc_array_remove( &listeners_group->listeners, j ); |
|---|
| 391 | 379 | vlc_mutex_unlock( &p_event_manager->object_lock ); |
|---|
| 392 | | if( lockstate == libvlc_UnLocked ) |
|---|
| 393 | | vlc_mutex_unlock( &p_event_manager->event_sending_lock ); |
|---|
| | 380 | vlc_mutex_unlock( &p_event_manager->event_sending_lock ); |
|---|
| 394 | 381 | return; |
|---|
| 395 | 382 | } |
|---|
| … | … | |
| 398 | 385 | } |
|---|
| 399 | 386 | vlc_mutex_unlock( &p_event_manager->object_lock ); |
|---|
| 400 | | if( lockstate == libvlc_UnLocked ) |
|---|
| 401 | | vlc_mutex_unlock( &p_event_manager->event_sending_lock ); |
|---|
| | 387 | vlc_mutex_unlock( &p_event_manager->event_sending_lock ); |
|---|
| 402 | 388 | |
|---|
| 403 | 389 | libvlc_exception_raise( p_e, |
|---|
| r3a90c05 |
r45f5d65 |
|
| 359 | 359 | |
|---|
| 360 | 360 | VLC_EXPORT (void, libvlc_event_manager_register_event_type, ( libvlc_event_manager_t * p_em, libvlc_event_type_t event_type, libvlc_exception_t * p_e ) ); |
|---|
| 361 | | VLC_EXPORT (void, libvlc_event_detach_lock_state, ( libvlc_event_manager_t *p_event_manager, libvlc_event_type_t event_type, libvlc_callback_t pf_callback, |
|---|
| 362 | | void *p_user_data, libvlc_lock_state_t lockstate, libvlc_exception_t *p_e ) ); |
|---|
| 363 | 361 | |
|---|
| 364 | 362 | VLC_EXPORT (void, libvlc_event_send, ( libvlc_event_manager_t * p_em, libvlc_event_t * p_event ) ); |
|---|