summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSebastian Dröge <slomo@circular-chaos.org>2008-01-19 14:53:58 +0000
committerSebastian Dröge <slomo@circular-chaos.org>2008-01-19 14:53:58 +0000
commita3b9fddd779edbebc29815f8ff585ea19e83019e (patch)
tree1a0bb23a5af50c53b209b044f59b78e54b0dcca5
parent505878c02260a9afea804bd9a8c3e757a8856570 (diff)
gst/wavparse/gstwavparse.c: Set variable to NULL after freeing it to prevent double frees or make failures by another...
Original commit message from CVS: Based on a patch by: Victor STINNER <victor dot stinner at haypocalc dot com> * gst/wavparse/gstwavparse.c: (gst_wavparse_stream_headers): Set variable to NULL after freeing it to prevent double frees or make failures by another use of it afterwards more obvious and fix use of it after the freeing.
-rw-r--r--ChangeLog10
-rw-r--r--gst/wavparse/gstwavparse.c4
2 files changed, 12 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index 7f4d8a7d..3aa94c96 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,13 @@
+2008-01-19 Sebastian Dröge <slomo@circular-chaos.org>
+
+ Based on a patch by:
+ Victor STINNER <victor dot stinner at haypocalc dot com>
+
+ * gst/wavparse/gstwavparse.c: (gst_wavparse_stream_headers):
+ Set variable to NULL after freeing it to prevent double frees
+ or make failures by another use of it afterwards more obvious
+ and fix use of it after the freeing.
+
2008-01-18 Thijs Vermeir <thijsvermeir@gmail.com>
* gst/udp/gstmultiudpsink.c:
diff --git a/gst/wavparse/gstwavparse.c b/gst/wavparse/gstwavparse.c
index c9e3a52a..f8c57b9c 100644
--- a/gst/wavparse/gstwavparse.c
+++ b/gst/wavparse/gstwavparse.c
@@ -1140,6 +1140,7 @@ gst_wavparse_stream_headers (GstWavParse * wav)
wav->vbr = FALSE;
g_free (header);
+ header = NULL;
/* do format specific handling */
switch (wav->format) {
@@ -1381,8 +1382,7 @@ invalid_blockalign:
{
GST_ELEMENT_ERROR (wav, STREAM, FAILED, (NULL),
("Stream claims blockalign = %u, which is more than %u - invalid data",
- header->blockalign,
- header->channels * (guint) ceil (header->size / 8.0)));
+ wav->blockalign, wav->channels * (guint) ceil (wav->depth / 8.0)));
g_free (codec_name);
return GST_FLOW_ERROR;
}