summaryrefslogtreecommitdiffhomepage
path: root/src/gc.c
diff options
context:
space:
mode:
authorYukihiro "Matz" Matsumoto <[email protected]>2013-08-14 16:51:50 +0900
committerYukihiro "Matz" Matsumoto <[email protected]>2013-08-14 16:51:50 +0900
commitf8454e53bac2b3c7da9956b9dd024ce83026f0fc (patch)
tree2d582fded79e708775ccc234c1e2fd87053747d6 /src/gc.c
parentb7d6b4d0ce388599b36cacd42069944c326d2582 (diff)
downloadmruby-f8454e53bac2b3c7da9956b9dd024ce83026f0fc.tar.gz
mruby-f8454e53bac2b3c7da9956b9dd024ce83026f0fc.zip
check d->type before accessing d->type->dfree; #1474 #858
Diffstat (limited to 'src/gc.c')
-rw-r--r--src/gc.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/gc.c b/src/gc.c
index ec51fd527..16d187e30 100644
--- a/src/gc.c
+++ b/src/gc.c
@@ -646,7 +646,7 @@ obj_free(mrb_state *mrb, struct RBasic *obj)
case MRB_TT_DATA:
{
struct RData *d = (struct RData*)obj;
- if (d->type->dfree) {
+ if (d->type && d->type->dfree) {
d->type->dfree(mrb, d->data);
}
mrb_gc_free_iv(mrb, (struct RObject*)obj);