[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
master ac45f31: Fix dangerous code in xdisp.c
From: |
Eli Zaretskii |
Subject: |
master ac45f31: Fix dangerous code in xdisp.c |
Date: |
Wed, 24 Feb 2021 10:57:03 -0500 (EST) |
branch: master
commit ac45f314547ed9904ddc387157d3f4ba0c5fe1d2
Author: Eli Zaretskii <eliz@gnu.org>
Commit: Eli Zaretskii <eliz@gnu.org>
Fix dangerous code in xdisp.c
* src/xdisp.c (move_it_to, display_line): Make sure ZV_BYTE is
greater than 1 before fetching previous byte.
---
src/xdisp.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/src/xdisp.c b/src/xdisp.c
index cd3455a..cc0a689 100644
--- a/src/xdisp.c
+++ b/src/xdisp.c
@@ -10052,7 +10052,7 @@ move_it_to (struct it *it, ptrdiff_t to_charpos, int
to_x, int to_y, int to_vpos
&& (IT_CHARPOS (*it) > to_charpos
|| (IT_CHARPOS (*it) == to_charpos
&& to_charpos == ZV
- && FETCH_BYTE (ZV_BYTE - 1) != '\n')))
+ && (ZV_BYTE <= 1 || FETCH_BYTE (ZV_BYTE - 1) != '\n'))))
{
reached = 9;
goto out;
@@ -24118,7 +24118,8 @@ display_line (struct it *it, int cursor_vpos)
the logical order. */
if (IT_BYTEPOS (*it) > BEG_BYTE)
row->ends_at_zv_p =
- IT_BYTEPOS (*it) >= ZV_BYTE && FETCH_BYTE (ZV_BYTE - 1) != '\n';
+ IT_BYTEPOS (*it) >= ZV_BYTE
+ && (ZV_BYTE <= 1 || FETCH_BYTE (ZV_BYTE - 1) != '\n');
else
row->ends_at_zv_p = false;
break;
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- master ac45f31: Fix dangerous code in xdisp.c,
Eli Zaretskii <=