commit d6f8c236b8c601781cef6f8521fd47dffa1758b4 from: Neven Sajko via: David du Colombier <0intro@gmail.com> date: Thu Jan 02 20:47:07 2020 UTC acme: do not pass null pointers where disallowed The C standards disallow passing null pointers to memmove and memcmp. Change-Id: I1c88c2adbc32a23ef742f206038b8f7c4e0540c7 commit - f77d12f8d8a822aae41b835c0cca050928c58221 commit + d6f8c236b8c601781cef6f8521fd47dffa1758b4 blob - d694634f2bc0f03bb6041315a8e01327002b022c blob + dc9780954e0589e35d8cc5eb7a14b034d39534d2 --- src/cmd/acme/util.c +++ src/cmd/acme/util.c @@ -276,6 +276,8 @@ runeeq(Rune *s1, uint n1, Rune *s2, uint n2) { if(n1 != n2) return FALSE; + if(n1 == 0) + return TRUE; return memcmp(s1, s2, n1*sizeof(Rune)) == 0; } blob - 19b52f5c184b42f52bc4ffd433637cf834ba671c blob + b4f1a1cbcc530ce2ebf1f54390090ae7027c2f42 --- src/cmd/acme/wind.c +++ src/cmd/acme/wind.c @@ -476,7 +476,8 @@ winsettag1(Window *w) /* compute the text for the whole tag, replacing current only if it differs */ new = runemalloc(w->body.file->nname+100); i = 0; - runemove(new+i, w->body.file->name, w->body.file->nname); + if(w->body.file->nname != 0) + runemove(new, w->body.file->name, w->body.file->nname); i += w->body.file->nname; runemove(new+i, Ldelsnarf, 10); i += 10;