ext/ox/dump.c in ox-2.0.9 vs ext/ox/dump.c in ox-2.0.11

- old
+ new

@@ -737,9 +737,17 @@ e.type = DateCode; out->w_start(out, &e); dump_date(out, obj); e.indent = -1; out->w_end(out, &e); + } else if (0 == strcmp("BigDecimal", classname)) { + VALUE rs = rb_funcall(obj, ox_to_s_id, 0); + + e.type = BigDecimalCode; + out->w_start(out, &e); + dump_value(out, StringValuePtr(rs), RSTRING_LEN(rs)); + e.indent = -1; + out->w_end(out, &e); } else { if (StrictEffort == out->opts->effort) { rb_raise(rb_eNotImpError, "Failed to dump T_DATA %s\n", classname); } else { e.type = NilClassCode;