From 718a748799f896e6dc943494e3e7a66a48cb8d30 Mon Sep 17 00:00:00 2001 From: kano4 Date: Wed, 13 Mar 2013 22:24:06 +0900 Subject: Add null check --- src/state.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/state.c b/src/state.c index b6805a4a4..efb6d66b1 100644 --- a/src/state.c +++ b/src/state.c @@ -53,6 +53,7 @@ mrb_alloca(mrb_state *mrb, size_t size) struct alloca_header *p; p = (struct alloca_header*) mrb_malloc(mrb, sizeof(struct alloca_header)+size); + if (p == NULL) return NULL; p->next = mrb->mems; mrb->mems = p; return (void*)p->buf; @@ -61,9 +62,12 @@ mrb_alloca(mrb_state *mrb, size_t size) static void mrb_alloca_free(mrb_state *mrb) { - struct alloca_header *p = mrb->mems; + struct alloca_header *p; struct alloca_header *tmp; + if (mrb == NULL) return NULL; + p = mrb->mems; + while (p) { tmp = p; p = p->next; -- cgit v1.2.3