diff options
Diffstat (limited to 'src/coding.c')
| -rw-r--r-- | src/coding.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/src/coding.c b/src/coding.c index 50268099413..e15d725af3a 100644 --- a/src/coding.c +++ b/src/coding.c | |||
| @@ -8756,6 +8756,7 @@ to the string. */) | |||
| 8756 | } | 8756 | } |
| 8757 | 8757 | ||
| 8758 | positions = Qnil; | 8758 | positions = Qnil; |
| 8759 | charset_map_loaded = 0; | ||
| 8759 | while (1) | 8760 | while (1) |
| 8760 | { | 8761 | { |
| 8761 | int c; | 8762 | int c; |
| @@ -8783,6 +8784,16 @@ to the string. */) | |||
| 8783 | } | 8784 | } |
| 8784 | 8785 | ||
| 8785 | from++; | 8786 | from++; |
| 8787 | if (charset_map_loaded && NILP (string)) | ||
| 8788 | { | ||
| 8789 | p = CHAR_POS_ADDR (from); | ||
| 8790 | pend = CHAR_POS_ADDR (to); | ||
| 8791 | if (from < GPT && to >= GPT) | ||
| 8792 | stop = GPT_ADDR; | ||
| 8793 | else | ||
| 8794 | stop = pend; | ||
| 8795 | charset_map_loaded = 0; | ||
| 8796 | } | ||
| 8786 | } | 8797 | } |
| 8787 | 8798 | ||
| 8788 | return (NILP (count) ? Fcar (positions) : Fnreverse (positions)); | 8799 | return (NILP (count) ? Fcar (positions) : Fnreverse (positions)); |