summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTimothy Pearson <kb9vqf@pearsoncomputing.net>2013-03-28 22:13:21 -0500
committerTimothy Pearson <kb9vqf@pearsoncomputing.net>2013-03-28 22:13:21 -0500
commit2a889fe31478e2b58e98ce568a5eafbc04ac287b (patch)
tree79f27d6bf286c363a8e82b7923a0a40079e9a911
parent7db006210bee765e4c21cc195e5795499a09c080 (diff)
downloadtdebase-2a889fe31478e2b58e98ce568a5eafbc04ac287b.tar.gz
tdebase-2a889fe31478e2b58e98ce568a5eafbc04ac287b.zip
Ignore spurious BadMatch errors which can occur when autologon is enabled
The errors originate from this commit http://lists.kde.org/?l=kde-commits&m=107824396401206&w=2 and appear only on certain hardware/software combinations
-rw-r--r--tdm/kfrontend/kgapp.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/tdm/kfrontend/kgapp.cpp b/tdm/kfrontend/kgapp.cpp
index 37c8130c1..259e2666b 100644
--- a/tdm/kfrontend/kgapp.cpp
+++ b/tdm/kfrontend/kgapp.cpp
@@ -518,7 +518,11 @@ kg_main( const char *argv0 )
UnsecureDisplay( dpy );
restore_modifiers();
+ // Qt4 has a nasty habit of generating BadWindow errors in normal operation, so we simply ignore them
+ // This also prevents the user from being dropped to a console login if Xorg glitches or is buggy
+ XSetErrorHandler( ignoreXError );
XSetInputFocus( tqt_xdisplay(), PointerRoot, PointerRoot, CurrentTime );
+ XSetErrorHandler( (XErrorHandler)0 );
delete app;
}