/*****************************************************************************
* tree.c: libvlc tags tree functions
- * Create a tree of the 'tags' of a media_list's media_descriptors.
+ * Create a tree of the 'tags' of a media_list's medias.
*****************************************************************************
* Copyright (C) 2007 the VideoLAN team
* $Id$
*****************************************************************************/
#include "libvlc_internal.h"
#include <vlc/libvlc.h>
+#include "libvlc.h"
#include "vlc_arrays.h"
/*
libvlc_media_library_new( libvlc_instance_t * p_inst,
libvlc_exception_t * p_e )
{
- (void)p_e;
+ (void)p_e;
libvlc_media_library_t * p_mlib;
- p_mlib = malloc(sizeof(libvlc_media_library_t));
+ p_mlib = malloc(sizeof(libvlc_media_library_t));
- if( !p_mlib )
- return NULL;
+ if( !p_mlib )
+ return NULL;
- p_mlib->p_libvlc_instance = p_inst;
+ p_mlib->p_libvlc_instance = p_inst;
p_mlib->i_refcount = 1;
p_mlib->p_mlist = NULL;
p_mlib->p_event_manager = libvlc_event_manager_new( p_mlib, p_inst, p_e );
- return p_mlib;
+ return p_mlib;
}
/**************************************************************************
return;
libvlc_event_manager_release( p_mlib->p_event_manager );
- free( p_mlib );
+ free( p_mlib );
}
/**************************************************************************
**************************************************************************/
void libvlc_media_library_retain( libvlc_media_library_t * p_mlib )
{
- p_mlib->i_refcount++;
+ p_mlib->i_refcount++;
}
/**************************************************************************
libvlc_media_library_load( libvlc_media_library_t * p_mlib,
libvlc_exception_t * p_e )
{
- const char *psz_datadir = p_mlib->p_libvlc_instance->p_libvlc_int->psz_datadir;
+ char *psz_datadir = config_GetUserDataDir();
char * psz_uri;
if( !psz_datadir ) /* XXX: i doubt that this can ever happen */
if( asprintf( &psz_uri, "file/xspf-open://%s" DIR_SEP "ml.xsp",
psz_datadir ) == -1 )
{
+ free( psz_datadir );
libvlc_exception_raise( p_e, "Can't get create the path" );
return;
}
+ free( psz_datadir );
if( p_mlib->p_mlist )
libvlc_media_list_release( p_mlib->p_mlist );
libvlc_media_library_save( libvlc_media_library_t * p_mlib,
libvlc_exception_t * p_e )
{
+ (void)p_mlib;
libvlc_exception_raise( p_e, "Not supported" );
}
libvlc_media_library_media_list( libvlc_media_library_t * p_mlib,
libvlc_exception_t * p_e )
{
- (void)p_e;
+ (void)p_e;
if( p_mlib->p_mlist )
libvlc_media_list_retain( p_mlib->p_mlist );
return p_mlib->p_mlist;