Fix setprogname() emulation on systems without it.
For fully-qualified paths, store the string starting after the last slash, not at the slash itself.
This commit is contained in:
@@ -38,8 +38,8 @@ extern const char *__progname;
|
|||||||
void
|
void
|
||||||
sudo_setprogname(const char *name)
|
sudo_setprogname(const char *name)
|
||||||
{
|
{
|
||||||
const char *base = strrchr(name, '/');
|
const char *slash = strrchr(name, '/');
|
||||||
__progname = base ? base : name;
|
__progname = slash ? slash + 1 : name;
|
||||||
}
|
}
|
||||||
# endif
|
# endif
|
||||||
|
|
||||||
@@ -123,8 +123,8 @@ sudo_getprogname(void)
|
|||||||
void
|
void
|
||||||
sudo_setprogname(const char *name)
|
sudo_setprogname(const char *name)
|
||||||
{
|
{
|
||||||
const char *base = strrchr(name, '/');
|
const char *slash = strrchr(name, '/');
|
||||||
progname = base ? base : name;
|
progname = slash ? slash + 1 : name;
|
||||||
}
|
}
|
||||||
#endif /* !HAVE_GETPROGNAME */
|
#endif /* !HAVE_GETPROGNAME */
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user