]> git.sesse.net Git - vlc/blobdiff - modules/demux/playlist/itml.h
Qt: CaptureOpenPanel: check and prefill with usual devices
[vlc] / modules / demux / playlist / itml.h
index b1514345f6a63df379276ef28cff81c451b5c4e5..59e8aa38c2c1cbfee71e35cfbd847cd7e029cf79 100644 (file)
  */
 
 /* defines */
-#define FREE(v)        if (v) {free(v);v=NULL;}
-#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_KEY()     if (psz_key) {free(psz_key);psz_key=NULL;}
-#define FREE_ATT()     FREE_NAME();FREE_VALUE()
-#define FREE_ATT_KEY() FREE_NAME();FREE_VALUE();FREE_KEY()
+#define FREE_NAME()     FREENULL( psz_name )
+#define FREE_VALUE()    FREENULL( psz_value )
+#define FREE_KEY()      FREENULL( psz_key )
+#define FREE_ATT()      do{ FREE_NAME();FREE_VALUE(); }while(0)
+#define FREE_ATT_KEY()  do{ FREE_NAME();FREE_VALUE();FREE_KEY();} while(0)
 
 #define UNKNOWN_CONTENT 0
 #define SIMPLE_CONTENT 1
@@ -41,8 +40,7 @@
                            const char      *psz_name,\
                            char            *psz_value)
 #define COMPLEX_INTERFACE (demux_t         *p_demux,\
-                           playlist_t      *p_playlist,\
-                           input_item_t    *p_input_item,\
+                           input_item_node_t    *p_input_node,\
                            track_elem_t    *p_track,\
                            xml_reader_t    *p_xml_reader,\
                            const char      *psz_element,\
@@ -61,21 +59,21 @@ struct xml_elem_hnd
     int type;
     union
     {
-        vlc_bool_t (*smpl) SIMPLE_INTERFACE;
-        vlc_bool_t (*cmplx) COMPLEX_INTERFACE;
+        bool (*smpl) SIMPLE_INTERFACE;
+        bool (*cmplx) COMPLEX_INTERFACE;
     } pf_handler;
 };
 typedef struct xml_elem_hnd xml_elem_hnd_t;
 
 /* prototypes */
-static vlc_bool_t parse_plist_node COMPLEX_INTERFACE;
-static vlc_bool_t skip_element COMPLEX_INTERFACE;
-static vlc_bool_t parse_dict COMPLEX_INTERFACE;
-static vlc_bool_t parse_plist_dict COMPLEX_INTERFACE;
-static vlc_bool_t parse_tracks_dict COMPLEX_INTERFACE;
-static vlc_bool_t parse_track_dict COMPLEX_INTERFACE;
-static vlc_bool_t save_data SIMPLE_INTERFACE;
-static vlc_bool_t add_meta( input_item_t*, track_elem_t* );
+static bool parse_plist_node COMPLEX_INTERFACE;
+static bool skip_element COMPLEX_INTERFACE;
+static bool parse_dict COMPLEX_INTERFACE;
+static bool parse_plist_dict COMPLEX_INTERFACE;
+static bool parse_tracks_dict COMPLEX_INTERFACE;
+static bool parse_track_dict COMPLEX_INTERFACE;
+static bool save_data SIMPLE_INTERFACE;
+static bool add_meta( input_item_t*, track_elem_t* );
 static track_elem_t *new_track( void );
 static void free_track( track_elem_t* );