fix buffer write performance on Windows and Unix
(cherry picked from commit 8315aa40cc
)
This commit is contained in:
parent
65aa9063c4
commit
d4a70c6c08
|
@ -236,6 +236,11 @@ void FileAccessUnix::store_8(uint8_t p_dest) {
|
||||||
ERR_FAIL_COND(fwrite(&p_dest, 1, 1, f) != 1);
|
ERR_FAIL_COND(fwrite(&p_dest, 1, 1, f) != 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
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) {
|
bool FileAccessUnix::file_exists(const String &p_path) {
|
||||||
|
|
||||||
int err;
|
int err;
|
||||||
|
|
|
@ -75,6 +75,7 @@ public:
|
||||||
|
|
||||||
virtual void flush();
|
virtual void flush();
|
||||||
virtual void store_8(uint8_t p_dest); ///< store a byte
|
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
|
virtual bool file_exists(const String &p_path); ///< return true if a file exists
|
||||||
|
|
||||||
|
|
|
@ -232,6 +232,11 @@ void FileAccessWindows::store_8(uint8_t p_dest) {
|
||||||
fwrite(&p_dest, 1, 1, f);
|
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) {
|
bool FileAccessWindows::file_exists(const String &p_name) {
|
||||||
|
|
||||||
FILE *g;
|
FILE *g;
|
||||||
|
|
|
@ -67,6 +67,7 @@ public:
|
||||||
|
|
||||||
virtual void flush();
|
virtual void flush();
|
||||||
virtual void store_8(uint8_t p_dest); ///< store a byte
|
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
|
virtual bool file_exists(const String &p_name); ///< return true if a file exists
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue