]> git.eshelyaron.com Git - emacs.git/commitdiff
Fix segfault in composite.c
authorEli Zaretskii <eliz@gnu.org>
Sat, 9 Jul 2022 10:16:12 +0000 (13:16 +0300)
committerEli Zaretskii <eliz@gnu.org>
Sat, 9 Jul 2022 10:16:12 +0000 (13:16 +0300)
* src/composite.c (find_automatic_composition): Don't use
narrowed_begv if it's zero.  This avoids segfault in
BACKWARD_CHAR, since zero is not a valid buffer position.

src/composite.c

index d8998b5a1f3c16e77a535c9efbab4298afb5711e..4f7b4b0a2c773c4ad5b657b505e691e258fce240 100644 (file)
@@ -1590,7 +1590,7 @@ find_automatic_composition (ptrdiff_t pos, ptrdiff_t limit, ptrdiff_t backlim,
       /* In buffers with very long lines, this function becomes very
         slow.  Pretend that the buffer is narrowed to make it fast.  */
       narrowed_begv = get_narrowed_begv (w);
-      if (pos > narrowed_begv)
+      if (narrowed_begv && pos > narrowed_begv)
        head = narrowed_begv;
       cur.pos_byte = CHAR_TO_BYTE (cur.pos);
       cur.p = BYTE_POS_ADDR (cur.pos_byte);