summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog5
-rw-r--r--marshal.c4
2 files changed, 7 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index 02ffde61cc..fad77f762f 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+Sat Aug 9 10:36:21 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
+
+ * marshal.c (w_object): do not dump generic instance variable when
+ marshal_dump is defined.
+
Sat Aug 9 00:35:00 2003 Shigeo Kobayashi <shigek@ruby-lang.org>
* ext/bigdecimal.c: F style output(like 1234.56789) implemented
diff --git a/marshal.c b/marshal.c
index 84125f767e..e4f84454eb 100644
--- a/marshal.c
+++ b/marshal.c
@@ -486,7 +486,7 @@ w_object(obj, arg, limit)
w_byte(TYPE_USRMARSHAL, arg);
w_unique(rb_class2name(CLASS_OF(obj)), arg);
w_object(v, arg, limit);
- if (ivtbl) w_ivar(ivtbl, &c_arg);
+ if (ivtbl) w_ivar(0, &c_arg); /* do not dump generic_ivar */
return;
}
if (rb_respond_to(obj, s_dump)) {
@@ -498,7 +498,7 @@ w_object(obj, arg, limit)
}
w_class(TYPE_USERDEF, obj, arg);
w_bytes(RSTRING(v)->ptr, RSTRING(v)->len, arg);
- if (ivtbl) w_ivar(ivtbl, &c_arg);
+ if (ivtbl) w_ivar(0, &c_arg);
return;
}