xemacs/bugzilla-301352-fix-wrong-incrementing-in-macros.patch

39 lines
1.3 KiB
Diff

--- xemacs-21.5.28.20070807/src/mule-ccl.c 2007-08-21 15:48:12.000000000 +0200
+++ xemacs-21.5.28.20070807/src/mule-ccl.c 2007-08-21 17:22:14.000000000 +0200
@@ -1578,7 +1578,7 @@
Lisp_Object map, content, attrib, value;
int point, size, fin_ic;
- j = XCHAR_OR_INT (ccl_prog[ic++]); /* number of maps. */
+ j = XCHAR_OR_INT (ccl_prog[ic]); ic++; /* number of maps. */
fin_ic = ic + j;
op = reg[rrr];
if ((j > reg[RRR]) && (j >= 0))
@@ -1596,7 +1596,7 @@
for (;i < j;i++)
{
size = XVECTOR (Vcode_conversion_map_vector)->size;
- point = XCHAR_OR_INT (ccl_prog[ic++]);
+ point = XCHAR_OR_INT (ccl_prog[ic]); ic++;
if (point >= size) continue;
map =
XVECTOR (Vcode_conversion_map_vector)->contents[point];
@@ -1693,7 +1693,7 @@
stack_idx_of_map_multiple = 0;
map_set_rest_length =
- XCHAR_OR_INT (ccl_prog[ic++]); /* number of maps and separators. */
+ XCHAR_OR_INT (ccl_prog[ic]); ic++; /* number of maps and separators. */
fin_ic = ic + map_set_rest_length;
op = reg[rrr];
@@ -1880,7 +1880,7 @@
{
Lisp_Object map, attrib, value, content;
int size, point;
- j = XCHAR_OR_INT (ccl_prog[ic++]); /* map_id */
+ j = XCHAR_OR_INT (ccl_prog[ic]); ic++; /* map_id */
op = reg[rrr];
if (j >= XVECTOR (Vcode_conversion_map_vector)->size)
{