summaryrefslogtreecommitdiffhomepage
path: root/src/state.c
diff options
context:
space:
mode:
authorTatsuhiro Tsujikawa <[email protected]>2015-09-12 12:11:10 +0900
committerTatsuhiro Tsujikawa <[email protected]>2015-09-12 12:11:10 +0900
commita085c04e3741825ab4c4ceda60b640e250ae56d5 (patch)
treef3f2f7e7d28125adaa01dddf5144a77fbb214b5f /src/state.c
parenteb9bec19dcb99bf0a6934471fb8f35e80beb8719 (diff)
downloadmruby-a085c04e3741825ab4c4ceda60b640e250ae56d5.tar.gz
mruby-a085c04e3741825ab4c4ceda60b640e250ae56d5.zip
Don't crash if NULL is passed to mrb_close
Sometimes it is very useful just return from mrb_close if NULL is passed as mrb. This is the same spirit of free(3), which just does nothing if NULL is passed.
Diffstat (limited to 'src/state.c')
-rw-r--r--src/state.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/state.c b/src/state.c
index 2efd34334..bfd99e4c3 100644
--- a/src/state.c
+++ b/src/state.c
@@ -234,6 +234,7 @@ mrb_free_context(mrb_state *mrb, struct mrb_context *c)
MRB_API void
mrb_close(mrb_state *mrb)
{
+ if (!mrb) return;
if (mrb->atexit_stack_len > 0) {
mrb_int i;
for (i = mrb->atexit_stack_len; i > 0; --i) {