[macruby-changes] [2310] MacRuby/trunk/array.c
source_changes at macosforge.org
source_changes at macosforge.org
Thu Aug 13 15:40:54 PDT 2009
Revision: 2310
http://trac.macosforge.org/projects/ruby/changeset/2310
Author: lsansonetti at apple.com
Date: 2009-08-13 15:40:54 -0700 (Thu, 13 Aug 2009)
Log Message:
-----------
Array#dup/clone: fixed for extended RubyArray objects
Modified Paths:
--------------
MacRuby/trunk/array.c
Modified: MacRuby/trunk/array.c
===================================================================
--- MacRuby/trunk/array.c 2009-08-13 20:44:16 UTC (rev 2309)
+++ MacRuby/trunk/array.c 2009-08-13 22:40:54 UTC (rev 2310)
@@ -1600,18 +1600,17 @@
{
VALUE dup;
- if (IS_RARY(ary)) {
+ if (rb_obj_is_kind_of(ary, rb_cRubyArray)) {
dup = rb_ary_new();
rary_concat(RARY(dup), RARY(ary), 0, RARY(ary)->len);
}
else {
dup = (VALUE)CFArrayCreateMutableCopy(NULL, 0, (CFArrayRef)ary);
- if (*(Class *)ary != (Class)rb_cCFArray) {
- *(Class *)dup = *(Class *)ary;
- }
CFMakeCollectable((CFMutableArrayRef)dup);
}
+ *(VALUE *)dup = *(VALUE *)ary;
+
if (OBJ_TAINTED(ary)) {
OBJ_TAINT(dup);
}
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/macruby-changes/attachments/20090813/b82a475c/attachment.html>
More information about the macruby-changes
mailing list