@@ -95,7 +95,8 @@ const mp_obj_type_t mp_type_module = {
9595};
9696
9797mp_obj_t mp_obj_new_module (qstr module_name ) {
98- mp_map_elem_t * el = mp_map_lookup (& MP_STATE_VM (mp_loaded_modules_map ), MP_OBJ_NEW_QSTR (module_name ), MP_MAP_LOOKUP_ADD_IF_NOT_FOUND );
98+ mp_map_t * mp_loaded_modules_map = & MP_STATE_VM (mp_loaded_modules_dict ).map ;
99+ mp_map_elem_t * el = mp_map_lookup (mp_loaded_modules_map , MP_OBJ_NEW_QSTR (module_name ), MP_MAP_LOOKUP_ADD_IF_NOT_FOUND );
99100 // We could error out if module already exists, but let C extensions
100101 // add new members to existing modules.
101102 if (el -> value != MP_OBJ_NULL ) {
@@ -200,17 +201,18 @@ STATIC const mp_rom_map_elem_t mp_builtin_module_table[] = {
200201STATIC MP_DEFINE_CONST_MAP (mp_builtin_module_map , mp_builtin_module_table );
201202
202203void mp_module_init (void ) {
203- mp_map_init (& MP_STATE_VM (mp_loaded_modules_map ), 3 );
204+ mp_obj_dict_init (& MP_STATE_VM (mp_loaded_modules_dict ), 3 );
204205}
205206
206207void mp_module_deinit (void ) {
207- mp_map_deinit (& MP_STATE_VM (mp_loaded_modules_map ));
208+ // mp_map_deinit(&MP_STATE_VM(mp_loaded_modules_map));
208209}
209210
210211// returns MP_OBJ_NULL if not found
211212mp_obj_t mp_module_get (qstr module_name ) {
213+ mp_map_t * mp_loaded_modules_map = & MP_STATE_VM (mp_loaded_modules_dict ).map ;
212214 // lookup module
213- mp_map_elem_t * el = mp_map_lookup (& MP_STATE_VM ( mp_loaded_modules_map ) , MP_OBJ_NEW_QSTR (module_name ), MP_MAP_LOOKUP );
215+ mp_map_elem_t * el = mp_map_lookup (mp_loaded_modules_map , MP_OBJ_NEW_QSTR (module_name ), MP_MAP_LOOKUP );
214216
215217 if (el == NULL ) {
216218 // module not found, look for builtin module names
@@ -236,5 +238,6 @@ mp_obj_t mp_module_get(qstr module_name) {
236238}
237239
238240void mp_module_register (qstr qst , mp_obj_t module ) {
239- mp_map_lookup (& MP_STATE_VM (mp_loaded_modules_map ), MP_OBJ_NEW_QSTR (qst ), MP_MAP_LOOKUP_ADD_IF_NOT_FOUND )-> value = module ;
241+ mp_map_t * mp_loaded_modules_map = & MP_STATE_VM (mp_loaded_modules_dict ).map ;
242+ mp_map_lookup (mp_loaded_modules_map , MP_OBJ_NEW_QSTR (qst ), MP_MAP_LOOKUP_ADD_IF_NOT_FOUND )-> value = module ;
240243}
0 commit comments