py: Change vstr_null_terminate -> vstr_null_terminated_str, returns str.
diff --git a/py/builtinimport.c b/py/builtinimport.c
index 1717c50..3fd517e 100644
--- a/py/builtinimport.c
+++ b/py/builtinimport.c
@@ -61,15 +61,13 @@
}
STATIC mp_import_stat_t stat_dir_or_file(vstr_t *path) {
- vstr_null_terminate(path);
//printf("stat %s\n", vstr_str(path));
- mp_import_stat_t stat = mp_import_stat(vstr_str(path));
+ mp_import_stat_t stat = mp_import_stat(vstr_null_terminated_str(path));
if (stat == MP_IMPORT_STAT_DIR) {
return stat;
}
vstr_add_str(path, ".py");
- vstr_null_terminate(path);
- stat = mp_import_stat(vstr_str(path));
+ stat = mp_import_stat(vstr_null_terminated_str(path));
if (stat == MP_IMPORT_STAT_FILE) {
return stat;
}
@@ -136,9 +134,9 @@
STATIC void do_load(mp_obj_t module_obj, vstr_t *file) {
// create the lexer
- vstr_null_terminate(file);
- mp_lexer_t *lex = mp_lexer_new_from_file(vstr_str(file));
- do_load_from_lexer(module_obj, lex, vstr_str(file));
+ char *file_str = vstr_null_terminated_str(file);
+ mp_lexer_t *lex = mp_lexer_new_from_file(file_str);
+ do_load_from_lexer(module_obj, lex, file_str);
}
mp_obj_t mp_builtin___import__(mp_uint_t n_args, const mp_obj_t *args) {
@@ -329,8 +327,7 @@
mp_store_attr(module_obj, MP_QSTR___path__, mp_obj_new_str(vstr_str(&path), vstr_len(&path), false));
vstr_add_char(&path, PATH_SEP_CHAR);
vstr_add_str(&path, "__init__.py");
- vstr_null_terminate(&path);
- if (mp_import_stat(vstr_str(&path)) != MP_IMPORT_STAT_FILE) {
+ if (mp_import_stat(vstr_null_terminated_str(&path)) != MP_IMPORT_STAT_FILE) {
vstr_cut_tail_bytes(&path, sizeof("/__init__.py") - 1); // cut off /__init__.py
mp_warning("%s is imported as namespace package", vstr_str(&path));
} else {