vlc_epg_event_t * vlc_epg_event_Duplicate( const vlc_epg_event_t *p_src ) { vlc_epg_event_t *p_evt = vlc_epg_event_New( p_src->i_id, p_src->i_start, p_src->i_duration ); if( likely(p_evt) ) { if( p_src->psz_description ) p_evt->psz_description = strdup( p_src->psz_description ); if( p_src->psz_name ) p_evt->psz_name = strdup( p_src->psz_name ); if( p_src->psz_short_description ) p_evt->psz_short_description = strdup( p_src->psz_short_description ); p_evt->i_rating = p_src->i_rating; } return p_evt; }
vlc_epg_event_t * vlc_epg_event_Duplicate( const vlc_epg_event_t *p_src ) { vlc_epg_event_t *p_evt = vlc_epg_event_New( p_src->i_id, p_src->i_start, p_src->i_duration ); if( likely(p_evt) ) { if( p_src->psz_description ) p_evt->psz_description = strdup( p_src->psz_description ); if( p_src->psz_name ) p_evt->psz_name = strdup( p_src->psz_name ); if( p_src->psz_short_description ) p_evt->psz_short_description = strdup( p_src->psz_short_description ); if( p_src->i_description_items ) { p_evt->description_items = malloc( sizeof(*p_evt->description_items) * p_src->i_description_items ); if( p_evt->description_items ) { for( int i=0; i<p_src->i_description_items; i++ ) { p_evt->description_items[i].psz_key = strdup( p_src->description_items[i].psz_key ); p_evt->description_items[i].psz_value = strdup( p_src->description_items[i].psz_value ); if(!p_evt->description_items[i].psz_value || !p_evt->description_items[i].psz_key) { free(p_evt->description_items[i].psz_key); free(p_evt->description_items[i].psz_value); break; } p_evt->i_description_items++; } } } p_evt->i_rating = p_src->i_rating; } return p_evt; }