summaryrefslogtreecommitdiffstatshomepage
path: root/py
diff options
context:
space:
mode:
authorDamien George <damien.p.george@gmail.com>2016-04-17 12:37:00 +0100
committerDamien George <damien.p.george@gmail.com>2016-04-17 12:37:00 +0100
commit31480fb91b69819ed9d37d8ffc1160cb03fe81ea (patch)
tree76efbde0a8327757204e2d8c708ca7569626a33a /py
parent5e247a5192548630342576adf8f58c6ad6f59bcb (diff)
downloadmicropython-31480fb91b69819ed9d37d8ffc1160cb03fe81ea.tar.gz
micropython-31480fb91b69819ed9d37d8ffc1160cb03fe81ea.zip
py/frozenmod: Pass the source name of the frozen module to the lexer.
This allows for better error messages, since the name of the file (sans .py) can now be printed when an exception occurs within a frozen script.
Diffstat (limited to 'py')
-rw-r--r--py/frozenmod.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/py/frozenmod.c b/py/frozenmod.c
index 92afdb9a5e..18beb0f8e4 100644
--- a/py/frozenmod.c
+++ b/py/frozenmod.c
@@ -50,7 +50,8 @@ STATIC mp_lexer_t *mp_find_frozen_str(const char *str, size_t len) {
for (int i = 0; *name != 0; i++) {
size_t l = strlen(name);
if (l == len && !memcmp(str, name, l)) {
- mp_lexer_t *lex = MICROPY_MODULE_FROZEN_LEXER(MP_QSTR_, mp_frozen_str_content + offset, mp_frozen_str_sizes[i], 0);
+ qstr source = qstr_from_strn(name, l);
+ mp_lexer_t *lex = MICROPY_MODULE_FROZEN_LEXER(source, mp_frozen_str_content + offset, mp_frozen_str_sizes[i], 0);
return lex;
}
name += l + 1;