On Monday 04 April 2016 13:28:51 Richard W.M. Jones wrote:
Like with the previous commit, this replaces instances of:
if (something_bad) {
fprintf (stderr, "%s: error message\n", guestfs_int_program_name);
exit (EXIT_FAILURE);
}
with:
if (something_bad)
error (EXIT_FAILURE, 0, "error message");
(except in a few cases were errno was incorrectly being ignored, in
which case I have fixed that).
It's slightly more complex than the previous commit because we must be
careful to:
- Remove the program name (since error(3) prints it).
- Remove any trailing \n character from the message.
Candidates for replacement were found using:
pcregrep --buffer-size 10M -M '\bfprintf\b.*\n.*\bexit\b' `git ls-files`
---
Really nice improvement -- just a couple of notes.
@@ -130,10 +131,8 @@ main (int argc, char *argv[])
int r;
g = guestfs_create ();
- if (g == NULL) {
- fprintf (stderr, _("guestfs_create: failed to create handle\n"));
- exit (EXIT_FAILURE);
- }
+ if (g == NULL)
+ error (EXIT_FAILURE, errno, "guestfs_create");
What about
error (EXIT_FAILURE, errno, _("failed to create handle"));
instead? Also for all the occurrences of this change, in public tools
only (i.e. not for tests, nor p2v).
Something I noticed while reading the changes is that some of the error
messages end with period, while it seems most of them don't. Should
all of them be without?
Thanks,
--
Pino Toscano