diff options
Diffstat (limited to 'winsup/utils/dump_setup.cc')
-rw-r--r-- | winsup/utils/dump_setup.cc | 37 |
1 files changed, 19 insertions, 18 deletions
diff --git a/winsup/utils/dump_setup.cc b/winsup/utils/dump_setup.cc index 3e71f1a02..e3dacde6c 100644 --- a/winsup/utils/dump_setup.cc +++ b/winsup/utils/dump_setup.cc @@ -91,24 +91,25 @@ parse_filename (const char *in_fn, fileparse& f) f.pkg[0] = f.what[0] = '\0'; p = base (fn); for (ver = p; *ver; ver++) - if (*ver == '-') - if (isdigit (ver[1])) - { - *ver++ = '\0'; - strcpy (f.pkg, p); - break; - } - else if (strcasecmp (ver, "-src") == 0 || - strcasecmp (ver, "-patch") == 0) - { - *ver++ = '\0'; - strcpy (f.pkg, p); - strcpy (f.what, strlwr (ver)); - strcpy (f.pkgtar, p); - strcat (f.pkgtar, f.tail); - ver = strchr (ver, '\0'); - break; - } + if (*ver != '-') + continue; + else if (isdigit (ver[1])) + { + *ver++ = '\0'; + strcpy (f.pkg, p); + break; + } + else if (strcasecmp (ver, "-src") == 0 || + strcasecmp (ver, "-patch") == 0) + { + *ver++ = '\0'; + strcpy (f.pkg, p); + strcpy (f.what, strlwr (ver)); + strcpy (f.pkgtar, p); + strcat (f.pkgtar, f.tail); + ver = strchr (ver, '\0'); + break; + } if (!f.pkg[0]) strcpy (f.pkg, p); |