From 28076f3d4b3bf58aa86d6346af88665f7e5c6031 Mon Sep 17 00:00:00 2001 From: Josef Gajdusek Date: Wed, 6 May 2015 14:34:32 +0200 Subject: esp8266: Fix garbage collector by hard-coding stack end address. As user_init() is not a true main functions, the stack pointer captured within is not pointing at the base of the stack. This caused gc_collect being called with sp being higher than stack_end, causing integer overflow and crashing as gc tried to scan almost the entire address space. --- esp8266/main.c | 1 - 1 file changed, 1 deletion(-) (limited to 'esp8266/main.c') diff --git a/esp8266/main.c b/esp8266/main.c index a3878c0e7..81618cd63 100644 --- a/esp8266/main.c +++ b/esp8266/main.c @@ -43,7 +43,6 @@ STATIC void mp_reset(void) { mp_stack_set_limit(10240); mp_hal_init(); gc_init(heap, heap + sizeof(heap)); - gc_collect_init(); mp_init(); mp_obj_list_init(mp_sys_path, 0); mp_obj_list_init(mp_sys_argv, 0); -- cgit v1.2.3