VLCKit/VLCMedia.m: Fix the compare: function.
authorPierre d'Herbemont <pdherbemont@videolan.org>
Fri, 1 Feb 2008 18:58:26 +0000 (18:58 +0000)
committerPierre d'Herbemont <pdherbemont@videolan.org>
Fri, 1 Feb 2008 18:58:26 +0000 (18:58 +0000)
extras/MacOSX/Framework/Sources/VLCMedia.m

index 5eb8d28..0cb5819 100644 (file)
@@ -132,6 +132,7 @@ static void HandleMediaMetaChanged(const libvlc_event_t * event, void * self)
 static void HandleMediaStateChanged(const libvlc_event_t * event, void * self)
 {
     NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
+    
     [[VLCEventManager sharedManager] callOnMainThreadObject:self
                                                  withMethod:@selector(setStateAsNumber:)
                                        withArgumentAsObject:[NSNumber numberWithInt:
@@ -263,14 +264,11 @@ static void HandleMediaSubItemAdded(const libvlc_event_t * event, void * self)
 
 - (NSComparisonResult)compare:(VLCMedia *)media
 {
-    libvlc_media_descriptor_t * anOtherMd = [media libVLCMediaDescriptor];
-    /* We can release, we'll just use ptr */
-    libvlc_media_descriptor_release(anOtherMd);
-    if (self == media || p_md == anOtherMd)
+    if (self == media)
         return NSOrderedSame;
-    else if (!media)
+    if (!media)
         return NSOrderedDescending;
-    return NSOrderedAscending;
+    return p_md == [media libVLCMediaDescriptor] ? NSOrderedSame : NSOrderedAscending;
 }
 
 @synthesize delegate;