mirror of
https://github.com/mruby/mruby
synced 2026-06-08 16:11:16 +00:00
mruby-struct/struct.c: update the behavior when actual size differs
Assertions may be false and terminate the whole process when actual size for struct objects are different.
This commit is contained in:
@@ -524,7 +524,9 @@ mrb_struct_equal(mrb_state *mrb, mrb_value s)
|
||||
if (mrb_obj_class(mrb, s) != mrb_obj_class(mrb, s2)) {
|
||||
return mrb_false_value();
|
||||
}
|
||||
mrb_assert(RSTRUCT_LEN(s) == RSTRUCT_LEN(s2));
|
||||
if (RSTRUCT_LEN(s) != RSTRUCT_LEN(s2)) {
|
||||
return mrb_false_value();
|
||||
}
|
||||
ptr = RSTRUCT_PTR(s);
|
||||
ptr2 = RSTRUCT_PTR(s2);
|
||||
len = RSTRUCT_LEN(s);
|
||||
@@ -558,7 +560,9 @@ mrb_struct_eql(mrb_state *mrb, mrb_value s)
|
||||
if (mrb_obj_class(mrb, s) != mrb_obj_class(mrb, s2)) {
|
||||
return mrb_false_value();
|
||||
}
|
||||
mrb_assert(RSTRUCT_LEN(s) == RSTRUCT_LEN(s2));
|
||||
if (RSTRUCT_LEN(s) != RSTRUCT_LEN(s2)) {
|
||||
return mrb_false_value();
|
||||
}
|
||||
ptr = RSTRUCT_PTR(s);
|
||||
ptr2 = RSTRUCT_PTR(s2);
|
||||
len = RSTRUCT_LEN(s);
|
||||
|
||||
Reference in New Issue
Block a user