aboutsummaryrefslogtreecommitdiff
path: root/multimedia/gstreamer
diff options
context:
space:
mode:
authorJoe Marcus Clarke <marcus@FreeBSD.org>2004-07-03 03:51:29 +0000
committerJoe Marcus Clarke <marcus@FreeBSD.org>2004-07-03 03:51:29 +0000
commit08593c3eff13cf27130f96eaa9efc4b1ad3647e9 (patch)
treec6461f8da5c483567ee8a042cf5634ad356ff063 /multimedia/gstreamer
parent561a46013b3038111ce1b12abf2679425e5368ce (diff)
downloadports-08593c3eff13cf27130f96eaa9efc4b1ad3647e9.tar.gz
ports-08593c3eff13cf27130f96eaa9efc4b1ad3647e9.zip
* Fix a free'd memory access crash that occurs with malloc debugging enabled [1]
* Use a better fix from GStreamer CVS to fix the double free in gst-inspect [2] Found by: monkey-bubble [1] Obtained from: GStreamer CVS [2]
Notes
Notes: svn path=/head/; revision=112830
Diffstat (limited to 'multimedia/gstreamer')
-rw-r--r--multimedia/gstreamer/Makefile2
-rw-r--r--multimedia/gstreamer/files/patch-gst_schedulers_gstoptimalscheduler.c20
-rw-r--r--multimedia/gstreamer/files/patch-tools_gst-inspect.c14
3 files changed, 28 insertions, 8 deletions
diff --git a/multimedia/gstreamer/Makefile b/multimedia/gstreamer/Makefile
index f1e2c6984a3c..4bcf0f28a76e 100644
--- a/multimedia/gstreamer/Makefile
+++ b/multimedia/gstreamer/Makefile
@@ -7,7 +7,7 @@
PORTNAME= gstreamer
PORTVERSION= 0.8.3
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= multimedia
MASTER_SITES= ${MASTER_SITE_GNOME} \
http://gstreamer.freedesktop.org/src/gstreamer/
diff --git a/multimedia/gstreamer/files/patch-gst_schedulers_gstoptimalscheduler.c b/multimedia/gstreamer/files/patch-gst_schedulers_gstoptimalscheduler.c
new file mode 100644
index 000000000000..2e9df12d13c2
--- /dev/null
+++ b/multimedia/gstreamer/files/patch-gst_schedulers_gstoptimalscheduler.c
@@ -0,0 +1,20 @@
+--- gst/schedulers/gstoptimalscheduler.c.orig Fri Jul 2 23:38:37 2004
++++ gst/schedulers/gstoptimalscheduler.c Fri Jul 2 23:38:42 2004
+@@ -2276,7 +2277,7 @@
+
+ GST_LOG ("elements still have links with other elements in the group");
+
+- while (group->elements)
++ while (group && group->elements)
+ for (l = group->elements; l && l->data; l = l->next) {
+ GstElement *element = (GstElement *) l->data;
+
+@@ -2309,7 +2310,7 @@
+ }
+
+ if (linkcount < 2) {
+- remove_from_group (group, element);
++ group = remove_from_group (group, element);
+ }
+ /* if linkcount == 2, it will be unlinked later on */
+ else if (linkcount > 2) {
diff --git a/multimedia/gstreamer/files/patch-tools_gst-inspect.c b/multimedia/gstreamer/files/patch-tools_gst-inspect.c
index 7d50fe1ac46d..e582407ee53a 100644
--- a/multimedia/gstreamer/files/patch-tools_gst-inspect.c
+++ b/multimedia/gstreamer/files/patch-tools_gst-inspect.c
@@ -1,10 +1,10 @@
---- tools/gst-inspect.c.orig Wed Jun 30 01:48:58 2004
-+++ tools/gst-inspect.c Wed Jun 30 01:49:18 2004
-@@ -799,7 +799,6 @@
+--- tools/gst-inspect.c.orig Mon May 24 12:12:28 2004
++++ tools/gst-inspect.c Fri Jul 2 23:49:02 2004
+@@ -797,7 +797,6 @@
+ g_free (indent);
+ }
- g_free (query);
+- g_free (query);
if (found_signals) {
-- g_slist_foreach (found_signals, (GFunc) g_free, NULL);
+ g_slist_foreach (found_signals, (GFunc) g_free, NULL);
g_slist_free (found_signals);
- }
- }