diff --git a/libretro-common/streams/file_stream.c b/libretro-common/streams/file_stream.c index 587729e0b2..8969bfe5ca 100644 --- a/libretro-common/streams/file_stream.c +++ b/libretro-common/streams/file_stream.c @@ -259,9 +259,10 @@ int filestream_delete(const char *path) const char *filestream_get_path(RFILE *stream) { - /* TODO/FIXME - implement - is a char pointer sufficient here - * or should we cater to wchar_t and friends too? */ - return NULL; + if (filestream_get_path_cb != NULL) + return filestream_get_path_cb(stream->hfile); + + return retro_vfs_file_get_path_impl((libretro_vfs_implementation_file*)stream->hfile); } ssize_t filestream_write(RFILE *stream, const void *s, size_t len) diff --git a/libretro-common/vfs/vfs_implementation.c b/libretro-common/vfs/vfs_implementation.c index 8316c74e60..8bfabf65a7 100644 --- a/libretro-common/vfs/vfs_implementation.c +++ b/libretro-common/vfs/vfs_implementation.c @@ -463,6 +463,7 @@ int retro_vfs_file_delete_impl(const char *path) const char *retro_vfs_file_get_path_impl(libretro_vfs_implementation_file *stream) { + /* TODO/FIXME - implement */ return NULL; }