38 lines
1.1 KiB
Diff
38 lines
1.1 KiB
Diff
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
|