[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#41125: 28.0.50; Fwindow_text_pixel_size uses FETCH_CHAR (charpos)
From: |
Pip Cet |
Subject: |
bug#41125: 28.0.50; Fwindow_text_pixel_size uses FETCH_CHAR (charpos) |
Date: |
Thu, 7 May 2020 11:55:07 +0000 |
Fwindow_text_pixel_size contains this code:
start = pos = BEGV;
while ((pos++ < ZV) && (c = FETCH_CHAR (pos))
&& (c == ' ' || c == '\t' || c == '\n' || c == '\r'))
start = pos;
while ((pos-- > BEGV) && (c = FETCH_CHAR (pos)) && (c == ' ' ||
c == '\t'))
start = pos;
which cannot possibly be correct: FETCH_CHAR takes a byte position,
not a character position, but BEGV and ZV are measured in characters.
(I'm familiarizing myself with the xdisp.c code, partly by replacing
bytepos/charpos pairs of variables with a combined pos_t type
variable. I think that's a good idea partly because it would prevent
precisely this kind of bug.)
- bug#41125: 28.0.50; Fwindow_text_pixel_size uses FETCH_CHAR (charpos),
Pip Cet <=