diff --git a/unix/xserver/hw/vnc/Input.cc b/unix/xserver/hw/vnc/Input.cc
index d093f89..43c3ac3 100644
--- a/unix/xserver/hw/vnc/Input.cc
+++ b/unix/xserver/hw/vnc/Input.cc
@@ -197,6 +197,14 @@ void InputDevice::PointerMove(const rfb::Point &pos)
void InputDevice::PointerSync(void)
{
+ if (pointerDev) {
+ int x, y;
+
+ GetSpritePosition (pointerDev, &x, &y);
+ cursorPos.x = x;
+ cursorPos.y = y;
+ }
+
if (cursorPos.equals(oldCursorPos))
return;