From 1bf3941b9ccabef122cc6479004d18ddcb935eef Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Sat, 6 Aug 2011 15:49:55 +0100 Subject: [PATCH 1/1] docs: Clarify error handler example. --- src/guestfs.pod | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/src/guestfs.pod b/src/guestfs.pod index 76570a7..a1831c0 100644 --- a/src/guestfs.pod +++ b/src/guestfs.pod @@ -1344,8 +1344,6 @@ been printed to C before the program exits. For other programs the caller will almost certainly want to install an alternate error handler or do error handling in-line like this: - g = guestfs_create (); - /* This disables the default behaviour of printing errors on stderr. */ guestfs_set_error_handler (g, NULL, NULL); @@ -1354,9 +1352,12 @@ alternate error handler or do error handling in-line like this: /* Examine the error message and print it etc. */ char *msg = guestfs_last_error (g); int errnum = guestfs_last_errno (g); - fprintf (stderr, "%s\n", msg); + fprintf (stderr, "%s", msg); + if (errnum != 0) + fprintf (stderr, ": %s", strerror (errnum)); + fprintf (stderr, "\n"); /* ... */ - } + } Out of memory errors are handled differently. The default action is to call L. If this is undesirable, then you can set a -- 1.8.3.1