diff options
| author | Kim F. Storm | 2005-09-12 20:38:47 +0000 |
|---|---|---|
| committer | Kim F. Storm | 2005-09-12 20:38:47 +0000 |
| commit | 5874a24c2d252c2bee65469f60081a865cec802c (patch) | |
| tree | 2b82574eaeca86adb96a9869c12a6734c59781cb | |
| parent | 0fdbe3025f1e36f1c6bed744f3c9ac2a2af8130b (diff) | |
| download | emacs-5874a24c2d252c2bee65469f60081a865cec802c.tar.gz emacs-5874a24c2d252c2bee65469f60081a865cec802c.zip | |
(compose_chars_in_text): Fix setup of `pend'.
Unconditionally reload `ptr' and `pend' after eval.
| -rw-r--r-- | src/composite.c | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/src/composite.c b/src/composite.c index daa6dceb3c6..02abb66e1e5 100644 --- a/src/composite.c +++ b/src/composite.c | |||
| @@ -616,7 +616,7 @@ compose_chars_in_text (start, end, string) | |||
| 616 | GCPRO1 (string); | 616 | GCPRO1 (string); |
| 617 | stop = end; | 617 | stop = end; |
| 618 | ptr = SDATA (string) + string_char_to_byte (string, start); | 618 | ptr = SDATA (string) + string_char_to_byte (string, start); |
| 619 | pend = ptr + SBYTES (string); | 619 | pend = SDATA (string) + SBYTES (string); |
| 620 | } | 620 | } |
| 621 | else | 621 | else |
| 622 | { | 622 | { |
| @@ -680,10 +680,19 @@ compose_chars_in_text (start, end, string) | |||
| 680 | { | 680 | { |
| 681 | start += XINT (val); | 681 | start += XINT (val); |
| 682 | if (STRINGP (string)) | 682 | if (STRINGP (string)) |
| 683 | ptr = SDATA (string) + string_char_to_byte (string, start); | 683 | { |
| 684 | ptr = SDATA (string) + string_char_to_byte (string, start); | ||
| 685 | pend = SDATA (string) + SBYTES (string); | ||
| 686 | } | ||
| 684 | else | 687 | else |
| 685 | ptr = CHAR_POS_ADDR (start); | 688 | ptr = CHAR_POS_ADDR (start); |
| 686 | } | 689 | } |
| 690 | else if (STRINGP (string)) | ||
| 691 | { | ||
| 692 | start++; | ||
| 693 | ptr = SDATA (string) + string_char_to_byte (string, start); | ||
| 694 | pend = SDATA (string) + SBYTES (string); | ||
| 695 | } | ||
| 687 | else | 696 | else |
| 688 | { | 697 | { |
| 689 | start++; | 698 | start++; |