Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCampbell Barton <ideasman42@gmail.com>2020-11-11 08:14:06 +0300
committerCampbell Barton <ideasman42@gmail.com>2020-11-11 08:14:06 +0300
commit2d60845786aeab099c61ffa42b7f72cccc68bff1 (patch)
treeaa3f17a33f029f9a8de69b081d219ee506e71f8e /source/blender/imbuf/intern/openexr
parent99f56b4c16323f96c0cbf54e392fb509fcac5bda (diff)
Cleanup: pass header size to 'is_a' callbacks
No functional changes, prepare for fixing out-of-bounds access when reading headers.
Diffstat (limited to 'source/blender/imbuf/intern/openexr')
-rw-r--r--source/blender/imbuf/intern/openexr/openexr_api.cpp4
-rw-r--r--source/blender/imbuf/intern/openexr/openexr_api.h2
2 files changed, 3 insertions, 3 deletions
diff --git a/source/blender/imbuf/intern/openexr/openexr_api.cpp b/source/blender/imbuf/intern/openexr/openexr_api.cpp
index 6d4cff4d18d..467454ddb7a 100644
--- a/source/blender/imbuf/intern/openexr/openexr_api.cpp
+++ b/source/blender/imbuf/intern/openexr/openexr_api.cpp
@@ -330,7 +330,7 @@ extern "C" {
* Test presence of OpenEXR file.
* \param mem: pointer to loaded OpenEXR bitstream
*/
-int imb_is_a_openexr(const unsigned char *mem)
+bool imb_is_a_openexr(const unsigned char *mem, const size_t UNUSED(size))
{
return Imf::isImfMagic((const char *)mem);
}
@@ -1905,7 +1905,7 @@ struct ImBuf *imb_load_openexr(const unsigned char *mem,
IMemStream *membuf = nullptr;
MultiPartInputFile *file = nullptr;
- if (imb_is_a_openexr(mem) == 0) {
+ if (imb_is_a_openexr(mem, size) == 0) {
return nullptr;
}
diff --git a/source/blender/imbuf/intern/openexr/openexr_api.h b/source/blender/imbuf/intern/openexr/openexr_api.h
index fcbd9b803b8..940715690a7 100644
--- a/source/blender/imbuf/intern/openexr/openexr_api.h
+++ b/source/blender/imbuf/intern/openexr/openexr_api.h
@@ -32,7 +32,7 @@ extern "C" {
void imb_initopenexr(void);
void imb_exitopenexr(void);
-int imb_is_a_openexr(const unsigned char *mem);
+bool imb_is_a_openexr(const unsigned char *mem, const size_t size);
bool imb_save_openexr(struct ImBuf *ibuf, const char *name, int flags);