Blob Blame History Raw
From 4e7edb2778f85a5475ffe9c782c91d86a7b902ca Mon Sep 17 00:00:00 2001
From: Oleksij Rempel (Alexey Fisher) <bug-track@fisher-privat.net>
Date: Mon, 12 Mar 2012 14:42:04 +0000
Subject: geometrictransform: make sure gt->map not freed twice

current cheese can create situation where gt->map is freed twice.
This patch set map to null to avoid it.

https://bugzilla.gnome.org/show_bug.cgi?id=671910

diff --git a/gst/geometrictransform/gstgeometrictransform.c b/gst/geometrictransform/gstgeometrictransform.c
index 8e78de7..274d483 100644
--- a/gst/geometrictransform/gstgeometrictransform.c
+++ b/gst/geometrictransform/gstgeometrictransform.c
@@ -143,9 +143,10 @@ gst_geometric_transform_generate_map (GstGeometricTransform * gt)
   }
 
 end:
-  if (!ret)
+  if (!ret) {
     g_free (gt->map);
-  else
+    gt->map = NULL;
+  } else
     gt->needs_remap = FALSE;
   return ret;
 }
@@ -348,6 +349,7 @@ gst_geometric_transform_stop (GstBaseTransform * trans)
   GstGeometricTransform *gt = GST_GEOMETRIC_TRANSFORM_CAST (trans);
 
   g_free (gt->map);
+  gt->map = NULL;
 
   return TRUE;
 }
--
cgit v0.9.0.2-2-gbebe