summaryrefslogtreecommitdiff
path: root/include/ruby
diff options
context:
space:
mode:
authorJean Boussier <jean.boussier@gmail.com>2025-11-25 15:06:33 +0100
committerJean Boussier <jean.boussier@gmail.com>2025-12-03 08:14:56 +0100
commit8c3909935e2ba9f79bf3492772c77c305a0d370b (patch)
tree3a8cde0646e04f8ac79b6d332c462445b30dc2e4 /include/ruby
parent4762f429f4c26ce838bd3810dc709d08a207716a (diff)
Handle NEWOBJ tracepoints settings fields
[Bug #21710] - struct.c: `struct_alloc` It is possible for a `NEWOBJ` tracepoint call back to write fields into a newly allocated object before `struct_alloc` had the time to set the `RSTRUCT_GEN_FIELDS` flags and such. Hence we can't blindly initialize the `fields_obj` reference to `0` we first need to check no fields were added yet. - object.c: `rb_class_allocate_instance` Similarly, if a `NEWOBJ` tracepoint tries to set fields on the object, the `shape_id` must already be set, as it's required on T_OBJECT to know where to write fields. `NEWOBJ_OF` had to be refactored to accept a `shape_id`.
Diffstat (limited to 'include/ruby')
0 files changed, 0 insertions, 0 deletions