diff options
author | Sebastian Dröge <sebastian@centricular.com> | 2018-07-25 14:23:36 +0300 |
---|---|---|
committer | Sebastian Dröge <sebastian@centricular.com> | 2018-07-25 15:58:41 +0300 |
commit | b99414e84d4f2094dfa14c1f6005ecac64cda26b (patch) | |
tree | 4c78267129d78537af5a0d0711955cb973a76109 | |
parent | 24f097564657bd630e68931c932ec9fd992a3785 (diff) | |
download | gstreamer-plugins-base-b99414e84d4f2094dfa14c1f6005ecac64cda26b.tar.gz |
gl: Don't steal callers reference when setting non-floating elements via properties
Introduced by fbef9220d3dc2f785081c4766901aab2ecfaed10. The code there
is only correct for elements we get from signals.
-rw-r--r-- | ext/gl/gstglfilterbin.c | 2 | ||||
-rw-r--r-- | ext/gl/gstglmixerbin.c | 2 | ||||
-rw-r--r-- | ext/gl/gstglsinkbin.c | 2 | ||||
-rw-r--r-- | ext/gl/gstglsrcbin.c | 2 |
4 files changed, 4 insertions, 4 deletions
diff --git a/ext/gl/gstglfilterbin.c b/ext/gl/gstglfilterbin.c index 486b0fec3..f6f7856fe 100644 --- a/ext/gl/gstglfilterbin.c +++ b/ext/gl/gstglfilterbin.c @@ -245,7 +245,7 @@ gst_gl_filter_bin_set_property (GObject * object, guint prop_id, switch (prop_id) { case PROP_FILTER: - gst_gl_filter_bin_set_filter (self, g_value_get_object (value)); + gst_gl_filter_bin_set_filter (self, g_value_dup_object (value)); break; default: G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec); diff --git a/ext/gl/gstglmixerbin.c b/ext/gl/gstglmixerbin.c index 25e18ff6f..0c52c2946 100644 --- a/ext/gl/gstglmixerbin.c +++ b/ext/gl/gstglmixerbin.c @@ -473,7 +473,7 @@ gst_gl_mixer_bin_set_property (GObject * object, switch (prop_id) { case PROP_MIXER: { - GstElement *mixer = g_value_get_object (value); + GstElement *mixer = g_value_dup_object (value); /* FIXME: deal with replacing a mixer */ g_return_if_fail (!self->mixer || (self->mixer == mixer)); gst_gl_mixer_bin_set_mixer (self, mixer); diff --git a/ext/gl/gstglsinkbin.c b/ext/gl/gstglsinkbin.c index 1c0d188f8..a3093d0cd 100644 --- a/ext/gl/gstglsinkbin.c +++ b/ext/gl/gstglsinkbin.c @@ -347,7 +347,7 @@ gst_gl_sink_bin_set_property (GObject * object, guint prop_id, switch (prop_id) { case PROP_SINK: - gst_gl_sink_bin_set_sink (self, g_value_get_object (value)); + gst_gl_sink_bin_set_sink (self, g_value_dup_object (value)); break; case PROP_CONTRAST: case PROP_BRIGHTNESS: diff --git a/ext/gl/gstglsrcbin.c b/ext/gl/gstglsrcbin.c index 672e4e03f..bae46a0d0 100644 --- a/ext/gl/gstglsrcbin.c +++ b/ext/gl/gstglsrcbin.c @@ -221,7 +221,7 @@ gst_gl_src_bin_set_property (GObject * object, guint prop_id, switch (prop_id) { case PROP_SRC: - gst_gl_src_bin_set_src (self, g_value_get_object (value)); + gst_gl_src_bin_set_src (self, g_value_dup_object (value)); break; default: if (self->src) |