summaryrefslogtreecommitdiff
path: root/sys/src/cmd/gs
diff options
context:
space:
mode:
authorcinap_lenrek <cinap_lenrek@felloff.net>2015-04-17 06:18:43 +0200
committercinap_lenrek <cinap_lenrek@felloff.net>2015-04-17 06:18:43 +0200
commit81cbff917f965bf7fab35cb42d68ebf14a880aa5 (patch)
tree02f4aca29ce6872955e65fd63751d871a89b94b2 /sys/src/cmd/gs
parent57ad566dfc30b250229852619fc1073d47375dfa (diff)
gs: avoid 6c type propagation / constant folding issue for set_cb_end()
6c changed "- cmd_lagest_size + 1" into a *unsigned* 32bit constant. which got added to 64bit pointer making pcb->limit > pcb->end resulting in errors for partial commands in the buffer. removing the parentesis propagates the operation to 64bit.
Diffstat (limited to 'sys/src/cmd/gs')
-rw-r--r--sys/src/cmd/gs/src/gxclrast.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/sys/src/cmd/gs/src/gxclrast.c b/sys/src/cmd/gs/src/gxclrast.c
index a0e9a7632..0c0361388 100644
--- a/sys/src/cmd/gs/src/gxclrast.c
+++ b/sys/src/cmd/gs/src/gxclrast.c
@@ -119,7 +119,7 @@ private void
set_cb_end(command_buf_t *pcb, const byte *end)
{
pcb->end = end;
- pcb->limit = pcb->data + (pcb->size - cmd_largest_size + 1);
+ pcb->limit = pcb->data + pcb->size - cmd_largest_size + 1;
if ( pcb->limit > pcb->end )
pcb->limit = pcb->end;
}