diff options
author | Clément Foucault <foucault.clem@gmail.com> | 2018-07-10 00:03:21 +0300 |
---|---|---|
committer | Clément Foucault <foucault.clem@gmail.com> | 2018-07-10 00:03:21 +0300 |
commit | 05517c9bedfdd6afbae0a7d99dbbaba54563303b (patch) | |
tree | 8227f5feb22217e7278a65f4b6c1d1f0b7a29eeb /source/blender/python/intern/bpy_driver.c | |
parent | ff11750ee9925d2c75193e1e7cbaccec86855fa8 (diff) | |
parent | 07e368cb5f6a4f73164a70794e884970d171d909 (diff) |
Merge remote-tracking branch 'origin/blender2.8' into temp-eeveelightcachetemp-eeveelightcache
# Conflicts:
# source/blender/draw/engines/eevee/eevee_lightprobes.c
Diffstat (limited to 'source/blender/python/intern/bpy_driver.c')
-rw-r--r-- | source/blender/python/intern/bpy_driver.c | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/source/blender/python/intern/bpy_driver.c b/source/blender/python/intern/bpy_driver.c index b8c71d4e054..d3464ea5841 100644 --- a/source/blender/python/intern/bpy_driver.c +++ b/source/blender/python/intern/bpy_driver.c @@ -255,7 +255,6 @@ static void pydriver_error(ChannelDriver *driver) #define OK_OP(op) [op] = 1 const char secure_opcodes[255] = { - OK_OP(0), OK_OP(POP_TOP), OK_OP(ROT_TWO), OK_OP(ROT_THREE), @@ -349,15 +348,14 @@ static bool bpy_driver_secure_bytecode_validate(PyObject *expr_code, PyObject *d /* Check opcodes. */ { - const char *codestr; + const _Py_CODEUNIT *codestr; Py_ssize_t code_len; PyBytes_AsStringAndSize(py_code->co_code, (char **)&codestr, &code_len); + code_len /= sizeof(*codestr); -#define CODESIZE(op) (HAS_ARG(op) ? 3 : 1) - - for (Py_ssize_t i = 0; i < code_len; i += CODESIZE(codestr[i])) { - const int opcode = codestr[i]; + for (Py_ssize_t i = 0; i < code_len; i++) { + const int opcode = _Py_OPCODE(codestr[i]); if (secure_opcodes[opcode] == 0) { fprintf(stderr, "\tBPY_driver_eval() - restructed access disallows opcode '%d', " "enable auto-execution to support\n", opcode); |