summaryrefslogtreecommitdiff
path: root/src/graphics.c
diff options
context:
space:
mode:
authorjacob1 <jfu614@gmail.com>2012-08-08 16:57:55 (GMT)
committer jacksonmj <mj-pt@jacksonmj.co.uk>2012-08-13 23:26:51 (GMT)
commitb3b9b0961ce85feafd0051c1eb88fa1b95ba9289 (patch)
tree4774e7f77d34698e5a3ad4d7b636fddb5a7c9389 /src/graphics.c
parent3c78cce7a56c91b7c4db8526f988101a5e1e2b2c (diff)
downloadpowder-b3b9b0961ce85feafd0051c1eb88fa1b95ba9289.zip
powder-b3b9b0961ce85feafd0051c1eb88fa1b95ba9289.tar.gz
Fix cut message, stamps/copying can be done backwards, fix xor_rect
(amended to remove extra argument to build_save)
Diffstat (limited to 'src/graphics.c')
-rw-r--r--src/graphics.c21
1 files changed, 19 insertions, 2 deletions
diff --git a/src/graphics.c b/src/graphics.c
index 252033f..72cf11c 100644
--- a/src/graphics.c
+++ b/src/graphics.c
@@ -1689,12 +1689,29 @@ void xor_rect(pixel *vid, int x, int y, int w, int h)
for (i=0; i<w; i+=2)
{
xor_pixel(x+i, y, vid);
- xor_pixel(x+i, y+h-1, vid);
}
+ if (h != 1)
+ {
+ if (h%2 == 1) i = 2;
+ else i = 1;
+ for (; i<w; i+=2)
+ {
+ xor_pixel(x+i, y+h-1, vid);
+ }
+ }
+
for (i=2; i<h; i+=2)
{
xor_pixel(x, y+i, vid);
- xor_pixel(x+w-1, y+i, vid);
+ }
+ if (w != 1)
+ {
+ if (w%2 == 1) i = 2;
+ else i = 1;
+ for (; i<h-1; i+=2)
+ {
+ xor_pixel(x+w-1, y+i, vid);
+ }
}
}