From: Christophe Gisquet Date: Fri, 22 Aug 2014 14:49:54 +0000 (+0200) Subject: h264: do not return on sidedata allocation failure X-Git-Tag: n2.5-dev~348 X-Git-Url: http://git.ffmpeg.org/gitweb/ffmpeg.git/commitdiff_plain/585047bb7dae67a366734db0845529add764f3b9 h264: do not return on sidedata allocation failure Not having allocated it is not a good reason to leave the object in an undetermined state. Though a particular setting like the AV_EF_* flags could be useful to control that behaviour. Signed-off-by: Michael Niedermayer --- diff --git a/libavcodec/h264.c b/libavcodec/h264.c index 389307b..cfe627f 100644 --- a/libavcodec/h264.c +++ b/libavcodec/h264.c @@ -835,9 +835,7 @@ static void decode_postinit(H264Context *h, int setup_finished) h->content_interpretation_type > 0 && h->content_interpretation_type < 3) { AVStereo3D *stereo = av_stereo3d_create_side_data(&cur->f); - if (!stereo) - return; - + if (stereo) { switch (h->frame_packing_arrangement_type) { case 0: stereo->type = AV_STEREO3D_CHECKERBOARD; @@ -867,6 +865,7 @@ static void decode_postinit(H264Context *h, int setup_finished) if (h->content_interpretation_type == 2) stereo->flags = AV_STEREO3D_FLAG_INVERT; + } } if (h->sei_display_orientation_present && @@ -875,12 +874,11 @@ static void decode_postinit(H264Context *h, int setup_finished) AVFrameSideData *rotation = av_frame_new_side_data(&cur->f, AV_FRAME_DATA_DISPLAYMATRIX, sizeof(int32_t) * 9); - if (!rotation) - return; - - av_display_rotation_set((int32_t *)rotation->data, angle); - av_display_matrix_flip((int32_t *)rotation->data, - h->sei_vflip, h->sei_hflip); + if (rotation) { + av_display_rotation_set((int32_t *)rotation->data, angle); + av_display_matrix_flip((int32_t *)rotation->data, + h->sei_vflip, h->sei_hflip); + } } cur->mmco_reset = h->mmco_reset;