summaryrefslogtreecommitdiff
path: root/src/term.c
diff options
context:
space:
mode:
authorPaul Eggert <eggert@cs.ucla.edu>2021-10-03 17:52:04 -0700
committerPaul Eggert <eggert@cs.ucla.edu>2021-10-03 17:52:28 -0700
commit7e871dcd27bdb827573ca97e609632e178e76f64 (patch)
tree3e78d1f11f9465f95962f067ae749ec69f1108e0 /src/term.c
parent2a00634880adb20071686906ebb183326f2060e0 (diff)
downloademacs-7e871dcd27bdb827573ca97e609632e178e76f64.tar.gz
Remove encode_terminal_code UNINITs
* src/term.c (encode_terminal_code): Clarify by removing a couple of UNINITs and testing the local variable ‘cmp’ instead of retesting src->u.cmp.automatic. This pacifies gcc 11.2.1 -Wanalyzer-null-dereference.
Diffstat (limited to 'src/term.c')
-rw-r--r--src/term.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/term.c b/src/term.c
index 7d9fe8cee30..0858f816851 100644
--- a/src/term.c
+++ b/src/term.c
@@ -549,13 +549,14 @@ encode_terminal_code (struct glyph *src, int src_len,
{
if (src->type == COMPOSITE_GLYPH)
{
- struct composition *cmp UNINIT;
- Lisp_Object gstring UNINIT;
+ struct composition *cmp;
+ Lisp_Object gstring;
int i;
nbytes = buf - encode_terminal_src;
if (src->u.cmp.automatic)
{
+ cmp = NULL;
gstring = composition_gstring_from_id (src->u.cmp.id);
required = src->slice.cmp.to - src->slice.cmp.from + 1;
}
@@ -575,7 +576,7 @@ encode_terminal_code (struct glyph *src, int src_len,
buf = encode_terminal_src + nbytes;
}
- if (src->u.cmp.automatic)
+ if (!cmp)
for (i = src->slice.cmp.from; i <= src->slice.cmp.to; i++)
{
Lisp_Object g = LGSTRING_GLYPH (gstring, i);