diff options
author | Paul Sokolovsky <pfalcon@users.sourceforge.net> | 2014-01-23 03:24:53 +0200 |
---|---|---|
committer | Paul Sokolovsky <pfalcon@users.sourceforge.net> | 2014-01-23 03:37:21 +0200 |
commit | c3e72a8cc818b8777c253d4fddcf92181bf06b23 (patch) | |
tree | b2fc103497479c40aed0365d1922a96e4fd148f5 | |
parent | bc5b3f8c733a7cff9a7238fcb3ea7d8033d081e6 (diff) | |
download | micropython-c3e72a8cc818b8777c253d4fddcf92181bf06b23.tar.gz micropython-c3e72a8cc818b8777c253d4fddcf92181bf06b23.zip |
mp_obj_is_callable(): Only object types can be callable.
Fixes segfault on callable("string").
-rw-r--r-- | py/obj.c | 2 | ||||
-rw-r--r-- | tests/basics/builtin-callable.py | 5 |
2 files changed, 6 insertions, 1 deletions
@@ -66,7 +66,7 @@ void mp_obj_print_exception(mp_obj_t exc) { } bool mp_obj_is_callable(mp_obj_t o_in) { - if (MP_OBJ_IS_SMALL_INT(o_in)) { + if (!MP_OBJ_IS_OBJ(o_in)) { return false; } else { mp_obj_base_t *o = o_in; diff --git a/tests/basics/builtin-callable.py b/tests/basics/builtin-callable.py new file mode 100644 index 0000000000..caddb885cf --- /dev/null +++ b/tests/basics/builtin-callable.py @@ -0,0 +1,5 @@ +import sys +print(callable(1)) +print(callable("dfsd")) +print(callable(callable)) +print(callable(sys)) |