[macruby-changes] [223] MacRuby/trunk

source_changes at macosforge.org source_changes at macosforge.org
Mon May 26 20:52:39 PDT 2008


Revision: 223
          http://trac.macosforge.org/projects/ruby/changeset/223
Author:   lsansonetti at apple.com
Date:     2008-05-26 20:52:39 -0700 (Mon, 26 May 2008)

Log Message:
-----------
fixing more bugs so that rdoc can generate RI files

Modified Paths:
--------------
    MacRuby/trunk/ext/syck/emitter.c
    MacRuby/trunk/variable.c

Modified: MacRuby/trunk/ext/syck/emitter.c
===================================================================
--- MacRuby/trunk/ext/syck/emitter.c	2008-05-27 03:23:04 UTC (rev 222)
+++ MacRuby/trunk/ext/syck/emitter.c	2008-05-27 03:52:39 UTC (rev 223)
@@ -1194,7 +1194,10 @@
      */
     if ( e->markers == NULL )
     {
-        GC_WB(&e->markers, st_init_numtable());
+        e->markers = st_init_numtable();
+#if WITH_OBJC
+	rb_objc_retain(e->markers);
+#endif
     }
 
     /*

Modified: MacRuby/trunk/variable.c
===================================================================
--- MacRuby/trunk/variable.c	2008-05-27 03:23:04 UTC (rev 222)
+++ MacRuby/trunk/variable.c	2008-05-27 03:52:39 UTC (rev 223)
@@ -1088,7 +1088,7 @@
     st_data_t index;
 
 #if WITH_OBJC
-    if (rb_objc_is_non_native(obj))
+    if (!rb_special_const_p(obj) && rb_objc_is_non_native(obj))
 	return generic_ivar_get(obj, id, warn);
 #endif
 
@@ -1144,7 +1144,7 @@
 	rb_raise(rb_eSecurityError, "Insecure: can't modify instance variable");
     if (OBJ_FROZEN(obj)) rb_error_frozen("object");
 #if WITH_OBJC
-    if (rb_objc_is_non_native(obj)) {
+    if (!rb_special_const_p(obj) && rb_objc_is_non_native(obj)) {
 	rb_objc_flag_set(obj, FL_EXIVAR, true);
 	generic_ivar_set(obj, id, val);
 	return val;
@@ -1223,9 +1223,11 @@
     VALUE val;
     struct st_table *iv_index_tbl;
     st_data_t index;
-    if (rb_objc_is_non_native(obj)) {
+#if WITH_OBJC
+    if (!rb_special_const_p(obj) && rb_objc_is_non_native(obj)) {
 	return generic_ivar_defined(obj, id);
     }
+#endif
     switch (TYPE(obj)) {
       case T_OBJECT:
         iv_index_tbl = ROBJECT_IV_INDEX_TBL(obj);
@@ -1287,7 +1289,7 @@
 void rb_ivar_foreach(VALUE obj, int (*func)(ANYARGS), st_data_t arg)
 {
 #if WITH_OBJC
-    if (rb_objc_is_non_native(obj))
+    if (!rb_special_const_p(obj) && rb_objc_is_non_native(obj))
 	goto generic;
 #endif
     switch (TYPE(obj)) {

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.macosforge.org/pipermail/macruby-changes/attachments/20080526/77113dad/attachment.htm 


More information about the macruby-changes mailing list