Fix memsize_of for string objects; #5032

This commit is contained in:
Yukihiro "Matz" Matsumoto
2020-07-17 10:51:01 +09:00
parent 9840d6a2e7
commit 7f66cf7d66
@@ -250,7 +250,10 @@ os_memsize_of_object(mrb_state* mrb, mrb_value obj, mrb_value recurse, mrb_int*
switch(obj.tt) {
case MRB_TT_STRING:
(*t) += RSTRING_LEN(obj);
(*t) += mrb_objspace_page_slot_size();
if (!RSTR_EMBED_P(RSTRING(obj)) && !RSTR_SHARED_P(RSTRING(obj))) {
(*t) += RSTRING_CAPA(obj);
}
break;
case MRB_TT_CLASS:
case MRB_TT_MODULE: