diff -up libX11-1.1.3/src/xkb/XKBBind.c.jx libX11-1.1.3/src/xkb/XKBBind.c --- libX11-1.1.3/src/xkb/XKBBind.c.jx 2007-05-16 11:34:44.000000000 -0400 +++ libX11-1.1.3/src/xkb/XKBBind.c 2007-10-10 15:16:08.000000000 -0400 @@ -368,7 +368,6 @@ XkbRefreshKeyboardMapping(register XkbMa changes= xkbi->changes; else bzero(&changes,sizeof(changes)); XkbNoteMapChanges(&changes,event,XKB_XLIB_MAP_MASK); - LockDisplay(dpy); if ((rtrn=XkbGetMapChanges(dpy,xkbi->desc,&changes))!=Success) { #ifdef DEBUG fprintf(stderr,"Internal Error! XkbGetMapChanges failed:\n"); @@ -379,7 +378,6 @@ XkbRefreshKeyboardMapping(register XkbMa xkbi->flags&= ~XkbMapPending; bzero(&xkbi->changes,sizeof(XkbMapChangesRec)); } - UnlockDisplay(dpy); return rtrn; } return BadMatch;