diff options
author | Thorsten Blum <thorsten.blum@linux.dev> | 2025-08-11 18:16:48 +0200 |
---|---|---|
committer | Nathan Chancellor <nathan@kernel.org> | 2025-08-18 10:46:19 -0700 |
commit | 35883b030c5f19f12c7fe53319c93cb740e476be (patch) | |
tree | b64ae7d9f48130d2410deb644881376dc3e4b16b /scripts | |
parent | 2d0ec4a9319c5207fdd2359e8543ef35012e8d4e (diff) |
kconfig: nconf: Format and print 'line' without a temporary copy
Use "%.*s" as the format specifier and supply the 'line' length 'len' to
mvwprintw() to format and print each line without making a temporary
copy. Remove the temporary buffer.
Signed-off-by: Thorsten Blum <thorsten.blum@linux.dev>
Reviewed-by: Nicolas Schier <nsc@kernel.org>
Link: https://lore.kernel.org/r/20250811161650.37428-2-thorsten.blum@linux.dev
Signed-off-by: Nathan Chancellor <nathan@kernel.org>
Diffstat (limited to 'scripts')
-rw-r--r-- | scripts/kconfig/nconf.gui.c | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/scripts/kconfig/nconf.gui.c b/scripts/kconfig/nconf.gui.c index 7206437e784a..2d097bc7ef1a 100644 --- a/scripts/kconfig/nconf.gui.c +++ b/scripts/kconfig/nconf.gui.c @@ -173,12 +173,10 @@ void fill_window(WINDOW *win, const char *text) /* do not go over end of line */ total_lines = min(total_lines, y); for (i = 0; i < total_lines; i++) { - char tmp[x+10]; const char *line = get_line(text, i); - int len = get_line_length(line); - strncpy(tmp, line, min(len, x)); - tmp[len] = '\0'; - mvwprintw(win, i, 0, "%s", tmp); + int len = min(get_line_length(line), x); + + mvwprintw(win, i, 0, "%.*s", len, line); } } |