summaryrefslogtreecommitdiffstats
path: root/kdecore
diff options
context:
space:
mode:
Diffstat (limited to 'kdecore')
-rw-r--r--kdecore/kapplication.cpp12
1 files changed, 8 insertions, 4 deletions
diff --git a/kdecore/kapplication.cpp b/kdecore/kapplication.cpp
index 1ca402e4a..917577888 100644
--- a/kdecore/kapplication.cpp
+++ b/kdecore/kapplication.cpp
@@ -2204,16 +2204,20 @@ bool KApplication::x11EventFilter( XEvent *_event )
void KApplication::updateUserTimestamp( unsigned long time )
{
#if defined Q_WS_X11
+ Display *display = qt_xdisplay();
+ if (!display) {
+ return;
+ }
if( time == 0 )
{ // get current X timestamp
- Window w = XCreateSimpleWindow( qt_xdisplay(), qt_xrootwin(), 0, 0, 1, 1, 0, 0, 0 );
+ Window w = XCreateSimpleWindow( display, qt_xrootwin(), 0, 0, 1, 1, 0, 0, 0 );
XSelectInput( qt_xdisplay(), w, PropertyChangeMask );
unsigned char data[ 1 ];
- XChangeProperty( qt_xdisplay(), w, XA_ATOM, XA_ATOM, 8, PropModeAppend, data, 1 );
+ XChangeProperty( display, w, XA_ATOM, XA_ATOM, 8, PropModeAppend, data, 1 );
XEvent ev;
- XWindowEvent( qt_xdisplay(), w, PropertyChangeMask, &ev );
+ XWindowEvent( display, w, PropertyChangeMask, &ev );
time = ev.xproperty.time;
- XDestroyWindow( qt_xdisplay(), w );
+ XDestroyWindow( display, w );
}
if( GET_QT_X_USER_TIME() == 0
|| NET::timestampCompare( time, GET_QT_X_USER_TIME() ) > 0 ) // check time > qt_x_user_time