From: <sl...@ke...> - 2010-06-16 17:30:57
|
Module: gst-plugins-good Branch: master Commit: 8b2a6a8c74341f2031e86eddd49b53d20c0b4da6 URL: http://cgit.freedesktop.org/gstreamer/gst-plugins-good/commit/?id=8b2a6a8c74341f2031e86eddd49b53d20c0b4da6 Author: Sebastian Dröge <seb...@co...> Date: Wed Jun 16 19:28:04 2010 +0200 flactag: Fix possible NULL pointer dereference --- ext/flac/gstflactag.c | 4 ++++ 1 files changed, 4 insertions(+), 0 deletions(-) diff --git a/ext/flac/gstflactag.c b/ext/flac/gstflactag.c index 13afcfb..682ceb8 100644 --- a/ext/flac/gstflactag.c +++ b/ext/flac/gstflactag.c @@ -364,6 +364,8 @@ gst_flac_tag_chain (GstPad * pad, GstBuffer * buffer) if (buffer == NULL) { GST_ELEMENT_ERROR (tag, CORE, TOO_LAZY, (NULL), ("Error creating 12-byte buffer for padding block")); + ret = GST_FLOW_ERROR; + goto cleanup; } memset (GST_BUFFER_DATA (buffer), 0, GST_BUFFER_SIZE (buffer)); GST_BUFFER_DATA (buffer)[0] = 0x81; /* 0x80 = Last metadata block, @@ -383,6 +385,7 @@ gst_flac_tag_chain (GstPad * pad, GstBuffer * buffer) if (buffer == NULL) { GST_ELEMENT_ERROR (tag, CORE, TAG, (NULL), ("Error converting tag list to vorbiscomment buffer")); + ret = GST_FLOW_ERROR; goto cleanup; } size = GST_BUFFER_SIZE (buffer) - 4; @@ -393,6 +396,7 @@ gst_flac_tag_chain (GstPad * pad, GstBuffer * buffer) */ GST_ELEMENT_ERROR (tag, CORE, TAG, (NULL), ("Vorbis comment of size %d too long", size)); + ret = GST_FLOW_ERROR; goto cleanup; } |