respect SYNCHRONOUS after getting X context

Original commit message from CVS:
respect SYNCHRONOUS after getting X context
This commit is contained in:
Thomas Vander Stichele 2004-07-19 11:33:32 +00:00
parent 4c536aef8c
commit 1a6f6848e9
3 changed files with 20 additions and 0 deletions

View file

@ -1,3 +1,11 @@
2004-07-19 Thomas Vander Stichele <thomas at apestaart dot org>
* sys/ximage/ximagesink.c: (gst_ximagesink_change_state),
(gst_ximagesink_set_property):
* sys/xvimage/xvimagesink.c: (gst_xvimagesink_change_state),
(gst_xvimagesink_set_property):
make sure SYNCHRONOUS is respected after getting the X context
2004-07-18 Thomas Vander Stichele <thomas at apestaart dot org>
* gst/matroska/matroska-demux.c:

View file

@ -869,6 +869,10 @@ gst_ximagesink_change_state (GstElement * element)
ximagesink->xcontext = gst_ximagesink_xcontext_get (ximagesink);
if (!ximagesink->xcontext)
return GST_STATE_FAILURE;
/* call XSynchronize with the current value of synchronous */
GST_DEBUG_OBJECT (ximagesink, "XSynchronize called with %s",
ximagesink->synchronous ? "TRUE" : "FALSE");
XSynchronize (ximagesink->xcontext->disp, ximagesink->synchronous);
break;
case GST_STATE_READY_TO_PAUSED:
if (ximagesink->xwindow)
@ -1269,6 +1273,8 @@ gst_ximagesink_set_property (GObject * object, guint prop_id,
case ARG_SYNCHRONOUS:
ximagesink->synchronous = g_value_get_boolean (value);
if (ximagesink->xcontext) {
GST_DEBUG_OBJECT (ximagesink, "XSynchronize called with %s",
ximagesink->synchronous ? "TRUE" : "FALSE");
XSynchronize (ximagesink->xcontext->disp, ximagesink->synchronous);
}
break;

View file

@ -1164,6 +1164,10 @@ gst_xvimagesink_change_state (GstElement * element)
if (!xvimagesink->xcontext &&
!(xvimagesink->xcontext = gst_xvimagesink_xcontext_get (xvimagesink)))
return GST_STATE_FAILURE;
/* call XSynchronize with the current value of synchronous */
GST_DEBUG_OBJECT (xvimagesink, "XSynchronize called with %s",
xvimagesink->synchronous ? "TRUE" : "FALSE");
XSynchronize (xvimagesink->xcontext->disp, xvimagesink->synchronous);
gst_xvimagesink_update_colorbalance (xvimagesink);
break;
case GST_STATE_READY_TO_PAUSED:
@ -1641,6 +1645,8 @@ gst_xvimagesink_set_property (GObject * object, guint prop_id,
xvimagesink->synchronous = g_value_get_boolean (value);
if (xvimagesink->xcontext) {
XSynchronize (xvimagesink->xcontext->disp, xvimagesink->synchronous);
GST_DEBUG_OBJECT (xvimagesink, "XSynchronize called with %s",
xvimagesink->synchronous ? "TRUE" : "FALSE");
}
break;
default: