diff options
author | Damien George <damien@micropython.org> | 2022-03-25 11:57:59 +1100 |
---|---|---|
committer | Damien George <damien@micropython.org> | 2022-03-28 16:09:58 +1100 |
commit | b312a7abf5504d0e68846d5728c09899119f2621 (patch) | |
tree | 5867d964dec1c41aab7c4a0ce8e23a041404ccd6 /py/builtinimport.c | |
parent | 6d11c69983f8084459e5bb037d931d5e2d283c78 (diff) |
py/builtinimport: Alias sys to usys if import weak links aren't enabled.
The sys module should always be available (if it's compiled in), eg to
change sys.path for importing. So provide an explicit alias from "sys" to
"usys" so that "import sys" can always work.
Signed-off-by: Damien George <damien@micropython.org>
Diffstat (limited to 'py/builtinimport.c')
-rw-r--r-- | py/builtinimport.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/py/builtinimport.c b/py/builtinimport.c index 094959f97..cd9636ccd 100644 --- a/py/builtinimport.c +++ b/py/builtinimport.c @@ -373,6 +373,10 @@ STATIC mp_obj_t process_import_at_level(qstr full_mod_name, qstr level_mod_name, qstr umodule_name = qstr_from_str(umodule_buf); module_obj = mp_module_get_builtin(umodule_name); } + #elif MICROPY_PY_SYS + if (stat == MP_IMPORT_STAT_NO_EXIST && module_obj == MP_OBJ_NULL && level_mod_name == MP_QSTR_sys) { + module_obj = MP_OBJ_FROM_PTR(&mp_module_sys); + } #endif } else { DEBUG_printf("Searching for sub-module\n"); |