diff options
author | Eric Wong <normalperson@yhbt.net> | 2010-02-08 17:14:41 -0800 |
---|---|---|
committer | Eric Wong <normalperson@yhbt.net> | 2010-02-08 17:14:41 -0800 |
commit | 2dd3e22782090dc347429e306569f687fa794d06 (patch) | |
tree | 89dc09a023bb6a40a18859ae133491b7bbb0e332 /ext/clogger_ext | |
parent | 74ab49d2f02d65fb4d2915563d8b4c4f026e4657 (diff) | |
download | clogger-2dd3e22782090dc347429e306569f687fa794d06.tar.gz |
Clogger may set this value independently of "rack.multithread" since Actor/Fiber-based servers may have multiple instances of Clogger wrapping different response bodies and yet be incompatible with "rack.multithread"
Diffstat (limited to 'ext/clogger_ext')
-rw-r--r-- | ext/clogger_ext/clogger.c | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/ext/clogger_ext/clogger.c b/ext/clogger_ext/clogger.c index f2d82d6..da6b5d2 100644 --- a/ext/clogger_ext/clogger.c +++ b/ext/clogger_ext/clogger.c @@ -599,6 +599,19 @@ static VALUE clogger_init(int argc, VALUE *argv, VALUE self) tmp = rb_hash_aref(o, ID2SYM(rb_intern("format"))); if (!NIL_P(tmp)) fmt = tmp; + + tmp = rb_hash_aref(o, ID2SYM(rb_intern("reentrant"))); + switch (TYPE(tmp)) { + case T_TRUE: + c->reentrant = 1; + break; + case T_FALSE: + c->reentrant = 0; + case T_NIL: + break; + default: + rb_raise(rb_eArgError, ":reentrant must be boolean"); + } } init_buffers(c); |