]> git.sesse.net Git - vlc/blobdiff - projects/macosx/framework/Sources/VLCMediaList.m
use NSAutoreleasePool::drain instead of NSAutoreleasePool::release since VLCKit ist...
[vlc] / projects / macosx / framework / Sources / VLCMediaList.m
index 7d0443602a7641b3a791b90cd603763fd6d98b94..847ad44bdf745ab51841d2782badeab5413069d5 100644 (file)
@@ -58,7 +58,7 @@ static void HandleMediaListItemAdded(const libvlc_event_t * event, void * user_d
                                                           [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)
@@ -68,7 +68,7 @@ static void HandleMediaListItemDeleted( const libvlc_event_t * event, void * use
     [[VLCEventManager sharedManager] callOnMainThreadObject:self
                                                  withMethod:@selector(mediaListItemRemoved:)
                                        withArgumentAsObject:[NSNumber numberWithInt:event->u.media_list_item_deleted.index]];
-    [pool release];
+    [pool drain];
 }
 
 @implementation VLCMediaList
@@ -86,6 +86,17 @@ static void HandleMediaListItemDeleted( const libvlc_event_t * event, void * use
     return self;
 }
 
+- (id)initWithArray:(NSArray *)array
+{
+    self = [self init];
+    if (!self)
+        return nil;
+
+    for (VLCMedia *media in array)
+        [self addMedia:media];
+    return self;
+}
+
 - (void)release
 {
     @synchronized(self)