lkml.org 
[lkml]   [2018]   [May]   [4]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH] init/main.c: simplify repair_env_string

Cleaning out my INBOX, I stumbled across this old patch.

On Fri, 15 Dec 2017 22:33:17 +0100
Michal Suchanek <msuchanek@suse.de> wrote:

> Quoting characters are now removed from the parameter so value always
> follows directly after the NUL terminating parameter name.
>
> Signed-off-by: Michal Suchanek <msuchanek@suse.de>
> ---
> init/main.c | 13 ++++---------
> 1 file changed, 4 insertions(+), 9 deletions(-)
>
> Since the previous "[PATCH v9 3/8] lib/cmdline.c: add backslash support to
> kernel commandline parsing" adds the memmove in lib/cmdline.c it is now
> superfluous in init/main.c

I don't believe the above patches were ever applied. Were they?

-- Steve

>
> diff --git a/init/main.c b/init/main.c
> index 1f5fdedbb293..1e5b1dc940d9 100644
> --- a/init/main.c
> +++ b/init/main.c
> @@ -244,15 +244,10 @@ static int __init repair_env_string(char *param, char *val,
> const char *unused, void *arg)
> {
> if (val) {
> - /* param=val or param="val"? */
> - if (val == param+strlen(param)+1)
> - val[-1] = '=';
> - else if (val == param+strlen(param)+2) {
> - val[-2] = '=';
> - memmove(val-1, val, strlen(val)+1);
> - val--;
> - } else
> - BUG();
> + int parm_len = strlen(param);
> +
> + param[parm_len] = '=';
> + BUG_ON(val != param + parm_len + 1);
> }
> return 0;
> }

\
 
 \ /
  Last update: 2018-05-04 17:41    [W:0.201 / U:0.012 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site