diff options
Diffstat (limited to 'gnu/java/awt/java2d/TexturePaintContext.java')
-rw-r--r-- | gnu/java/awt/java2d/TexturePaintContext.java | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/gnu/java/awt/java2d/TexturePaintContext.java b/gnu/java/awt/java2d/TexturePaintContext.java index 840b61456..db0a2e658 100644 --- a/gnu/java/awt/java2d/TexturePaintContext.java +++ b/gnu/java/awt/java2d/TexturePaintContext.java @@ -177,6 +177,12 @@ public class TexturePaintContext // The modulo operation gives us the replication effect. dx = ((dx - minX) % width) + minX; dy = ((dy - minY) % height) + minY; + + // Handle possible negative values (replicating above the top-left) + if (dx < 0) + dx += width; + if (dy < 0) + dy += height; // Copy the pixel. pixel = source.getDataElements(dx, dy, pixel); |