From e20cbbec7374be5003706ef243a3433a19a01841 Mon Sep 17 00:00:00 2001 From: Dave Hylands Date: Wed, 8 Oct 2014 23:17:35 -0700 Subject: [PATCH] Make lexer fail gracefully when memory can't be allocated. --- py/lexerstr.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/py/lexerstr.c b/py/lexerstr.c index a919dc7e14..3a68441107 100644 --- a/py/lexerstr.c +++ b/py/lexerstr.c @@ -52,7 +52,10 @@ STATIC void str_buf_free(mp_lexer_str_buf_t *sb) { } mp_lexer_t *mp_lexer_new_from_str_len(qstr src_name, const char *str, mp_uint_t len, mp_uint_t free_len) { - mp_lexer_str_buf_t *sb = m_new_obj(mp_lexer_str_buf_t); + mp_lexer_str_buf_t *sb = m_new_maybe(mp_lexer_str_buf_t, 1); + if (sb == NULL) { + return NULL; + } sb->free_len = free_len; sb->src_beg = str; sb->src_cur = str;