diff options
author | Paul Sokolovsky <pfalcon@users.sourceforge.net> | 2014-05-10 21:05:45 +0300 |
---|---|---|
committer | Paul Sokolovsky <pfalcon@users.sourceforge.net> | 2014-05-10 21:26:07 +0300 |
commit | 0bc15941c2d9f9b0e05fdf0e96f1a7b843912be6 (patch) | |
tree | a214c1ff4a4b6b8fe48d3e11ff5ce38c5a6d92d2 | |
parent | 7067d69bccba41e2bf6c0ddad80cee603a81352a (diff) | |
download | micropython-0bc15941c2d9f9b0e05fdf0e96f1a7b843912be6.tar.gz micropython-0bc15941c2d9f9b0e05fdf0e96f1a7b843912be6.zip |
py: Make mp_obj_print() handle null object w/o segfault if debug build.
Happens regularly when used for debugging.
-rw-r--r-- | py/obj.c | 6 |
1 files changed, 6 insertions, 0 deletions
@@ -59,6 +59,12 @@ void printf_wrapper(void *env, const char *fmt, ...) { } void mp_obj_print_helper(void (*print)(void *env, const char *fmt, ...), void *env, mp_obj_t o_in, mp_print_kind_t kind) { +#if !NDEBUG + if (o_in == NULL) { + print(env, "(nil)"); + return; + } +#endif mp_obj_type_t *type = mp_obj_get_type(o_in); if (type->print != NULL) { type->print(print, env, o_in, kind); |