[FFmpeg-trac] #6439(undetermined:new): decode_simple_internal() checks the wrong AVPacket for side data

FFmpeg trac at avcodec.org
Sat Jun 3 01:33:32 EEST 2017


#6439: decode_simple_internal() checks the wrong AVPacket for side data
-------------------------------------+-------------------------------------
             Reporter:  jrummell     |                     Type:  defect
               Status:  new          |                 Priority:  normal
            Component:               |                  Version:
  undetermined                       |  unspecified
             Keywords:               |               Blocked By:
             Blocking:               |  Reproduced by developer:  0
Analyzed by developer:  0            |
-------------------------------------+-------------------------------------
 In tracking down a failing test case in Chromium, I've discovered an
 inconsistency in decode_simple_internal() in libavcodec/decode.c. If
 FF_API_MERGE_SD is defined, then av_packet_split_side_data() is called on
 |tmp|, which is a copy of |pkt|. However, later it calls:

     side= av_packet_get_side_data(pkt, AV_PKT_DATA_SKIP_SAMPLES,
 &side_size);

 If the side data was split, then |pkt| won't have the updated side data,
 and no record is found.

 Changing "pkt" to "&tmp" fixes the issue for me, but I'm not sure it's the
 proper fix.

--
Ticket URL: <https://trac.ffmpeg.org/ticket/6439>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker


More information about the FFmpeg-trac mailing list