[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

Re: [PATCH 01/10] Support systems that do not have /boot as a separate filesystem



On 03/20/2012 02:55 PM, Cleber Rosa wrote:
> While testing grubby on systems with a root (/) filesystem that includes
> the /boot directory, it was noticed that grubby displayed the prefix (/boot)
> twice.
> 
> This patch prevents printing the prefix twice on kernel and initrd lines.
> 
> Signed-off-by: Cleber Rosa <crosa redhat com>

This needs a test case as well.

> ---
>  grubby.c |   11 +++++++++--
>  1 files changed, 9 insertions(+), 2 deletions(-)
> 
> diff --git a/grubby.c b/grubby.c
> index 601ba8d..bf5fb37 100644
> --- a/grubby.c
> +++ b/grubby.c
> @@ -1861,7 +1861,10 @@ void displayEntry(struct singleEntry * entry, const char * prefix, int index) {
>          return;
>      }
>  
> -    printf("kernel=%s%s\n", prefix, line->elements[1].item);
> +    if (!strncmp(prefix, line->elements[1].item, strlen(prefix)))
> +	printf("kernel=%s\n", line->elements[1].item);
> +    else
> +	printf("kernel=%s%s\n", prefix, line->elements[1].item);
>  
>      if (line->numElements >= 3) {
>  	printf("args=\"");
> @@ -1920,7 +1923,11 @@ void displayEntry(struct singleEntry * entry, const char * prefix, int index) {
>      line = getLineByType(LT_INITRD, entry->lines);
>  
>      if (line && line->numElements >= 2) {
> -	printf("initrd=%s", prefix);
> +	if (!strncmp(prefix, line->elements[1].item, strlen(prefix)))
> +	    printf("initrd=");
> +	else
> +	    printf("initrd=%s", prefix);
> +
>  	for (i = 1; i < line->numElements; i++)
>  	    printf("%s%s", line->elements[i].item, line->elements[i].indent);
>  	printf("\n");


-- 
        Peter

RFC 882 put the dots in .com.

01234567890123456789012345678901234567890123456789012345678901234567890123456789


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]