mirror of
https://github.com/bminor/binutils-gdb.git
synced 2025-12-26 17:18:55 +00:00
2010-01-13 Tristan Gingold <gingold@adacore.com>
* archive.c (normalize): Use lbasename. (bfd_bsd_truncate_arname): Ditto. (bfd_gnu_truncate_arname): Ditto.
This commit is contained in:
@@ -1312,23 +1312,7 @@ normalize (bfd *abfd, const char *file)
|
||||
static const char *
|
||||
normalize (bfd *abfd ATTRIBUTE_UNUSED, const char *file)
|
||||
{
|
||||
const char *filename = strrchr (file, '/');
|
||||
|
||||
#ifdef HAVE_DOS_BASED_FILE_SYSTEM
|
||||
{
|
||||
/* We could have foo/bar\\baz, or foo\\bar, or d:bar. */
|
||||
char *bslash = strrchr (file, '\\');
|
||||
if (filename == NULL || (bslash != NULL && bslash > filename))
|
||||
filename = bslash;
|
||||
if (filename == NULL && file[0] != '\0' && file[1] == ':')
|
||||
filename = file + 1;
|
||||
}
|
||||
#endif
|
||||
if (filename != NULL)
|
||||
filename++;
|
||||
else
|
||||
filename = file;
|
||||
return filename;
|
||||
return lbasename (file);
|
||||
}
|
||||
#endif
|
||||
|
||||
@@ -1820,25 +1804,9 @@ bfd_bsd_truncate_arname (bfd *abfd, const char *pathname, char *arhdr)
|
||||
{
|
||||
struct ar_hdr *hdr = (struct ar_hdr *) arhdr;
|
||||
size_t length;
|
||||
const char *filename = strrchr (pathname, '/');
|
||||
const char *filename = lbasename (pathname);
|
||||
size_t maxlen = ar_maxnamelen (abfd);
|
||||
|
||||
#ifdef HAVE_DOS_BASED_FILE_SYSTEM
|
||||
{
|
||||
/* We could have foo/bar\\baz, or foo\\bar, or d:bar. */
|
||||
char *bslash = strrchr (pathname, '\\');
|
||||
if (filename == NULL || (bslash != NULL && bslash > filename))
|
||||
filename = bslash;
|
||||
if (filename == NULL && pathname[0] != '\0' && pathname[1] == ':')
|
||||
filename = pathname + 1;
|
||||
}
|
||||
#endif
|
||||
|
||||
if (filename == NULL)
|
||||
filename = pathname;
|
||||
else
|
||||
++filename;
|
||||
|
||||
length = strlen (filename);
|
||||
|
||||
if (length <= maxlen)
|
||||
@@ -1868,26 +1836,9 @@ bfd_gnu_truncate_arname (bfd *abfd, const char *pathname, char *arhdr)
|
||||
{
|
||||
struct ar_hdr *hdr = (struct ar_hdr *) arhdr;
|
||||
size_t length;
|
||||
const char *filename = strrchr (pathname, '/');
|
||||
const char *filename = lbasename (pathname);
|
||||
size_t maxlen = ar_maxnamelen (abfd);
|
||||
|
||||
#ifdef HAVE_DOS_BASED_FILE_SYSTEM
|
||||
{
|
||||
/* We could have foo/bar\\baz, or foo\\bar, or d:bar. */
|
||||
char *bslash = strrchr (pathname, '\\');
|
||||
|
||||
if (filename == NULL || (bslash != NULL && bslash > filename))
|
||||
filename = bslash;
|
||||
if (filename == NULL && pathname[0] != '\0' && pathname[1] == ':')
|
||||
filename = pathname + 1;
|
||||
}
|
||||
#endif
|
||||
|
||||
if (filename == NULL)
|
||||
filename = pathname;
|
||||
else
|
||||
++filename;
|
||||
|
||||
length = strlen (filename);
|
||||
|
||||
if (length <= maxlen)
|
||||
|
||||
Reference in New Issue
Block a user