diff options
| author | Marcin Zawiejski | 2018-02-04 13:23:23 +0100 |
|---|---|---|
| committer | Marcin Zawiejski | 2018-02-04 13:23:23 +0100 |
| commit | 8315aa40ccbb0274d87f7b94ed52aa252e4aa626 (patch) | |
| tree | 96ecb48c1b0329a202bedb88c17724c6ad1daef9 /drivers/windows | |
| parent | ea99b90a77228189d6dc38ab7b7ada967d668ed8 (diff) | |
| download | godot-8315aa40ccbb0274d87f7b94ed52aa252e4aa626.tar.gz godot-8315aa40ccbb0274d87f7b94ed52aa252e4aa626.tar.zst godot-8315aa40ccbb0274d87f7b94ed52aa252e4aa626.zip | |
fix buffer write performance on Windows and Unix
Diffstat (limited to 'drivers/windows')
| -rw-r--r-- | drivers/windows/file_access_windows.cpp | 5 | ||||
| -rw-r--r-- | drivers/windows/file_access_windows.h | 1 |
2 files changed, 6 insertions, 0 deletions
diff --git a/drivers/windows/file_access_windows.cpp b/drivers/windows/file_access_windows.cpp index 613dc8c40..072790876 100644 --- a/drivers/windows/file_access_windows.cpp +++ b/drivers/windows/file_access_windows.cpp @@ -235,6 +235,11 @@ void FileAccessWindows::store_8(uint8_t p_dest) { fwrite(&p_dest, 1, 1, f); } +void FileAccessWindows::store_buffer(const uint8_t *p_src, int p_length) { + ERR_FAIL_COND(!f); + ERR_FAIL_COND(fwrite(p_src, 1, p_length, f) != p_length); +} + bool FileAccessWindows::file_exists(const String &p_name) { FILE *g; diff --git a/drivers/windows/file_access_windows.h b/drivers/windows/file_access_windows.h index bbdf830c9..26bd08b7a 100644 --- a/drivers/windows/file_access_windows.h +++ b/drivers/windows/file_access_windows.h @@ -67,6 +67,7 @@ public: virtual void flush(); virtual void store_8(uint8_t p_dest); ///< store a byte + virtual void store_buffer(const uint8_t *p_src, int p_length); ///< store an array of bytes virtual bool file_exists(const String &p_name); ///< return true if a file exists |
