kopia lustrzana https://github.com/micropython/micropython
py: Make mp_obj_print() handle null object w/o segfault if debug build.
Happens regularly when used for debugging.pull/603/head
rodzic
7067d69bcc
commit
0bc15941c2
6
py/obj.c
6
py/obj.c
|
@ -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) {
|
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);
|
mp_obj_type_t *type = mp_obj_get_type(o_in);
|
||||||
if (type->print != NULL) {
|
if (type->print != NULL) {
|
||||||
type->print(print, env, o_in, kind);
|
type->print(print, env, o_in, kind);
|
||||||
|
|
Ładowanie…
Reference in New Issue