summaryrefslogtreecommitdiff
path: root/src/fs/virtfs/virtfs.cpp
diff options
context:
space:
mode:
authorAndrei Karas <akaras@inbox.ru>2017-03-29 18:31:00 +0300
committerAndrei Karas <akaras@inbox.ru>2017-03-29 18:31:00 +0300
commit7132f71cf010e4f13eb27c1a24d8878aa984b43f (patch)
tree330ad08a5ae15d0f4dc2d13461de1d5a47a69fe6 /src/fs/virtfs/virtfs.cpp
parentd9c0d1c3b2800b0c995393426b65a031203ca2f0 (diff)
downloadplus-7132f71cf010e4f13eb27c1a24d8878aa984b43f.tar.gz
plus-7132f71cf010e4f13eb27c1a24d8878aa984b43f.tar.bz2
plus-7132f71cf010e4f13eb27c1a24d8878aa984b43f.tar.xz
plus-7132f71cf010e4f13eb27c1a24d8878aa984b43f.zip
Remove extra memory copy in VirtFs::loadFile.
Also add const into VirtFs::loadFile.
Diffstat (limited to 'src/fs/virtfs/virtfs.cpp')
-rw-r--r--src/fs/virtfs/virtfs.cpp8
1 files changed, 5 insertions, 3 deletions
diff --git a/src/fs/virtfs/virtfs.cpp b/src/fs/virtfs/virtfs.cpp
index 9d1432270..d9423f66e 100644
--- a/src/fs/virtfs/virtfs.cpp
+++ b/src/fs/virtfs/virtfs.cpp
@@ -562,8 +562,8 @@ namespace VirtFs
return file->funcs->eof(file);
}
- char *loadFile(std::string filename,
- int &restrict fileSize)
+ const char *loadFile(std::string filename,
+ int &restrict fileSize)
{
prepareFsPath(filename);
if (checkPath(filename) == false)
@@ -575,7 +575,9 @@ namespace VirtFs
FOR_EACH (std::vector<VirtFsEntry*>::const_iterator, it, mEntries)
{
VirtFsEntry *const entry = *it;
- char *const buf = entry->funcs->loadFile(entry, filename, fileSize);
+ const char *const buf = entry->funcs->loadFile(entry,
+ filename,
+ fileSize);
if (buf != nullptr)
return buf;
}