diff --git a/ext/libvisual/gstaudiovisualizer.c b/ext/libvisual/gstaudiovisualizer.c index f9eb5be02f..639f1e4898 100644 --- a/ext/libvisual/gstaudiovisualizer.c +++ b/ext/libvisual/gstaudiovisualizer.c @@ -726,6 +726,7 @@ gst_audio_visualizer_src_setcaps (GstAudioVisualizer * scope, GstCaps * caps) { GstVideoInfo info; GstAudioVisualizerClass *klass; + gboolean res; if (!gst_video_info_from_caps (&info, caps)) goto wrong_caps; @@ -750,7 +751,7 @@ gst_audio_visualizer_src_setcaps (GstAudioVisualizer * scope, GstCaps * caps) GST_MAP_READWRITE); if (klass->setup) - klass->setup (scope); + res = klass->setup (scope); GST_DEBUG_OBJECT (scope, "video: dimension %dx%d, framerate %d/%d", GST_VIDEO_INFO_WIDTH (&info), GST_VIDEO_INFO_HEIGHT (&info), @@ -761,7 +762,9 @@ gst_audio_visualizer_src_setcaps (GstAudioVisualizer * scope, GstCaps * caps) gst_pad_set_caps (scope->srcpad, caps); /* find a pool for the negotiated caps now */ - return gst_audio_visualizer_do_bufferpool (scope, caps); + res = gst_audio_visualizer_do_bufferpool (scope, caps); + + return res; /* ERRORS */ wrong_caps: