# HG changeset patch # User aurel # Date 1192746746 0 # Node ID 95cfd6b8f8d568669f10e7436f6b18a129286312 # Parent 0605d25fba46059cd407fac0633e0245ef5438f8 add some error processing diff -r 0605d25fba46 -r 95cfd6b8f8d5 electronicarts.c --- a/electronicarts.c Thu Oct 18 22:27:27 2007 +0000 +++ b/electronicarts.c Thu Oct 18 22:32:26 2007 +0000 @@ -166,6 +166,7 @@ for (i=0; i<5 && (!ea->audio_codec || !ea->video_codec); i++) { unsigned int startpos = url_ftell(pb); + int err = 0; blockid = get_le32(pb); size = get_le32(pb); @@ -179,14 +180,19 @@ av_log (s, AV_LOG_ERROR, "unknown SCHl headerid\n"); return 0; } - process_audio_header_elements(s); + err = process_audio_header_elements(s); break; case MVhd_TAG : - process_video_header_vp6(s); + err = process_video_header_vp6(s); break; } + if (err < 0) { + av_log(s, AV_LOG_ERROR, "error parsing header: %i\n", err); + return err; + } + url_fseek(pb, startpos + size, SEEK_SET); }