From: Stefan Sauer Date: Fri, 14 Oct 2016 12:23:38 +0000 (+0200) Subject: audio: don't deref NULL X-Git-Tag: 1.19.3~511^2~2624 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=7986a8ed3d2c83aab00ae6ea1e6944f5c8557230;p=platform%2Fupstream%2Fgstreamer.git audio: don't deref NULL gst_buffer_copy_region() can return NULL when the buffer meta-data is invalid. See https://bugzilla.gnome.org/show_bug.cgi?id=772200 --- diff --git a/gst-libs/gst/audio/audio.c b/gst-libs/gst/audio/audio.c index 5e3e8a6..c723d20 100644 --- a/gst-libs/gst/audio/audio.c +++ b/gst-libs/gst/audio/audio.c @@ -224,14 +224,18 @@ gst_audio_buffer_clip (GstBuffer * buffer, const GstSegment * segment, gst_buffer_unref (buffer); GST_DEBUG ("timestamp %" GST_TIME_FORMAT, GST_TIME_ARGS (timestamp)); - GST_BUFFER_TIMESTAMP (ret) = timestamp; + if (ret) { + GST_BUFFER_TIMESTAMP (ret) = timestamp; - if (change_duration) - GST_BUFFER_DURATION (ret) = duration; - if (change_offset) - GST_BUFFER_OFFSET (ret) = offset; - if (change_offset_end) - GST_BUFFER_OFFSET_END (ret) = offset_end; + if (change_duration) + GST_BUFFER_DURATION (ret) = duration; + if (change_offset) + GST_BUFFER_OFFSET (ret) = offset; + if (change_offset_end) + GST_BUFFER_OFFSET_END (ret) = offset_end; + } else { + GST_ERROR ("copy_region failed"); + } } return ret; }