summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--cmd-load-buffer.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/cmd-load-buffer.c b/cmd-load-buffer.c
index 944c1237..b6386b83 100644
--- a/cmd-load-buffer.c
+++ b/cmd-load-buffer.c
@@ -66,8 +66,8 @@ cmd_load_buffer_exec(struct cmd *self, struct cmd_ctx *ctx)
ctx->error(ctx, "%s: %s", data->arg, strerror(errno));
goto error;
}
- if (sb.st_size > SIZE_MAX) {
- ctx->error(ctx, "%s: file too large", data->arg);
+ if (sb.st_size <= 0 || (uintmax_t) sb.st_size > SIZE_MAX) {
+ ctx->error(ctx, "%s: file empty or too large", data->arg);
goto error;
}
psize = (size_t) sb.st_size;