From: Richard Jones Date: Wed, 12 May 2010 18:01:29 +0000 (+0100) Subject: fish: Fix guestfish -N option when called with unknown image type. X-Git-Tag: 1.3.12~6 X-Git-Url: http://git.annexia.org/?a=commitdiff_plain;h=520d895383c6e2b3eff1c4e3761624ebbb5f8b09;p=libguestfs.git fish: Fix guestfish -N option when called with unknown image type. Previously it was falling off the end of the loop if you called it with an unknown image type. --- diff --git a/fish/prep.c b/fish/prep.c index 6fd1d6b..6fe4ba9 100644 --- a/fish/prep.c +++ b/fish/prep.c @@ -104,6 +104,8 @@ static const struct prep preps[] = { }, }; +#define nr_preps (sizeof preps / sizeof preps[0]) + void list_prepared_drives (void) { @@ -111,7 +113,7 @@ list_prepared_drives (void) printf (_("List of available prepared disk images:\n\n")); - for (i = 0; i < sizeof preps / sizeof preps[0]; ++i) { + for (i = 0; i < nr_preps; ++i) { printf (_("\ guestfish -N %-16s %s\n\ \n\ @@ -169,11 +171,11 @@ parse_type_string (const char *type_string) /* Match on the type part (without parameters). */ size_t len = strcspn (type_string, ":"); - for (i = 0; i < sizeof preps / sizeof preps[0]; ++i) + for (i = 0; i < nr_preps; ++i) if (STRCASEEQLEN (type_string, preps[i].name, len)) break; - if (preps[i].name == NULL) { + if (i == nr_preps) { fprintf (stderr, _("\ guestfish: -N parameter '%s': no such prepared disk image known.\n\ Use 'guestfish -N list' to list possible values for the -N parameter.\n"),