]> git.sesse.net Git - vlc/commitdiff
macosx gui: fix a playlist object leak and use pl_release.
authorRémi Duraffort <ivoire@videolan.org>
Wed, 1 Apr 2009 18:06:29 +0000 (20:06 +0200)
committerRémi Duraffort <ivoire@videolan.org>
Wed, 1 Apr 2009 18:06:29 +0000 (20:06 +0200)
modules/gui/macosx/controls.m
modules/gui/macosx/embeddedwindow.m
modules/gui/macosx/extended.m
modules/gui/macosx/playlist.m
modules/gui/macosx/wizard.m

index b2a0e5f89fa9304a83b09b1d6f60a6e6925b7e58..c6b9f6778a809f9f5dd73dcea324252fd531f2ad 100644 (file)
 
     p_intf->p_sys->b_playmode_update = true;
     p_intf->p_sys->b_intf_update = true;
-    vlc_object_release( p_playlist );
+    pl_Release( p_intf );
 }
 
 /* three little ugly helpers */
     playlist_t *p_playlist = pl_Hold( VLCIntf );
     var_Get( p_playlist, "random", &val );
     [o_btn_shuffle setState: val.b_bool];
-    vlc_object_release( p_playlist );
+    pl_Release( VLCIntf );
 }
 
 - (IBAction)repeatButtonAction:(id)sender
     p_intf->p_sys->b_playmode_update = true;
     p_intf->p_sys->b_intf_update = true;
 
-    vlc_object_release( p_playlist );
+    pl_Release( p_intf );
 }
 
 
  
     p_intf->p_sys->b_playmode_update = true;
     p_intf->p_sys->b_intf_update = true;
-    vlc_object_release( p_playlist );
+    pl_Release( p_intf );
 }
 
 - (IBAction)loop:(id)sender
 
     p_intf->p_sys->b_playmode_update = true;
     p_intf->p_sys->b_intf_update = true;
-    vlc_object_release( p_playlist );
+    pl_Release( p_intf );
 }
 
 - (IBAction)forward:(id)sender
     }
 
     if( p_input ) vlc_object_release( p_input );
-    vlc_object_release( p_playlist );
+    pl_Release( p_intf );
 
     return( bEnabled );
 }
index 9ee0397234c998221379ffdacf600552bad3a984..0c92c35b71448bf274886d206e74e199845191ab 100644 (file)
     playlist_t * p_playlist = pl_Hold( VLCIntf );
 
     playlist_Stop( p_playlist );
-    vlc_object_release( p_playlist );
+    pl_Release( VLCIntf );
     return YES;
 }
 
index 377c9490f568fd1ceee1905fd0363088660fdd50..9663f4f45d117d898e73f45b7e7c9bceae87574b 100644 (file)
@@ -435,7 +435,7 @@ static VLCExtended *_o_sharedInstance = nil;
     /* store to prefs */
     config_PutFloat( p_playlist , "macosx-opaqueness" , val.f_float );
 
-    vlc_object_release( p_playlist );
+    pl_Release( VLCIntf );
 
     o_config_changed = YES;
 }
@@ -784,7 +784,7 @@ static VLCExtended *_o_sharedInstance = nil;
             "extended control attribute '%s' (%i)",
             [[theModules objectAtIndex: x] UTF8String] , returnedValue);
             [theModules release];
-            vlc_object_release( p_playlist );
+            pl_Release( VLCIntf );
  
             return;
         }
@@ -795,6 +795,6 @@ static VLCExtended *_o_sharedInstance = nil;
     msg_Dbg( VLCIntf, "VLCExtended: saved certain preferences successfully" );
  
     [theModules release];
-    vlc_object_release( p_playlist );
+    pl_Release( VLCIntf );
 }
 @end
index 393fabea0c161c0b44f096effa5e5937414d8132..89216a831ee1ffba68141bb5384d1fb75c189863 100644 (file)
     [o_outline_view setAllowsEmptySelection: NO];
     [o_outline_view expandItem: [o_outline_view itemAtRow:0]];
 
-    vlc_object_release( p_playlist );
+    pl_Release( VLCIntf );
     [self initStrings];
 }
 
         p_return = p_item->pp_children[index];
     PL_UNLOCK;
 
-    vlc_object_release( p_playlist );
+    pl_Release( VLCIntf );
 
     o_value = [o_outline_dict objectForKey:[NSString stringWithFormat: @"%p", p_return]];
 
     char ** ppsz_services = vlc_sd_GetNames( &ppsz_name );
     if( !ppsz_services )
     {
-        vlc_object_release( p_playlist );
+        pl_Release( VLCIntf );
         return;
     }
     
     free( ppsz_services );
     free( ppsz_name );
 
-    vlc_object_release( p_playlist );
+    pl_Release( VLCIntf );
 }
 
 - (void)searchfieldChanged:(NSNotification *)o_notification
             [o_status_field setStringValue: _NS("1 item")];
     }
     PL_UNLOCK;
-    vlc_object_release( p_playlist );
+    pl_Release( VLCIntf );
 
     [self outlineViewSelectionDidChange: nil];
 }
 
     [[[VLCMain sharedInstance] getControls] shuffle];
 
-    vlc_object_release( p_playlist );
+    pl_Release( VLCIntf );
 }
 
 - (void)outlineViewSelectionDidChange:(NSNotification *)notification
 
     if( p_node == p_item )
     {
-        vlc_object_release(p_playlist);
+        pl_Release( VLCIntf );
         return YES;
     }
 
     if( p_node->i_children < 1)
     {
-        vlc_object_release(p_playlist);
+        pl_Release( VLCIntf );
         return NO;
     }
 
                 else if ( i == p_playlist->all_items.i_size - 1 )
                 {
                     if(!b_locked) PL_UNLOCK;
-                    vlc_object_release( p_playlist );
+                    pl_Release( VLCIntf );
                     return NO;
                 }
             }
             if( p_temp_item == p_node )
             {
                 if(!b_locked) PL_UNLOCK;
-                vlc_object_release( p_playlist );
+                pl_Release( VLCIntf );
                 return YES;
             }
         }
         if(!b_locked) PL_UNLOCK;
     }
 
-    vlc_object_release( p_playlist );
+    pl_Release( VLCIntf );
     return NO;
 }
 
                 p_playlist->p_local_category, "export-m3u" );
         }
     }
-    vlc_object_release( p_playlist );
+    pl_Release( VLCIntf );
 }
 
 /* When called retrieves the selected outlineview row and plays that node or item */
         }
         playlist_Control( p_playlist, PLAYLIST_VIEWPLAY, pl_Unlocked, p_node, p_item );
     }
-    vlc_object_release( p_playlist );
+    pl_Release( p_intf );
 }
 
 - (IBAction)revealItemInFinder:(id)sender
             }
         }
     }
-    vlc_object_release( p_playlist );
+    pl_Release( p_intf );
     [self playlistUpdated];
 }
 
             playlist_AskForArtEnqueue( p_playlist, p_item->p_input, pl_Unlocked );
         }
     }
-    vlc_object_release( p_playlist );
+    pl_Release( p_intf );
     [self playlistUpdated];
 }
 
     [o_mi setState: playlist_IsServicesDiscoveryLoaded( p_playlist,
                                           [o_string UTF8String] ) ? YES : NO];
 
-    vlc_object_release( p_playlist );
+    pl_Release( VLCIntf );
     [self playlistUpdated];
     return;
 }
     PL_UNLOCK;
 
     [self playlistUpdated];
-    vlc_object_release( p_playlist );
+    pl_Release( p_intf );
 }
 
 - (IBAction)sortNodeByName:(id)sender
                 p_item->p_parent, i_mode, ORDER_NORMAL );
         PL_UNLOCK;
     }
-    vlc_object_release( p_playlist );
+    pl_Release( VLCIntf );
     [self playlistUpdated];
 }
 
 
     p_input = input_item_New( p_playlist, [o_uri fileSystemRepresentation], [o_name UTF8String] );
     if( !p_input )
-       return NULL;
+    {
+        pl_Release( p_intf );
+        return NULL;
+    }
 
     if( o_options )
     {
             noteNewRecentDocumentURL: o_true_file];
     }
 
-    vlc_object_release( p_playlist );
+    pl_Release( p_intf );
     return p_input;
 }
 
     PL_UNLOCK;
 
     [self playlistUpdated];
-    vlc_object_release( p_playlist );
+    pl_Release( VLCIntf );
 }
 
 - (void)appendNodeArray:(NSArray*)o_array inNode:(playlist_item_t *)p_node atPos:(int)i_position enqueue:(BOOL)b_enqueue
         vlc_gc_decref( p_input );
     }
     [self playlistUpdated];
-    vlc_object_release( p_playlist );
+    pl_Release( VLCIntf );
 }
 
 - (NSMutableArray *)subSearchItem:(playlist_item_t *)p_item
         else if( p_selected_item == p_item->pp_children[i_current] &&
                     b_selected_item_met == YES )
         {
-            vlc_object_release( p_playlist );
+            pl_Release( VLCIntf );
             return NULL;
         }
         else if( b_selected_item_met == YES &&
                       [o_current_author rangeOfString:[o_search_field
                         stringValue] options:NSCaseInsensitiveSearch].length ) )
         {
-            vlc_object_release( p_playlist );
+            pl_Release( VLCIntf );
             /*Adds the parent items in the result array as well, so that we can
             expand the tree*/
             return [NSMutableArray arrayWithObject: [NSValue
                                             p_item->pp_children[i_current]];
             if( o_result != NULL )
             {
-                vlc_object_release( p_playlist );
+                pl_Release( VLCIntf );
                 [o_result insertObject: [NSValue valueWithPointer:
                                 p_item->pp_children[i_current]] atIndex:0];
                 return o_result;
             }
         }
     }
-    vlc_object_release( p_playlist );
+    pl_Release( VLCIntf );
     return NULL;
 }
 
         [o_outline_view selectRow:i_row byExtendingSelection: NO];
         [o_outline_view scrollRowToVisible: i_row];
     }
-    vlc_object_release( p_playlist );
+    pl_Release( VLCIntf );
 }
 
 - (IBAction)recursiveExpandNode:(id)sender
        sortable table column*/
     if( !( o_tc == o_tc_name || o_tc == o_tc_author ) )
     {
-        vlc_object_release( p_playlist );
+        pl_Release( p_intf );
         return;
     }
 
     playlist_RecursiveNodeSort( p_playlist, p_playlist->p_root_category, i_mode, i_type );
     PL_UNLOCK;
 
-    vlc_object_release( p_playlist );
+    pl_Release( p_intf );
     [self playlistUpdated];
 
     o_tc_sortColumn = o_tc;
     {
         [cell setFont: [[NSFontManager sharedFontManager] convertFont:[cell font] toNotHaveTrait:NSBoldFontMask]];
     }
-    vlc_object_release( p_playlist );
+    pl_Release( VLCIntf );
 }
 
 - (IBAction)addNode:(id)sender
     }
     PL_UNLOCK;
 
-    vlc_object_release( p_playlist );
+    pl_Release( VLCIntf );
 
     [o_outline_dict setObject:o_value forKey:[NSString stringWithFormat:@"%p",
                                                     [o_value pointerValue]]];
             [o_item pointerValue] == p_playlist->p_local_category ||
             [o_item pointerValue] == p_playlist->p_ml_category )
         {
-            vlc_object_release(p_playlist);
+            pl_Release( VLCIntf );
             return NO;
         }
         /* Fill the items and nodes to move in 2 different arrays */
         @"VLCPlaylistItemPboardType", nil] owner: self];
     [pboard setData:[NSData data] forType:@"VLCPlaylistItemPboardType"];
 
-    vlc_object_release(p_playlist);
+    pl_Release( VLCIntf );
     return YES;
 }
 
         if( index == NSOutlineViewDropOnItemIndex &&
                 ((playlist_item_t *)[item pointerValue])->i_children == -1 )
         {
-            vlc_object_release( p_playlist );
+            pl_Release( VLCIntf );
             return NSDragOperationNone;
         }
     }
     /* Don't allow on drop on playlist root element's child */
     if( !item && index != NSOutlineViewDropOnItemIndex)
     {
-        vlc_object_release( p_playlist );
+        pl_Release( VLCIntf );
         return NSDragOperationNone;
     }
 
     if( !( ([self isItem: [item pointerValue] inNode: p_playlist->p_local_category checkItemExistence: NO] || 
         ( var_CreateGetBool( p_playlist, "media-library" ) && [self isItem: [item pointerValue] inNode: p_playlist->p_ml_category checkItemExistence: NO] ) ) || item == nil ) )
     {
-        vlc_object_release( p_playlist );
+        pl_Release( VLCIntf );
         return NSDragOperationNone;
     }
 
                     [[o_nodes_array objectAtIndex: i] pointerValue]
                     checkItemExistence: NO] )
             {
-                vlc_object_release( p_playlist );
+                pl_Release( VLCIntf );
                 return NSDragOperationNone;
             }
         }
-        vlc_object_release( p_playlist );
+        pl_Release( VLCIntf );
         return NSDragOperationMove;
     }
 
     /* Drop from the Finder */
     else if( [[o_pasteboard types] containsObject: NSFilenamesPboardType] )
     {
-        vlc_object_release( p_playlist );
+        pl_Release( VLCIntf );
         return NSDragOperationGeneric;
     }
-    vlc_object_release( p_playlist );
+    pl_Release( VLCIntf );
     return NSDragOperationNone;
 }
 
            (This should never be true) */
         if( p_new_parent->i_children < 0 )
         {
-            vlc_object_release( p_playlist );
+            pl_Release( VLCIntf );
             return NO;
         }
 
         [o_outline_view selectRow: i_row byExtendingSelection: NO];
         [o_outline_view scrollRowToVisible: i_row];
 
-        vlc_object_release( p_playlist );
+        pl_Release( VLCIntf );
         return YES;
     }
 
             [self appendNodeArray:o_array inNode: p_node
                 atPos:index enqueue:YES];
         }
-        vlc_object_release( p_playlist );
+        pl_Release( VLCIntf );
         return YES;
     }
-    vlc_object_release( p_playlist );
+    pl_Release( VLCIntf );
     return NO;
 }
 @end
index 52c3086eab192e11c1904b835ecd4ed18c723cc5..e9d6dc49869ef0835c058f4b9255b95cfb5c4536 100644 (file)
@@ -1322,7 +1322,7 @@ static VLCWizard *_o_sharedInstance = nil;
             x += 1;
         }
 
-        vlc_object_release( p_playlist );
+        pl_Release( p_intf );
 
         /* close the window, since we are done */
         [o_wizard_window close];