summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gst/playback/gstplaysink.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/gst/playback/gstplaysink.c b/gst/playback/gstplaysink.c
index 0887f7a7..aaed6564 100644
--- a/gst/playback/gstplaysink.c
+++ b/gst/playback/gstplaysink.c
@@ -1787,7 +1787,8 @@ gst_play_sink_reconfigure (GstPlaySink * playsink)
add_chain (GST_PLAY_CHAIN (playsink->videochain), TRUE);
activate_chain (GST_PLAY_CHAIN (playsink->videochain), TRUE);
/* if we are not part of vis or subtitles, set the ghostpad target */
- if (!need_vis && !need_text) {
+ if (!need_vis && !need_text && !playsink->text_pad
+ && !playsink->textchain) {
GST_DEBUG_OBJECT (playsink, "ghosting video sinkpad");
gst_ghost_pad_set_target (GST_GHOST_PAD_CAST (playsink->video_pad),
playsink->videochain->sinkpad);
@@ -1859,7 +1860,7 @@ gst_play_sink_reconfigure (GstPlaySink * playsink)
}
if (!need_video && playsink->video_pad)
gst_ghost_pad_set_target (GST_GHOST_PAD_CAST (playsink->video_pad), NULL);
- if (playsink->text_pad)
+ if (playsink->text_pad && !playsink->textchain)
gst_ghost_pad_set_target (GST_GHOST_PAD_CAST (playsink->text_pad), NULL);
}