From d0afc47bfb55ad1d5950b0a316870106ec33a2f6 Mon Sep 17 00:00:00 2001 From: Tiago Cunha Date: Wed, 28 Oct 2009 23:10:05 +0000 Subject: [PATCH] Sync OpenBSD patchset 465: Call fstat() after fopen() rather than stat() before. --- cmd-load-buffer.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/cmd-load-buffer.c b/cmd-load-buffer.c index 7a79c502..cee11857 100644 --- a/cmd-load-buffer.c +++ b/cmd-load-buffer.c @@ -1,4 +1,4 @@ -/* $Id: cmd-load-buffer.c,v 1.10 2009-09-07 23:48:54 tcunha Exp $ */ +/* $Id: cmd-load-buffer.c,v 1.11 2009-10-28 23:10:05 tcunha Exp $ */ /* * Copyright (c) 2009 Tiago Cunha @@ -56,13 +56,14 @@ cmd_load_buffer_exec(struct cmd *self, struct cmd_ctx *ctx) if ((s = cmd_find_session(ctx, data->target)) == NULL) return (-1); - if (stat(data->arg, &sb) < 0) { + if ((f = fopen(data->arg, "rb")) == NULL) { ctx->error(ctx, "%s: %s", data->arg, strerror(errno)); return (-1); } - if ((f = fopen(data->arg, "rb")) == NULL) { + if (fstat(fileno(f), &sb) < 0) { ctx->error(ctx, "%s: %s", data->arg, strerror(errno)); + fclose(f); return (-1); }