summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSebastian Dröge <sebastian.droege@collabora.co.uk>2012-12-17 15:17:12 +0100
committerSebastian Dröge <sebastian.droege@collabora.co.uk>2012-12-22 10:38:56 +0100
commit602a10f5ad458592165fa018d7e89793cfabe7b8 (patch)
tree0790ab45fd41106588151bd7fa6d6ef41b6c341f
parent2e9fe4ed9b3f10c1a1d4db7bde9a068ab4a6967b (diff)
audioparsers: Make sure the caps are actually writable before changing them
-rw-r--r--gst/audioparsers/gstaacparse.c1
-rw-r--r--gst/audioparsers/gstac3parse.c1
-rw-r--r--gst/audioparsers/gstamrparse.c1
-rw-r--r--gst/audioparsers/gstdcaparse.c1
-rw-r--r--gst/audioparsers/gstflacparse.c1
-rw-r--r--gst/audioparsers/gstmpegaudioparse.c1
-rw-r--r--gst/audioparsers/gstwavpackparse.c1
7 files changed, 7 insertions, 0 deletions
diff --git a/gst/audioparsers/gstaacparse.c b/gst/audioparsers/gstaacparse.c
index d154929b6..1a7a59388 100644
--- a/gst/audioparsers/gstaacparse.c
+++ b/gst/audioparsers/gstaacparse.c
@@ -1115,6 +1115,7 @@ gst_aac_parse_sink_getcaps (GstBaseParse * parse, GstCaps * filter)
res = gst_caps_intersect_full (peercaps, templ, GST_CAPS_INTERSECT_FIRST);
gst_caps_unref (peercaps);
+ res = gst_caps_make_writable (res);
/* Append the template caps because we still want to accept
* caps without any fields in the case upstream does not
diff --git a/gst/audioparsers/gstac3parse.c b/gst/audioparsers/gstac3parse.c
index f2c84405f..c0c7b5cdc 100644
--- a/gst/audioparsers/gstac3parse.c
+++ b/gst/audioparsers/gstac3parse.c
@@ -715,6 +715,7 @@ gst_ac3_parse_get_sink_caps (GstBaseParse * parse, GstCaps * filter)
res = gst_caps_intersect_full (peercaps, templ, GST_CAPS_INTERSECT_FIRST);
gst_caps_unref (peercaps);
+ res = gst_caps_make_writable (res);
/* Append the template caps because we still want to accept
* caps without any fields in the case upstream does not
diff --git a/gst/audioparsers/gstamrparse.c b/gst/audioparsers/gstamrparse.c
index d66fabe3c..7d4ff8524 100644
--- a/gst/audioparsers/gstamrparse.c
+++ b/gst/audioparsers/gstamrparse.c
@@ -389,6 +389,7 @@ gst_amr_parse_sink_getcaps (GstBaseParse * parse, GstCaps * filter)
res = gst_caps_intersect_full (peercaps, templ, GST_CAPS_INTERSECT_FIRST);
gst_caps_unref (peercaps);
+ res = gst_caps_make_writable (res);
/* Append the template caps because we still want to accept
* caps without any fields in the case upstream does not
* know anything.
diff --git a/gst/audioparsers/gstdcaparse.c b/gst/audioparsers/gstdcaparse.c
index 06527f11f..3c1f61eb5 100644
--- a/gst/audioparsers/gstdcaparse.c
+++ b/gst/audioparsers/gstdcaparse.c
@@ -463,6 +463,7 @@ gst_dca_parse_get_sink_caps (GstBaseParse * parse, GstCaps * filter)
res = gst_caps_intersect_full (peercaps, templ, GST_CAPS_INTERSECT_FIRST);
gst_caps_unref (peercaps);
+ res = gst_caps_make_writable (res);
/* Append the template caps because we still want to accept
* caps without any fields in the case upstream does not
diff --git a/gst/audioparsers/gstflacparse.c b/gst/audioparsers/gstflacparse.c
index 54e1f79ce..043c9a7b2 100644
--- a/gst/audioparsers/gstflacparse.c
+++ b/gst/audioparsers/gstflacparse.c
@@ -1757,6 +1757,7 @@ gst_flac_parse_get_sink_caps (GstBaseParse * parse, GstCaps * filter)
res = gst_caps_intersect_full (peercaps, templ, GST_CAPS_INTERSECT_FIRST);
gst_caps_unref (peercaps);
+ res = gst_caps_make_writable (res);
/* Append the template caps because we still want to accept
* caps without any fields in the case upstream does not
diff --git a/gst/audioparsers/gstmpegaudioparse.c b/gst/audioparsers/gstmpegaudioparse.c
index 254289f37..b14d2e6a3 100644
--- a/gst/audioparsers/gstmpegaudioparse.c
+++ b/gst/audioparsers/gstmpegaudioparse.c
@@ -1421,6 +1421,7 @@ gst_mpeg_audio_parse_get_sink_caps (GstBaseParse * parse, GstCaps * filter)
res = gst_caps_intersect_full (peercaps, templ, GST_CAPS_INTERSECT_FIRST);
gst_caps_unref (peercaps);
+ res = gst_caps_make_writable (res);
/* Append the template caps because we still want to accept
* caps without any fields in the case upstream does not
diff --git a/gst/audioparsers/gstwavpackparse.c b/gst/audioparsers/gstwavpackparse.c
index a72a63137..a05707cee 100644
--- a/gst/audioparsers/gstwavpackparse.c
+++ b/gst/audioparsers/gstwavpackparse.c
@@ -631,6 +631,7 @@ gst_wavpack_parse_get_sink_caps (GstBaseParse * parse, GstCaps * filter)
res = gst_caps_intersect_full (peercaps, templ, GST_CAPS_INTERSECT_FIRST);
gst_caps_unref (peercaps);
+ res = gst_caps_make_writable (res);
/* Append the template caps because we still want to accept
* caps without any fields in the case upstream does not