bytes = BYTES_BY_CHAR_HEAD (c); \
if (bytes >= 2 && bytes <= pend - p) \
{ \
- int ch; \
+ int ch = STRING_CHAR (p, bytes); \
\
- if (dp && (ch = STRING_CHAR (p, bytes), \
- VECTORP (DISP_CHAR_VECTOR (dp, ch)))) \
- width = XVECTOR (DISP_CHAR_VECTOR (dp, ch))->size; \
+ if (CHAR_VALID_P (ch, 0)) \
+ { \
+ if (dp && VECTORP (DISP_CHAR_VECTOR (dp, ch))) \
+ width = XVECTOR (DISP_CHAR_VECTOR (dp, ch))->size; \
+ else \
+ width = WIDTH_BY_CHAR_HEAD (c); \
+ } \
else \
- width = WIDTH_BY_CHAR_HEAD (c); \
+ width = bytes * 4; \
if (width > 1) \
wide_column = width; \
} \