summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authornobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2009-11-11 00:36:04 +0000
committernobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2009-11-11 00:36:04 +0000
commitacd158f6d4cb5ddb812b5226c2022ff3ec6d947c (patch)
tree3ee2f8140848407bb2fcc72854e9cd4c79d06fa7
parent752d1deaebf4d7c7d5fe023e79ef1ab080930c16 (diff)
downloadruby-acd158f6d4cb5ddb812b5226c2022ff3ec6d947c.tar.gz
ruby-acd158f6d4cb5ddb812b5226c2022ff3ec6d947c.tar.xz
ruby-acd158f6d4cb5ddb812b5226c2022ff3ec6d947c.zip
* marshal.c (w_object, r_object0): use RHASH_IFNONE but not ifnone
directly. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@25714 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r--ChangeLog5
-rw-r--r--marshal.c8
2 files changed, 9 insertions, 4 deletions
diff --git a/ChangeLog b/ChangeLog
index 16d68e2f8..fa9e40580 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+Wed Nov 11 09:36:02 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
+
+ * marshal.c (w_object, r_object0): use RHASH_IFNONE but not ifnone
+ directly.
+
Wed Nov 11 08:32:45 2009 Tanaka Akira <akr@fsij.org>
* thread.c (blocking_region_begin): define before BLOCKING_REGION.
diff --git a/marshal.c b/marshal.c
index f4558cac8..bcc8352f7 100644
--- a/marshal.c
+++ b/marshal.c
@@ -778,7 +778,7 @@ w_object(VALUE obj, struct dump_arg *arg, int limit)
case T_HASH:
w_uclass(obj, rb_cHash, arg);
- if (NIL_P(RHASH(obj)->ifnone)) {
+ if (NIL_P(RHASH_IFNONE(obj))) {
w_byte(TYPE_HASH, arg);
}
else if (FL_TEST(obj, FL_USER2)) {
@@ -790,8 +790,8 @@ w_object(VALUE obj, struct dump_arg *arg, int limit)
}
w_long(RHASH_SIZE(obj), arg);
rb_hash_foreach(obj, hash_each, (st_data_t)&c_arg);
- if (!NIL_P(RHASH(obj)->ifnone)) {
- w_object(RHASH(obj)->ifnone, arg, limit);
+ if (!NIL_P(RHASH_IFNONE(obj))) {
+ w_object(RHASH_IFNONE(obj), arg, limit);
}
break;
@@ -1564,7 +1564,7 @@ r_object0(struct load_arg *arg, int *ivp, VALUE extmod)
rb_hash_aset(v, key, value);
}
if (type == TYPE_HASH_DEF) {
- RHASH(v)->ifnone = r_object(arg);
+ RHASH_IFNONE(v) = r_object(arg);
}
v = r_leave(v, arg);
}