From 727b220d25c217fde2dd1095ee5fa5f9509fc5f1 Mon Sep 17 00:00:00 2001 From: Marcus Comstedt Date: Sat, 20 Sep 2008 16:47:31 +0000 Subject: In the CD filesystem, nothing can be opened for writing, so just short-circuit any call to openForWriting(). Also, directories and non-existing files can't be opened for reading either, so just return 0 for those. svn-id: r34621 --- backends/platform/dc/dc-fs.cpp | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/backends/platform/dc/dc-fs.cpp b/backends/platform/dc/dc-fs.cpp index c4f1d76f10..4baba5b7dc 100644 --- a/backends/platform/dc/dc-fs.cpp +++ b/backends/platform/dc/dc-fs.cpp @@ -54,7 +54,7 @@ public: virtual AbstractFilesystemNode *getParent() const; virtual Common::SeekableReadStream *openForReading(); - virtual Common::WriteStream *openForWriting(); + virtual Common::WriteStream *openForWriting() { return 0; } static AbstractFilesystemNode *makeFileNodePath(const Common::String &path); }; @@ -67,6 +67,7 @@ public: virtual bool isDirectory() const { return true; } virtual AbstractFilesystemNode *getChild(const Common::String &n) const; virtual bool getChildren(AbstractFSList &list, ListMode mode, bool hidden) const; + virtual Common::SeekableReadStream *openForReading() { return 0; } }; /* A file/directory which does not exist */ @@ -76,6 +77,7 @@ public: virtual bool exists() const { return false; } virtual bool isReadable() const { return false; } + virtual Common::SeekableReadStream *openForReading() { return 0; } }; AbstractFilesystemNode *RoninCDFileNode::makeFileNodePath(const Common::String &path) { @@ -152,10 +154,6 @@ Common::SeekableReadStream *RoninCDFileNode::openForReading() { return StdioStream::makeFromPath(getPath().c_str(), false); } -Common::WriteStream *RoninCDFileNode::openForWriting() { - return StdioStream::makeFromPath(getPath().c_str(), true); -} - AbstractFilesystemNode *OSystem_Dreamcast::makeRootFileNode() const { return new RoninCDDirectoryNode("/"); } -- cgit v1.2.3