diff --git a/libretro-common/file/file_path.c b/libretro-common/file/file_path.c index fca2fb3749..55d767df12 100644 --- a/libretro-common/file/file_path.c +++ b/libretro-common/file/file_path.c @@ -346,6 +346,12 @@ void fill_pathname_base(char *out, const char *in_path, size_t size) retro_assert(strlcpy(out, ptr, size) < size); } +void fill_pathname_base_noext(char *out, const char *in_path, size_t size) +{ + fill_pathname_base(out, in_path, size); + path_remove_extension(out); +} + /** * fill_pathname_basedir: * @out_dir : output directory @@ -364,6 +370,13 @@ void fill_pathname_basedir(char *out_dir, path_basedir(out_dir); } +void fill_pathname_basedir_noext(char *out_dir, + const char *in_path, size_t size) +{ + fill_pathname_basedir(out_dir, in_path, size); + path_remove_extension(out_dir); +} + /** * fill_pathname_parent_dir: * @out_dir : output directory diff --git a/libretro-common/include/file/file_path.h b/libretro-common/include/file/file_path.h index 967d97e6f6..1642a28180 100644 --- a/libretro-common/include/file/file_path.h +++ b/libretro-common/include/file/file_path.h @@ -251,6 +251,9 @@ void fill_pathname_dir(char *in_dir, const char *in_basename, **/ void fill_pathname_base(char *out_path, const char *in_path, size_t size); +void fill_pathname_base_noext(char *out_dir, + const char *in_path, size_t size); + /** * fill_pathname_basedir: * @out_dir : output directory @@ -263,6 +266,9 @@ void fill_pathname_base(char *out_path, const char *in_path, size_t size); **/ void fill_pathname_basedir(char *out_path, const char *in_path, size_t size); +void fill_pathname_basedir_noext(char *out_dir, + const char *in_path, size_t size); + /** * fill_pathname_parent_dir: * @out_dir : output directory