summaryrefslogtreecommitdiff
path: root/marshal.c
diff options
context:
space:
mode:
Diffstat (limited to 'marshal.c')
-rw-r--r--marshal.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/marshal.c b/marshal.c
index a2e6a0a40c..3a6d3bd000 100644
--- a/marshal.c
+++ b/marshal.c
@@ -17,7 +17,7 @@ double strtod();
#endif
#define MARSHAL_MAJOR 4
-#define MARSHAL_MINOR 3
+#define MARSHAL_MINOR 4
#define TYPE_NIL '0'
#define TYPE_TRUE 'T'
@@ -253,6 +253,10 @@ w_object(obj, arg, limit)
}
#endif
}
+ else if (SYMBOL_P(obj)) {
+ w_symbol(obj, arg);
+ return;
+ }
else {
int num;
@@ -877,6 +881,8 @@ r_object(arg)
}
return r_regist(m, arg);
}
+ case TYPE_SYMBOL:
+ return ID2SYM(r_symbol(arg));
default:
rb_raise(rb_eArgError, "dump format error(0x%x)", type);