From: Nobuyoshi Nakada Date: 2008-07-20T08:34:20+09:00 Subject: [ruby-dev:35595] Re: [BUG] cfp consistency error in Win32OLE なかだです。 At Fri, 18 Jul 2008 18:13:26 +0900, wanabe wrote in [ruby-dev:35576]: > @@ -7491,7 +7517,11 @@ > } > } > else { > - result = rb_apply(handler, rb_intern("call"), args); > + VALUE pargs[2]; > + pargs[0] = handler; > + pargs[1] = args; > + result = rb_rescue(EVENTSINK_Invoke_procall, (VALUE) pargs, > + push_exc, rb_ivar_get(obj, rb_intern("ole"))); > if(TYPE(result) == T_HASH) { > hash2ptr_dispparams(result, pTypeInfo, dispid, pdispparams); > result = hash2result(result); 拡張ライブラリで例外をトラップするのであれば、rb_rescueよりも rb_protectを使ってください。 -- --- 僕の前にBugはない。 --- 僕の後ろにBugはできる。 中田 伸悦