[PATCH] kconfig: nconf: Fix uncleared lines on help screens

Shankari Anand posted 1 patch 2 months, 2 weeks ago
There is a newer version of this series
scripts/kconfig/nconf.gui.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
[PATCH] kconfig: nconf: Fix uncleared lines on help screens
Posted by Shankari Anand 2 months, 2 weeks ago
commit 1b92b18ec419 ("kconfig: nconf: Ensure null termination where
strncpy is used")
introduced a regression where help screens (F1, F2, F3) no longer properly 
clear short lines of text,
resulting in duplicated or trailing content when lines are overwritten.

Revert the null-termination change to match
the actual length of the copied string.

Reported-by: Randy Dunlap <rdunlap@infradead.org>
Fixes: 1b92b18ec419 ("kconfig: nconf: Ensure null termination where strncpy is used")
Signed-off-by: Shankari Anand <shankari.ak0208@gmail.com>
---
I apologise for the overlook from my side. This should set it right.
Link of the report : 
https://lore.kernel.org/lkml/CAK7LNAT54nvwYmTy20Ep8U2kr4thn68yYWXi9R-d3Yx3iXs=Bg@mail.gmail.com/T/#
---
 scripts/kconfig/nconf.gui.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/scripts/kconfig/nconf.gui.c b/scripts/kconfig/nconf.gui.c
index 475a403ab8ba..7206437e784a 100644
--- a/scripts/kconfig/nconf.gui.c
+++ b/scripts/kconfig/nconf.gui.c
@@ -177,7 +177,7 @@ void fill_window(WINDOW *win, const char *text)
 		const char *line = get_line(text, i);
 		int len = get_line_length(line);
 		strncpy(tmp, line, min(len, x));
-		tmp[sizeof(tmp) - 1] = '\0';
+		tmp[len] = '\0';
 		mvwprintw(win, i, 0, "%s", tmp);
 	}
 }

base-commit: d086c886ceb9f59dea6c3a9dae7eb89e780a20c9
-- 
2.34.1
Re: [PATCH] kconfig: nconf: Fix uncleared lines on help screens
Posted by Randy Dunlap 2 months, 2 weeks ago

On 7/19/25 7:32 AM, Shankari Anand wrote:
> commit 1b92b18ec419 ("kconfig: nconf: Ensure null termination where
> strncpy is used")
> introduced a regression where help screens (F1, F2, F3) no longer properly 
> clear short lines of text,
> resulting in duplicated or trailing content when lines are overwritten.
> 
> Revert the null-termination change to match
> the actual length of the copied string.
> 
> Reported-by: Randy Dunlap <rdunlap@infradead.org>
> Fixes: 1b92b18ec419 ("kconfig: nconf: Ensure null termination where strncpy is used")
> Signed-off-by: Shankari Anand <shankari.ak0208@gmail.com>

Acked-by: Randy Dunlap <rdunlap@infradead.org>
Tested-by: Randy Dunlap <rdunlap@infradead.org>

Thanks.


> ---
> I apologise for the overlook from my side. This should set it right.
> Link of the report : 
> https://lore.kernel.org/lkml/CAK7LNAT54nvwYmTy20Ep8U2kr4thn68yYWXi9R-d3Yx3iXs=Bg@mail.gmail.com/T/#

This link should be used after Reported-by: like so:

Closes: https://lore.kernel.org/lkml/CAK7LNAT54nvwYmTy20Ep8U2kr4thn68yYWXi9R-d3Yx3iXs=Bg@mail.gmail.com/T/#


> ---
>  scripts/kconfig/nconf.gui.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/scripts/kconfig/nconf.gui.c b/scripts/kconfig/nconf.gui.c
> index 475a403ab8ba..7206437e784a 100644
> --- a/scripts/kconfig/nconf.gui.c
> +++ b/scripts/kconfig/nconf.gui.c
> @@ -177,7 +177,7 @@ void fill_window(WINDOW *win, const char *text)
>  		const char *line = get_line(text, i);
>  		int len = get_line_length(line);
>  		strncpy(tmp, line, min(len, x));
> -		tmp[sizeof(tmp) - 1] = '\0';
> +		tmp[len] = '\0';
>  		mvwprintw(win, i, 0, "%s", tmp);
>  	}
>  }
> 
> base-commit: d086c886ceb9f59dea6c3a9dae7eb89e780a20c9

-- 
~Randy