From 06593fb0f23dfc12f482561fbec1717dca0d4db4 Mon Sep 17 00:00:00 2001 From: Damien George Date: Fri, 19 Jun 2015 12:49:10 +0000 Subject: py: Use a wrapper to explicitly check self argument of builtin methods. Previous to this patch a call such as list.append(1, 2) would lead to a seg fault. This is because list.append is a builtin method and the first argument to such methods is always assumed to have the correct type. Now, when a builtin method is extracted like this it is wrapped in a checker object which checks the the type of the first argument before calling the builtin function. This feature is contrelled by MICROPY_BUILTIN_METHOD_CHECK_SELF_ARG and is enabled by default. See issue #1216. --- minimal/mpconfigport.h | 1 + 1 file changed, 1 insertion(+) (limited to 'minimal') diff --git a/minimal/mpconfigport.h b/minimal/mpconfigport.h index ef4fc00b4..49f380ea0 100644 --- a/minimal/mpconfigport.h +++ b/minimal/mpconfigport.h @@ -19,6 +19,7 @@ #define MICROPY_ENABLE_SOURCE_LINE (0) #define MICROPY_ENABLE_DOC_STRING (0) #define MICROPY_ERROR_REPORTING (MICROPY_ERROR_REPORTING_TERSE) +#define MICROPY_BUILTIN_METHOD_CHECK_SELF_ARG (0) #define MICROPY_PY_BUILTINS_BYTEARRAY (0) #define MICROPY_PY_BUILTINS_MEMORYVIEW (0) #define MICROPY_PY_BUILTINS_ENUMERATE (0) -- cgit v1.2.3