[Devel] Re: [PATCH] Fix ckpt_write_err() check for empty string

Matt Helsley matthltc at us.ibm.com
Fri Oct 2 20:24:51 PDT 2009


On Fri, Oct 02, 2009 at 06:06:27PM -0700, Matt Helsley wrote:
> The test for empty error strings does not work because we always add 2
> to len before testing if it's 0. Fix by checking before adding 2.

It occurs to me that this should be an [RFC] patch because there are
two alternative solutions:

1. Compare to 2 after addition

2. Drop the check altogether -- the result will be an empty string in the
	checkpoint image. This means that ckpt_write_err() would always
	output a CKPT_HDR_ERROR with at least an empty string. I wonder
	if this wouldn't be preferrable to no CKPT_HDR_ERROR at all.

Cheers,
	-Matt Helsley

> 
> Signed-off-by: Matt Helsley <matthltc at us.ibm.com>
> ---
>  checkpoint/checkpoint.c |    4 ++--
>  1 files changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/checkpoint/checkpoint.c b/checkpoint/checkpoint.c
> index 1eeb557..bcd5d86 100644
> --- a/checkpoint/checkpoint.c
> +++ b/checkpoint/checkpoint.c
> @@ -258,11 +258,11 @@ int ckpt_write_err(struct ckpt_ctx *ctx, char *pre, char *fmt, ...)
>  	}
> 
>  	str = ctx->err_string;
> -	len = strlen(str + 1) + 2;	/* leading and trailing '\0' */
> -
> +	len = strlen(str + 1);
>  	if (len == 0)	/* empty error string */
>  		return 0;
> 
> +	len += 2; 	/* leading and trailing '\0' */
>  	ret = ckpt_write_obj_type(ctx, NULL, 0, CKPT_HDR_ERROR);
>  	if (!ret)
>  		ret = ckpt_write_string(ctx, str, len);
> -- 
> 1.5.6.3
> 
_______________________________________________
Containers mailing list
Containers at lists.linux-foundation.org
https://lists.linux-foundation.org/mailman/listinfo/containers




More information about the Devel mailing list