about summary refs log tree commit homepage
path: root/ext/clogger_ext/clogger.c
diff options
context:
space:
mode:
Diffstat (limited to 'ext/clogger_ext/clogger.c')
-rw-r--r--ext/clogger_ext/clogger.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/ext/clogger_ext/clogger.c b/ext/clogger_ext/clogger.c
index 63322f9..7813c8c 100644
--- a/ext/clogger_ext/clogger.c
+++ b/ext/clogger_ext/clogger.c
@@ -656,7 +656,9 @@ static VALUE clogger_close(VALUE self)
 {
         struct clogger *c = clogger_get(self);
 
-        return rb_funcall(c->body, close_id, 0);
+        if (rb_respond_to(c->body, close_id))
+                return rb_funcall(c->body, close_id, 0);
+        return Qnil;
 }
 
 /* :nodoc: */