kimura wataru
kimur****@i*****
Sun Feb 10 15:27:38 JST 2008
Hi, RubyCocoa trunk(r2188) fails in test/tc_uniqobj.rb. % ruby install.rb test --test-args=--testcase=TC_UniqObject 1) Failure: test_equality_of_a_objc_object_that_has_been_instantiated_from_a_nib(TC_UniqO bject) [./tc_uniqobj.rb:96]: <false> is not true. 6 tests, 15 assertions, 1 failures, 0 errors test failed This failure caused RubyCocoa do not cache ObjC obejct passed as arguments from ObjC world. The following change will solve this. I guess ovmix_ffi_closure() in OverrideMixin.m has the same problem. =================================================================== --- framework/src/objc/RBObject.m (revision 2188) +++ framework/src/objc/RBObject.m (working copy) @@ -142,7 +142,7 @@ RBOBJ_LOG("arg[%d] of type '%s'", i, octstr); [an_inv getArgument: ocdata atIndex: (i+2)]; - f_conv_success = ocdata_to_rbobj(Qfalse, octstr, ocdata, &arg_val, NO); + f_conv_success = ocdata_to_rbobj(Qnil, octstr, ocdata, &arg_val, NO); if (f_conv_success == NO) { arg_val = Qnil; }