[Bugfix] Fix 3-button mouse emulation in win viewer.


git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4404 3789f03b-4d11-0410-bbf8-ca57d06f2519
diff --git a/win/rfb_win32/CPointer.cxx b/win/rfb_win32/CPointer.cxx
index 03f8a38..eda6e38 100644
--- a/win/rfb_win32/CPointer.cxx
+++ b/win/rfb_win32/CPointer.cxx
@@ -54,7 +54,7 @@
 }
 
 
-inline int _abs(int x) {return x>0 ? x : 0;}
+inline int _abs(int x) {return x>0 ? x : -x;}
 
 int emulate3Mask(int buttonMask) {
   // - Release left & right and press middle
@@ -102,7 +102,7 @@
       if (threeTimer.isActive()) {
         // - We are timing for an emulation event
 
-        if (_abs(threePos.x - pos.x) <= 4 || _abs(threePos.y - pos.y) <= 4) {
+        if (_abs(threePos.x - pos.x) > 4 || _abs(threePos.y - pos.y) > 4) {
           //   If the mouse has moved too far since the button-change event then flush
           vlog.debug("emulate3: stop timer (moved)");
           threeTimer.stop();