aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMilan Rossa2019-08-05 15:11:24 +0200
committerDamien George2019-08-15 17:31:04 +1000
commit6f0c6bd77410ad25ade6a3999c62451ae76ea60a (patch)
treea851fcb48307d0c4ab791dd5fd9dcda48a1d8b5e
parentcb3647004fbf7b069a3509a02b72420828369bd3 (diff)
unix: Enable sys.atexit, triggered after the main script ends.
-rw-r--r--ports/unix/main.c6
-rw-r--r--ports/unix/mpconfigport.h1
2 files changed, 7 insertions, 0 deletions
diff --git a/ports/unix/main.c b/ports/unix/main.c
index cd2dc49a5..004d581bb 100644
--- a/ports/unix/main.c
+++ b/ports/unix/main.c
@@ -642,6 +642,12 @@ MP_NOINLINE int main_(int argc, char **argv) {
}
}
+ #if MICROPY_PY_SYS_ATEXIT
+ if (mp_obj_is_callable(MP_STATE_VM(sys_exitfunc))) {
+ mp_call_function_0(MP_STATE_VM(sys_exitfunc));
+ }
+ #endif
+
#if MICROPY_PY_MICROPYTHON_MEM_INFO
if (mp_verbose_flag) {
mp_micropython_mem_info(0, NULL);
diff --git a/ports/unix/mpconfigport.h b/ports/unix/mpconfigport.h
index 97a9f4908..123cad2bc 100644
--- a/ports/unix/mpconfigport.h
+++ b/ports/unix/mpconfigport.h
@@ -90,6 +90,7 @@
#define MICROPY_PY_ARRAY_SLICE_ASSIGN (1)
#define MICROPY_PY_BUILTINS_SLICE_ATTRS (1)
#define MICROPY_PY_SYS_EXIT (1)
+#define MICROPY_PY_SYS_ATEXIT (1)
#if defined(__APPLE__) && defined(__MACH__)
#define MICROPY_PY_SYS_PLATFORM "darwin"
#else