diff --git a/src/m_misc.c b/src/m_misc.c index 2c1c70aa720c2bdaf60f6df6ed2828e35e7b2053..084dc2896eb19b2d23eae9d5ea1f3ad2839cba33 100644 --- a/src/m_misc.c +++ b/src/m_misc.c @@ -2389,7 +2389,7 @@ boolean M_IsStringEmpty(const char *s) const char *M_GetFilenameFromPath(const char *path) { - const char *slash = strrchr(path, '/'); + const char *slash = strrchr(path, PATHSEP[0]); if (slash) return slash + 1; return path; diff --git a/src/p_setup.c b/src/p_setup.c index b768fa589aebbf88b1b38bab298123a4f239ad87..0e45d3c02d693a3ca5ee97e45aec1b5fdb5a0cae 100644 --- a/src/p_setup.c +++ b/src/p_setup.c @@ -8177,7 +8177,7 @@ void P_LoadMapsFromFile(UINT16 wadnum, boolean added_ingame) lumpinfo = wadfiles[wadnum]->lumpinfo + LUMPNUM(lumpnum); - name = M_GetFilenameFromPath(lumpinfo->fullname); // Full lump name, with its extension + name = W_GetFilenameFromFullname(lumpinfo->fullname); // Full lump name, with its extension // Extension must be .wad if (!M_CheckFilenameExtension(name, "wad")) diff --git a/src/w_wad.c b/src/w_wad.c index e991531dc782834a662a97fa28284b884f4b2614..72ed4413be34ac91cc5daf812ad5ae9321a44699 100644 --- a/src/w_wad.c +++ b/src/w_wad.c @@ -1339,6 +1339,14 @@ UINT16 W_CheckNumForFolderEndPK3(const char *name, UINT16 wad, UINT16 startlump) return i; } +const char *W_GetFilenameFromFullname(const char *path) +{ + const char *slash = strrchr(path, '/'); + if (slash) + return slash + 1; + return path; +} + void W_GetFolderLumpsPwad(const char *name, UINT16 wad, UINT32 **list, UINT16 *list_capacity, UINT16 *numlumps) { size_t name_length = strlen(name); diff --git a/src/w_wad.h b/src/w_wad.h index 4f59c40e05461405f3c60f86a551e25e3643747c..a5b5eee700b26817a7f95a36ab2498f21dad43fc 100644 --- a/src/w_wad.h +++ b/src/w_wad.h @@ -181,6 +181,8 @@ UINT16 W_CheckNumForFullNamePK3(const char *name, UINT16 wad, UINT16 startlump); UINT16 W_CheckNumForFolderStartPK3(const char *name, UINT16 wad, UINT16 startlump); UINT16 W_CheckNumForFolderEndPK3(const char *name, UINT16 wad, UINT16 startlump); +const char *W_GetFilenameFromFullname(const char *path); + void W_GetFolderLumpsPwad(const char *name, UINT16 wad, UINT32 **list, UINT16 *list_capacity, UINT16 *numlumps); void W_GetFolderLumps(const char *name, UINT32 **list, UINT16 *list_capacity, UINT16 *numlumps);