#import "controls.h"
#import "vlc_osd.h"
#import "misc.h"
-#import <vlc_interaction.h>
+#import <vlc_interface.h>
/*****************************************************************************
* VLCPlaylistView implementation
if( [[o_tc identifier] isEqualToString:@"1"] )
{
- o_value = [NSString stringWithUTF8String:
- p_item->p_input->psz_name];
- if( o_value == NULL )
- o_value = [NSString stringWithCString:
+ /* sanity check to prevent the NSString class from crashing */
+ if( p_item->p_input->psz_name != NULL )
+ {
+ o_value = [NSString stringWithUTF8String:
p_item->p_input->psz_name];
+ if( o_value == NULL )
+ o_value = [NSString stringWithCString:
+ p_item->p_input->psz_name];
+ }
}
else if( [[o_tc identifier] isEqualToString:@"2"] && p_item->p_input->p_meta &&
p_item->p_input->p_meta->psz_artist && *p_item->p_input->p_meta->psz_artist )
else
{
if( playlist_IsEmpty( p_playlist ) )
- {
[o_status_field setStringValue: _NS("No items in the playlist")];
- }
else
- {
[o_status_field setStringValue: _NS("1 item in the playlist")];
- }
}
vlc_object_release( p_playlist );
}
p_item = NULL;
}
}
- playlist_Control( p_playlist, PLAYLIST_VIEWPLAY, p_node, p_item );
+ playlist_Control( p_playlist, PLAYLIST_VIEWPLAY, VLC_TRUE, p_node, p_item );
}
vlc_object_release( p_playlist );
}
}
else
{
- playlist_LockDelete( p_playlist, p_item->i_id );
+ playlist_DeleteFromInput( p_playlist, p_item->p_input->i_id, VLC_FALSE );
}
}
[self playlistUpdated];
}
/* Add the item */
- playlist_PlaylistAddInput( p_playlist, p_input, PLAYLIST_INSERT,
- i_position == -1 ? PLAYLIST_END : i_position + i_item );
+ playlist_AddInput( p_playlist, p_input, PLAYLIST_INSERT,
+ i_position == -1 ? PLAYLIST_END : i_position + i_item, VLC_TRUE );
if( i_item == 0 && !b_enqueue )
{
playlist_item_t *p_item;
- p_item = playlist_ItemGetByInput( p_playlist, p_input );
- playlist_Control( p_playlist, PLAYLIST_VIEWPLAY, NULL, p_item );
+ p_item = playlist_ItemGetByInput( p_playlist, p_input, VLC_TRUE );
+ playlist_Control( p_playlist, PLAYLIST_VIEWPLAY, VLC_TRUE, NULL, p_item );
}
else
{
playlist_item_t *p_item;
- p_item = playlist_ItemGetByInput( p_playlist, p_input );
- playlist_Control( p_playlist, PLAYLIST_PREPARSE, p_item );
+ p_item = playlist_ItemGetByInput( p_playlist, p_input, VLC_TRUE );
+ playlist_Control( p_playlist, PLAYLIST_PREPARSE, VLC_TRUE, p_item );
}
}
[self playlistUpdated];
if( i_item == 0 && !b_enqueue )
{
playlist_item_t *p_item;
- p_item = playlist_ItemGetByInput( p_playlist, p_input );
- playlist_Control( p_playlist, PLAYLIST_VIEWPLAY, NULL, p_item );
+ p_item = playlist_ItemGetByInput( p_playlist, p_input, VLC_TRUE );
+ playlist_Control( p_playlist, PLAYLIST_VIEWPLAY, VLC_TRUE, NULL, p_item );
}
else
{
playlist_item_t *p_item;
- p_item = playlist_ItemGetByInput( p_playlist, p_input );
- playlist_Control( p_playlist, PLAYLIST_PREPARSE, p_item );
+ p_item = playlist_ItemGetByInput( p_playlist, p_input, VLC_TRUE );
+ playlist_Control( p_playlist, PLAYLIST_PREPARSE, VLC_TRUE, p_item );
}
}
[self playlistUpdated];