withObject:dataMessage
waitUntilDone: YES];
- [pool release];
+ [pool drain];
}
return nil;
}
pthread_mutex_unlock( [self queueLock] );
}
- [pool release];
+ [pool drain];
}
- (void)callOnMainThreadObject:(id)aTarget withMethod:(SEL)aSelector withArgumentAsObject: (id)arg
pthread_cond_signal( [self signalData] );
pthread_mutex_unlock( [self queueLock] );
- [pool release];
+ [pool drain];
}
@end
[[VLCEventManager sharedManager] callOnMainThreadObject:self
withMethod:@selector(metaChanged:)
withArgumentAsObject:[VLCMedia metaTypeToString:event->u.media_meta_changed.meta_type]];
- [pool release];
+ [pool drain];
}
static void HandleMediaDurationChanged(const libvlc_event_t * event, void * self)
withMethod:@selector(setLength:)
withArgumentAsObject:[VLCTime timeWithNumber:
[NSNumber numberWithLongLong:event->u.media_duration_changed.new_duration]]];
- [pool release];
+ [pool drain];
}
static void HandleMediaStateChanged(const libvlc_event_t * event, void * self)
withMethod:@selector(setStateAsNumber:)
withArgumentAsObject:[NSNumber numberWithInt:
LibVLCStateToMediaState(event->u.media_state_changed.new_state)]];
- [pool release];
+ [pool drain];
}
static void HandleMediaSubItemAdded(const libvlc_event_t * event, void * self)
[[VLCEventManager sharedManager] callOnMainThreadObject:self
withMethod:@selector(subItemAdded)
withArgumentAsObject:nil];
- [pool release];
+ [pool drain];
}
/******************************************************************************
[[VLCEventManager sharedManager] callOnMainThreadObject:self
withMethod:@selector(mediaDiscovererStarted)
withArgumentAsObject:nil];
- [pool release];
+ [pool drain];
}
static void HandleMediaDiscovererEnded( const libvlc_event_t * event, void * user_data)
[[VLCEventManager sharedManager] callOnMainThreadObject:self
withMethod:@selector(mediaDiscovererEnded)
withArgumentAsObject:nil];
- [pool release];
+ [pool drain];
}
[VLCMedia mediaWithLibVLCMediaDescriptor:event->u.media_list_item_added.item], @"media",
[NSNumber numberWithInt:event->u.media_list_item_added.index], @"index",
nil]]];
- [pool release];
+ [pool drain];
}
static void HandleMediaListItemDeleted( const libvlc_event_t * event, void * user_data)
[[VLCEventManager sharedManager] callOnMainThreadObject:self
withMethod:@selector(mediaListItemRemoved:)
withArgumentAsObject:[NSNumber numberWithInt:event->u.media_list_item_deleted.index]];
- [pool release];
+ [pool drain];
}
@implementation VLCMediaList
[[VLCEventManager sharedManager] callOnMainThreadDelegateOfObject:self
withDelegateMethod:@selector(mediaPlayerTimeChanged:)
withNotificationName:VLCMediaPlayerTimeChanged];
- [pool release];
+ [pool drain];
}
static void HandleMediaPositionChanged(const libvlc_event_t * event, void * self)
[[VLCEventManager sharedManager] callOnMainThreadObject:self
withMethod:@selector(mediaPlayerPositionChanged:)
withArgumentAsObject:[NSNumber numberWithFloat:event->u.media_player_position_changed.new_position]];
- [pool release];
+ [pool drain];
}
static void HandleMediaInstanceStateChanged(const libvlc_event_t * event, void * self)
withDelegateMethod:@selector(mediaPlayerStateChanged:)
withNotificationName:VLCMediaPlayerStateChanged];
- [pool release];
+ [pool drain];
}
withMethod:@selector(mediaPlayerMediaChanged:)
withArgumentAsObject:[VLCMedia mediaWithLibVLCMediaDescriptor:event->u.media_player_media_changed.new_media]];
- [pool release];
+ [pool drain];
}