Eloy Duran
e.dur****@super*****
Mon Feb 11 18:50:40 JST 2008
Indeed I added this testcase so you (Laurent) wouldn't forget about it, due to you moving etc :) Anyways, thanks Kimura-san for the fix! Cheers, Eloy On 10 feb 2008, at 08:04, Laurent Sansonetti wrote: > This test was apparently added in the hope the problem could be fixed. > > Object caching is a difficult problem, there are so many different use > cases that we need to take into account (and some of them are not in > the tests, unfortunately, but in samples or applications). > > I don't remember why Qfalse was specifically passed when converting > method arguments... I fixed them in both places as you suggested (in > r2189), and tried all samples successfully. All tests except those in > tc_activerecord.rb are passing too. > > We should try other RubyCocoa applications and see if this change > doesn't break them. LimeChat is a good one, it seems at least to start > and behave as before. > > Laurent > > On Feb 9, 2008, at 10:27 PM, kimura wataru wrote: > >> 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; >> } >> >> _______________________________________________ >> Rubycocoa-devel mailing list >> Rubyc****@lists***** >> http://lists.sourceforge.jp/mailman/listinfo/rubycocoa-devel > > _______________________________________________ > Rubycocoa-devel mailing list > Rubyc****@lists***** > http://lists.sourceforge.jp/mailman/listinfo/rubycocoa-devel