int
nto_find_and_open_solib (char *solib, unsigned o_flags, char **temp_pathname)
{
- char *buf, *arch_path, *nto_root, *endian, *base;
+ char *buf, *arch_path, *nto_root, *endian;
+ const char *base;
const char *arch;
int ret;
#define PATH_FMT \
sprintf (buf, PATH_FMT, arch_path, arch_path, arch_path, arch_path,
arch_path);
- /* Don't assume basename() isn't destructive. */
- base = strrchr (solib, '/');
- if (!base)
- base = solib;
- else
- base++; /* Skip over '/'. */
-
+ base = lbasename (solib);
ret = openp (buf, 1, base, o_flags, temp_pathname);
if (ret < 0 && base != solib)
{