summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobin Watts <robin.watts@artifex.com>2011-02-04 15:51:42 +0000
committerRobin Watts <robin.watts@artifex.com>2011-02-04 15:51:42 +0000
commit78bd1dc656cb1b8721107fe07aa3dee4c0c3bd70 (patch)
tree215d13842f12168f0cd7bbddcea11eab0a6a79b2
parent690c359e5d32bfd92cbe5982bdc3965e6175ff68 (diff)
downloadghostpdl-78bd1dc656cb1b8721107fe07aa3dee4c0c3bd70.tar.gz
Fix problem with shifting in gsroprun.c. I had systematically got this
wrong throughout the code, but fixed it everywhere except this one case in an earlier commit. This completes the fix. No cluster changes expected. git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@12113 a1074d23-0009-0410-80fe-cf8c14f379e6
-rw-r--r--gs/base/gsroprun.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/gs/base/gsroprun.c b/gs/base/gsroprun.c
index a6aec309f..adb6db8e7 100644
--- a/gs/base/gsroprun.c
+++ b/gs/base/gsroprun.c
@@ -688,11 +688,12 @@ static void generic_rop_run8_const_s_1bit(rop_run_op *op, byte *d, int len)
if (troll == 0)
T = *t++;
else {
- if (--troll == 0) {
+ --troll;
+ T = tcolors[(*t >> troll) & 1];
+ if (troll == 0) {
troll = 8;
t++;
}
- T = tcolors[(*t >> troll) & 1];
}
if ((T != ttrans))
*d = proc(*d, S, T);