if( p_item )
i_return = p_item->i_children;
}
- vlc_object_release( p_playlist );
+ pl_Release( VLCIntf );
- return (i_return > 0);
+ return (i_return >= 0);
}
/* retrieve the string values for the cells */
int ret_v;
char *psz_name = NULL;
- playlist_item_t * p_item;
ret_v = intf_UserStringInput( p_playlist, _("New Node"),
_("Please enter a name for the new node."), &psz_name );
- if( ret_v != DIALOG_CANCELLED && psz_name && *psz_name )
- p_item = playlist_NodeCreate( p_playlist, psz_name,
+ PL_LOCK;
+ if( ret_v != DIALOG_CANCELLED && psz_name )
+ {
+ playlist_NodeCreate( p_playlist, psz_name,
p_playlist->p_local_category, 0, NULL );
+ }
else if(! config_GetInt( p_playlist, "interact" ) )
{
/* in case that the interaction is disabled, just give it a bogus name */
- p_item = playlist_NodeCreate( p_playlist, _("Empty Folder"),
+ playlist_NodeCreate( p_playlist, _("Empty Folder"),
p_playlist->p_local_category, 0, NULL );
}
+ PL_UNLOCK;
- if(! p_item )
- msg_Warn( VLCIntf, "node creation failed or cancelled by user" );
-
- vlc_object_release( p_playlist );
+ free( psz_name );
+ pl_Release( VLCIntf );
[ourPool release];
}