From d2cbbcc782a1164a2dd3b1d8601a1798ae4077a9 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Tue, 26 Jun 2012 13:36:19 +0100 Subject: launch: Ensure errno from test_qemu_cmd is captured and printed. (cherry picked from commit 9e221e55b61e9f1cd0caf292ca609a4ca26f1d4d) --- src/launch.c | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/src/launch.c b/src/launch.c index 52966317..f756af8b 100644 --- a/src/launch.c +++ b/src/launch.c @@ -1350,8 +1350,8 @@ test_qemu (guestfs_h *g) * probably indicates that the qemu binary is missing. */ if (test_qemu_cmd (g, cmd, &g->qemu_help) == -1) { - error (g, _("command failed: %s\n\nIf qemu is located on a non-standard path, try setting the LIBGUESTFS_QEMU\nenvironment variable. There may also be errors printed above."), - cmd); + error (g, _("command failed: %s\nerrno: %s\n\nIf qemu is located on a non-standard path, try setting the LIBGUESTFS_QEMU\nenvironment variable. There may also be errors printed above."), + cmd, strerror (errno)); return -1; } @@ -1400,10 +1400,8 @@ read_all (guestfs_h *g, FILE *fp, char **ret) *ret = safe_realloc (g, *ret, n + BUFSIZ); p = &(*ret)[n]; r = fread (p, 1, BUFSIZ, fp); - if (ferror (fp)) { - perrorf (g, "read"); + if (ferror (fp)) return -1; - } n += r; goto again; } -- cgit