py/makeqstrdata: Add special case to handle \n qstr.

This commit is contained in:
Damien George 2016-04-14 15:22:36 +01:00
parent 2243d68345
commit a649d72606
2 changed files with 7 additions and 1 deletions

View File

@ -93,6 +93,12 @@ def parse_input_headers(infiles):
# get the qstr value # get the qstr value
qstr = match.group(1) qstr = match.group(1)
# special case to specify control characters
if qstr == '\\n':
qstr = '\n'
# work out the corresponding qstr name
ident = qstr_escape(qstr) ident = qstr_escape(qstr)
# don't add duplicates # don't add duplicates

View File

@ -564,7 +564,7 @@ STATIC mp_obj_t str_splitlines(size_t n_args, const mp_obj_t *pos_args, mp_map_t
mp_arg_parse_all(n_args - 1, pos_args + 1, kw_args, mp_arg_parse_all(n_args - 1, pos_args + 1, kw_args,
MP_ARRAY_SIZE(allowed_args), allowed_args, (mp_arg_val_t*)&args); MP_ARRAY_SIZE(allowed_args), allowed_args, (mp_arg_val_t*)&args);
mp_obj_t new_args[2] = {pos_args[0], MP_OBJ_NEW_QSTR(MP_QSTR__backslash_n)}; mp_obj_t new_args[2] = {pos_args[0], MP_OBJ_NEW_QSTR(MP_QSTR__0x0a_)};
return str_split_internal(2, new_args, SPLITLINES | (args.keepends.u_bool ? KEEP : 0)); return str_split_internal(2, new_args, SPLITLINES | (args.keepends.u_bool ? KEEP : 0));
} }
#endif #endif