*/
/* defines */
-#define FREE_NAME() if (psz_name) {free(psz_name);psz_name=NULL;}
-#define FREE_VALUE() if (psz_value) {free(psz_value);psz_value=NULL;}
+#define FREE_NAME() free(psz_name);psz_name=NULL;
+#define FREE_VALUE() free(psz_value);psz_value=NULL;
#define FREE_ATT() FREE_NAME();FREE_VALUE()
-#define UNKNOWN_CONTENT 0
-#define SIMPLE_CONTENT 1
-#define COMPLEX_CONTENT 2
+enum {
+ UNKNOWN_CONTENT,
+ SIMPLE_CONTENT,
+ COMPLEX_CONTENT
+};
-#define SIMPLE_INTERFACE (playlist_item_t *p_item,\
+#define SIMPLE_INTERFACE (input_item_t *p_input,\
const char *psz_name,\
char *psz_value)
#define COMPLEX_INTERFACE (demux_t *p_demux,\
playlist_t *p_playlist,\
- playlist_item_t *p_item,\
+ input_item_t *p_input_item,\
xml_reader_t *p_xml_reader,\
const char *psz_element)
/* prototypes */
-int xspf_import_Demux( demux_t *);
-int xspf_import_Control( demux_t *, int, va_list );
-
static vlc_bool_t parse_playlist_node COMPLEX_INTERFACE;
static vlc_bool_t parse_tracklist_node COMPLEX_INTERFACE;
static vlc_bool_t parse_track_node COMPLEX_INTERFACE;
+static vlc_bool_t parse_extension_node COMPLEX_INTERFACE;
+static vlc_bool_t parse_extitem_node COMPLEX_INTERFACE;
static vlc_bool_t set_item_info SIMPLE_INTERFACE;
static vlc_bool_t skip_element COMPLEX_INTERFACE;
-static vlc_bool_t insert_new_item( playlist_t *, playlist_item_t *, playlist_item_t **, char *);
/* datatypes */
typedef struct