[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [RFC] input.cpp: Remove use of strncat(3)
From: |
Steffen Nurpmeso |
Subject: |
Re: [RFC] input.cpp: Remove use of strncat(3) |
Date: |
Tue, 06 Dec 2022 00:11:54 +0100 |
User-agent: |
s-nail v14.9.24-363-ged0feb8d53 |
Alejandro Colomar wrote in
<20221205223936.8290-1-alx@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)