198
201
//VALUE result = rb_funcall2(m_method, rb_intern("call"), argsize, args);
202
205
VALUE argarray = rb_ary_new2(3);
203
206
rb_ary_store(argarray, 0, m_method); //self
204
207
rb_ary_store(argarray, 1, INT2FIX(argsize));
205
208
rb_ary_store(argarray, 2, args);
206
209
VALUE result = rb_rescue2((VALUE(*)(...))callFunction, argarray, (VALUE(*)(...))callFunctionException, Qnil, rb_eException, 0);
209
212
// finally set the returnvalue
210
213
m_tmpResult = RubyType<QVariant>::toVariant(result);
211
214
#ifdef KROSS_RUBY_FUNCTION_DEBUG
212
215
QObject* sender = QObject::sender();
215
218
//_a[0] = Kross::MetaTypeVariant<QVariant>(d->tmpResult).toVoidStar();