summaryrefslogtreecommitdiffstats
path: root/java/src/com/tightvnc
diff options
context:
space:
mode:
authorConstantin Kaplinsky <const@tightvnc.com>2008-09-03 03:37:28 +0000
committerConstantin Kaplinsky <const@tightvnc.com>2008-09-03 03:37:28 +0000
commitef0cfaa46a2d7abd0605fbc7cc04fbc78d73bc28 (patch)
treeb3fbc329c43f3ed4c8ff864fe17f50c28608e16e /java/src/com/tightvnc
parent10da44dee7982dd14b1ccecd9af6f100123cd272 (diff)
downloadtigervnc-ef0cfaa46a2d7abd0605fbc7cc04fbc78d73bc28.tar.gz
tigervnc-ef0cfaa46a2d7abd0605fbc7cc04fbc78d73bc28.zip
[Bugfix] Selection grew incorrectly when it passed left or upper boundary of the framebuffer.
git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@2747 3789f03b-4d11-0410-bbf8-ca57d06f2519
Diffstat (limited to 'java/src/com/tightvnc')
-rw-r--r--java/src/com/tightvnc/vncviewer/VncCanvas.java12
1 files changed, 10 insertions, 2 deletions
diff --git a/java/src/com/tightvnc/vncviewer/VncCanvas.java b/java/src/com/tightvnc/vncviewer/VncCanvas.java
index 5422137b..17bb6c84 100644
--- a/java/src/com/tightvnc/vncviewer/VncCanvas.java
+++ b/java/src/com/tightvnc/vncviewer/VncCanvas.java
@@ -2016,10 +2016,18 @@ class VncCanvas extends Canvas
h = (h * 100 + scalingFactor/2) / scalingFactor;
}
// Clip the selection to framebuffer.
- if (x < 0)
+ if (x < 0) {
+ if (horizSwap) {
+ w += x;
+ }
x = 0;
- if (y < 0)
+ }
+ if (y < 0) {
+ if (vertSwap) {
+ h += y;
+ }
y = 0;
+ }
if (x + w > rfb.framebufferWidth)
w = rfb.framebufferWidth - x;
if (y + h > rfb.framebufferHeight)