summaryrefslogtreecommitdiffstats
path: root/kdm
diff options
context:
space:
mode:
authorTimothy Pearson <kb9vqf@pearsoncomputing.net>2013-03-28 22:13:21 -0500
committerSlávek Banko <slavek.banko@axis.cz>2013-03-30 17:12:53 +0100
commitb206ada9e1582e81e3304656cabbbd53fdd52d55 (patch)
tree4cc29b4810ca9768be0d1d3d04f95bfbab65e5a4 /kdm
parent51fb305283958f53395a44aa4beb69c90ef57474 (diff)
downloadtdebase-b206ada9e1582e81e3304656cabbbd53fdd52d55.tar.gz
tdebase-b206ada9e1582e81e3304656cabbbd53fdd52d55.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 (cherry picked from commit 2a889fe31478e2b58e98ce568a5eafbc04ac287b)
Diffstat (limited to 'kdm')
-rw-r--r--kdm/kfrontend/kgapp.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/kdm/kfrontend/kgapp.cpp b/kdm/kfrontend/kgapp.cpp
index 705efada7..27771d2e0 100644
--- a/kdm/kfrontend/kgapp.cpp
+++ b/kdm/kfrontend/kgapp.cpp
@@ -495,7 +495,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( qt_xdisplay(), PointerRoot, PointerRoot, CurrentTime );
+ XSetErrorHandler( (XErrorHandler)0 );
delete app;
}