1 diff -up tigervnc-1.3.0/unix/xserver/hw/vnc/InputXKB.cc.getmaster tigervnc-1.3.0/unix/xserver/hw/vnc/InputXKB.cc
2 --- tigervnc-1.3.0/unix/xserver/hw/vnc/InputXKB.cc.getmaster 2013-07-12 09:30:50.551459439 +0100
3 +++ tigervnc-1.3.0/unix/xserver/hw/vnc/InputXKB.cc 2013-07-12 09:38:31.037480528 +0100
4 @@ -232,10 +232,7 @@ void InputDevice::PrepareInputDevices(vo
6 unsigned InputDevice::getKeyboardState(void)
10 - master = GetMaster(keyboardDev, KEYBOARD_OR_FLOAT);
11 - return XkbStateFieldFromRec(&master->key->xkbInfo->state);
12 + return XkbStateFieldFromRec(&keyboardDev->master->key->xkbInfo->state);
15 unsigned InputDevice::getLevelThreeMask(void)
16 @@ -256,7 +253,7 @@ unsigned InputDevice::getLevelThreeMask(
20 - xkb = GetMaster(keyboardDev, KEYBOARD_OR_FLOAT)->key->xkbInfo->desc;
21 + xkb = keyboardDev->master->key->xkbInfo->desc;
23 act = XkbKeyActionPtr(xkb, keycode, state);
25 @@ -281,7 +278,7 @@ KeyCode InputDevice::pressShift(void)
26 if (state & ShiftMask)
29 - xkb = GetMaster(keyboardDev, KEYBOARD_OR_FLOAT)->key->xkbInfo->desc;
30 + xkb = keyboardDev->master->key->xkbInfo->desc;
31 for (key = xkb->min_key_code; key <= xkb->max_key_code; key++) {
34 @@ -318,7 +315,7 @@ std::list<KeyCode> InputDevice::releaseS
35 if (!(state & ShiftMask))
38 - master = GetMaster(keyboardDev, KEYBOARD_OR_FLOAT);
39 + master = keyboardDev->master;
40 xkb = master->key->xkbInfo->desc;
41 for (key = xkb->min_key_code; key <= xkb->max_key_code; key++) {
43 @@ -371,7 +368,7 @@ KeyCode InputDevice::pressLevelThree(voi
47 - xkb = GetMaster(keyboardDev, KEYBOARD_OR_FLOAT)->key->xkbInfo->desc;
48 + xkb = keyboardDev->master->key->xkbInfo->desc;
50 act = XkbKeyActionPtr(xkb, keycode, state);
52 @@ -399,7 +396,7 @@ std::list<KeyCode> InputDevice::releaseL
56 - master = GetMaster(keyboardDev, KEYBOARD_OR_FLOAT);
57 + master = keyboardDev->master;
58 xkb = master->key->xkbInfo->desc;
59 for (key = xkb->min_key_code; key <= xkb->max_key_code; key++) {
61 @@ -440,7 +437,7 @@ KeyCode InputDevice::keysymToKeycode(Key
62 if (new_state != NULL)
65 - xkb = GetMaster(keyboardDev, KEYBOARD_OR_FLOAT)->key->xkbInfo->desc;
66 + xkb = keyboardDev->master->key->xkbInfo->desc;
67 for (key = xkb->min_key_code; key <= xkb->max_key_code; key++) {
68 unsigned int state_out;
70 @@ -497,7 +494,7 @@ bool InputDevice::isLockModifier(KeyCode
74 - xkb = GetMaster(keyboardDev, KEYBOARD_OR_FLOAT)->key->xkbInfo->desc;
75 + xkb = keyboardDev->master->key->xkbInfo->desc;
77 act = XkbKeyActionPtr(xkb, keycode, state);
79 @@ -535,7 +532,7 @@ bool InputDevice::isAffectedByNumLock(Ke
80 if (numlock_keycode == 0)
83 - xkb = GetMaster(keyboardDev, KEYBOARD_OR_FLOAT)->key->xkbInfo->desc;
84 + xkb = keyboardDev->master->key->xkbInfo->desc;
86 act = XkbKeyActionPtr(xkb, numlock_keycode, state);
88 @@ -569,7 +566,7 @@ KeyCode InputDevice::addKeysym(KeySym ke
92 - master = GetMaster(keyboardDev, KEYBOARD_OR_FLOAT);
93 + master = keyboardDev->master;
94 xkb = master->key->xkbInfo->desc;
95 for (key = xkb->max_key_code; key >= xkb->min_key_code; key--) {
96 if (XkbKeyNumGroups(xkb, key) == 0)