# HG changeset patch # User mstorsjo # Date 1277724339 0 # Node ID 34f4b569637fd866c0d9b01e65a0a488492e207a # Parent c4c35a9d4ab522c4366b4655b49847e48bb62593 rtpdec: Return ENOMEM if H.264 RTP fails to allocate memory for SDP extradata Patch by Josh Allmann, joshua dot allmann at gmail diff -r c4c35a9d4ab5 -r 34f4b569637f rtpdec_h264.c --- a/rtpdec_h264.c Mon Jun 28 11:24:12 2010 +0000 +++ b/rtpdec_h264.c Mon Jun 28 11:25:39 2010 +0000 @@ -69,7 +69,7 @@ #define DEAD_COOKIE (0xdeaddead) ///< Cookie for the extradata; once it is freed. /* ---------------- private code */ -static void sdp_parse_fmtp_config_h264(AVStream * stream, +static int sdp_parse_fmtp_config_h264(AVStream * stream, PayloadContext * h264_data, char *attr, char *value) { @@ -155,11 +155,13 @@ codec->extradata_size+= sizeof(start_sequence)+packet_size; } else { av_log(codec, AV_LOG_ERROR, "Unable to allocate memory for extradata!"); + return AVERROR(ENOMEM); } } } av_log(codec, AV_LOG_DEBUG, "Extradata set to %p (size: %d)!", codec->extradata, codec->extradata_size); } + return 0; } // return 0 on packet, no more left, 1 on packet, 1 on partial packet...