Alejandro Colomar wrote in <20221205223936.8290-1-...@kernel.org>: ... |--- a/src/roff/troff/input.cpp |+++ b/src/roff/troff/input.cpp |@@ -7892,7 +7892,7 @@ void do_macro_source(bool quietly) | MACRO_POSTFIX, sizeof(MACRO_POSTFIX) - 1) == 0) { | char *s = new char[fnlen + sizeof(MACRO_PREFIX)]; | strcpy(s, MACRO_PREFIX); |- strncat(s, fn, fnlen - sizeof(MACRO_POSTFIX) + 1); |+ strlcat(s, fn, sizeof(MACRO_PREFIX)); | fp = mac_path->open_file(s, &path); | delete[] s;
To me this looks like a perfect usage of simple memcpy() since both lengths are known. Maybe even better would be a C++ string type so you could do mac_path->open_file(resize().append().append().cp()), but this seems off topic. --steffen | |Der Kragenbaer, The moon bear, |der holt sich munter he cheerfully and one by one |einen nach dem anderen runter wa.ks himself off |(By Robert Gernhardt)