[Bf-blender-cvs] [3c506870734] master: Fix gpu.types.GPUTexture crash when the size argument was too big
Campbell Barton
noreply at git.blender.org
Thu Jul 29 06:12:44 CEST 2021
Commit: 3c5068707344c15c876e726f90254e22ec4e1903
Author: Campbell Barton
Date: Thu Jul 29 14:09:30 2021 +1000
Branches: master
https://developer.blender.org/rB3c5068707344c15c876e726f90254e22ec4e1903
Fix gpu.types.GPUTexture crash when the size argument was too big
Missing length check on the size argument before copying it
into a fixed size buffer.
===================================================================
M source/blender/python/gpu/gpu_py_texture.c
===================================================================
diff --git a/source/blender/python/gpu/gpu_py_texture.c b/source/blender/python/gpu/gpu_py_texture.c
index 4cbbd77438c..5d136921300 100644
--- a/source/blender/python/gpu/gpu_py_texture.c
+++ b/source/blender/python/gpu/gpu_py_texture.c
@@ -153,6 +153,12 @@ static PyObject *pygpu_texture__tp_new(PyTypeObject *UNUSED(self), PyObject *arg
int len = 1;
if (PySequence_Check(py_size)) {
len = PySequence_Size(py_size);
+ if ((len < 1) || (len > 3)) {
+ PyErr_Format(PyExc_ValueError,
+ "GPUTexture.__new__: \"size\" must be between 1 and 3 in length (got %d)",
+ len);
+ return NULL;
+ }
if (PyC_AsArray(size, sizeof(*size), py_size, len, &PyLong_Type, "GPUTexture.__new__") == -1) {
return NULL;
}
More information about the Bf-blender-cvs
mailing list