diff options
Diffstat (limited to 'ext/win32ole')
-rw-r--r-- | ext/win32ole/win32ole_variant.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/ext/win32ole/win32ole_variant.c b/ext/win32ole/win32ole_variant.c index 3bbf86df52..eb0a463f93 100644 --- a/ext/win32ole/win32ole_variant.c +++ b/ext/win32ole/win32ole_variant.c @@ -155,7 +155,7 @@ ole_val2variant_err(VALUE val, VARIANT *var) if (rb_obj_is_kind_of(v, cWIN32OLE_VARIANT)) { v = folevariant_value(v); } - if (TYPE(v) != T_FIXNUM && TYPE(v) != T_BIGNUM && v != Qnil) { + if (!(FIXNUM_P(v) || RB_TYPE_P(v, T_BIGNUM) || v == Qnil)) { rb_raise(eWIN32OLERuntimeError, "failed to convert VT_ERROR VARIANT:`%"PRIsVALUE"'", rb_inspect(v)); } V_VT(var) = VT_ERROR; |