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. Signed-off-by: Matt Helsley <matthltc@xxxxxxxxxx> --- checkpoint/checkpoint.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) diff --git a/checkpoint/checkpoint.c b/checkpoint/checkpoint.c index eaa9105..5a76d2b 100644 --- a/checkpoint/checkpoint.c +++ b/checkpoint/checkpoint.c @@ -258,11 +258,11 @@ int ckpt_write_err(struct ckpt_ctx *ctx, char *fmt0, 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@xxxxxxxxxxxxxxxxxxxxxxxxxx https://lists.linux-foundation.org/mailman/listinfo/containers