fix buffer write performance on Windows and Unix

This commit is contained in:
Marcin Zawiejski 2018-02-04 13:23:23 +01:00 committed by Xavier Sellier
parent 4e46b0b668
commit 70e7a386a8
4 changed files with 12 additions and 0 deletions

View file

@ -205,6 +205,11 @@ void FileAccessUnix::store_8(uint8_t p_dest) {
fwrite(&p_dest, 1, 1, f);
}
void FileAccessUnix::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 FileAccessUnix::file_exists(const String &p_path) {
FILE *g;

View file

@ -73,6 +73,7 @@ public:
virtual Error get_error() const; ///< get last error
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_path); ///< return true if a file exists

View file

@ -213,6 +213,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;

View file

@ -65,6 +65,7 @@ public:
virtual Error get_error() const; ///< get last error
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