summaryrefslogtreecommitdiffstats
path: root/core/io/file_access_encrypted.cpp
diff options
context:
space:
mode:
authorAlex Hirsch <w4rh4wk@bluephoenix.at>2021-03-09 02:37:35 +0100
committerAlex Hirsch <w4rh4wk@bluephoenix.at>2021-03-09 13:55:20 +0100
commitcdf3099c68f21dd74b7eb9574b323f38eaa816ea (patch)
treedcaf2d9d6a9beda110ad20830d51726a69cd05bf /core/io/file_access_encrypted.cpp
parent85cb3c044d3d753658ad4aa7499cbe6b6ad92e7a (diff)
downloadredot-engine-cdf3099c68f21dd74b7eb9574b323f38eaa816ea.tar.gz
Add parameter checkes to FileAccess get_buffer functions
fix #46540
Diffstat (limited to 'core/io/file_access_encrypted.cpp')
-rw-r--r--core/io/file_access_encrypted.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/core/io/file_access_encrypted.cpp b/core/io/file_access_encrypted.cpp
index 8b4c57ce64..133ec18762 100644
--- a/core/io/file_access_encrypted.cpp
+++ b/core/io/file_access_encrypted.cpp
@@ -237,7 +237,9 @@ uint8_t FileAccessEncrypted::get_8() const {
}
int FileAccessEncrypted::get_buffer(uint8_t *p_dst, int p_length) const {
- ERR_FAIL_COND_V_MSG(writing, 0, "File has not been opened in read mode.");
+ ERR_FAIL_COND_V(!p_dst, -1);
+ ERR_FAIL_COND_V(p_length < 0, -1);
+ ERR_FAIL_COND_V_MSG(writing, -1, "File has not been opened in read mode.");
int to_copy = MIN(p_length, data.size() - pos);
for (int i = 0; i < to_copy; i++) {