diff options
author | Emmanuel Gil Peyrot <linkmauve@linkmauve.fr> | 2014-09-27 19:21:48 +0000 |
---|---|---|
committer | Emmanuel Gil Peyrot <linkmauve@linkmauve.fr> | 2014-10-06 19:58:42 +0200 |
commit | 0be5c03176236fe602d49c32717a6f3af0a55465 (patch) | |
tree | 61573d4ed66ac5e7f46968ef871b3acf9f0c5b99 /src/core/hle/kernel | |
parent | 23c2fbfc7a900ae3c9f8791a87c5ad672f5778fe (diff) |
FileSys: split the constructor into an Open method, in order to notify the opener something went wrong.
Kernel: Return an invalid handle to OpenFile when it failed to open.
Diffstat (limited to 'src/core/hle/kernel')
-rw-r--r-- | src/core/hle/kernel/archive.cpp | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/core/hle/kernel/archive.cpp b/src/core/hle/kernel/archive.cpp index 0a66ab29..86aba748 100644 --- a/src/core/hle/kernel/archive.cpp +++ b/src/core/hle/kernel/archive.cpp @@ -374,6 +374,9 @@ Handle OpenFileFromArchive(Handle archive_handle, const std::string& path, const file->path = path; file->backend = archive->backend->OpenFile(path, mode); + if (!file->backend) + return 0; + return handle; } |