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);
/* 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<abort(3)>. If this is undesirable, then you can set a