summaryrefslogtreecommitdiff
path: root/template
diff options
context:
space:
mode:
authorJean Boussier <jean.boussier@gmail.com>2026-03-24 12:25:24 +0100
committerJean Boussier <jean.boussier@gmail.com>2026-04-01 11:43:55 +0100
commit9a2ffd8e5448e0c2ac4ae58d0ef02afc195f2cb8 (patch)
treec953869e88792caf1a133efedb375a8cad187e42 /template
parent3f1acedb62a0dbb2509e05ea314f6cd3383247b6 (diff)
Fix sending backtraces across ractors
[Bug #21818] Currently exceptions can be sent across ractors, but because of a limitation in the TypedData API, the exception backtrace is duped as an empty backtrace. The problem is that backtraces are embedded objects, hence the classic `rb_class_alloc(klass)` API is insufficient because we need to know the size of the Backtrace object we're duping to instantiate the copy. This is worked around by changing Ractors to call `#clone` on objects rather than use `rb_obj_clone`, and to implement `Thread::Backtrace#clone` to properly clone the variable size object.
Diffstat (limited to 'template')
-rw-r--r--template/id.c.tmpl2
1 files changed, 1 insertions, 1 deletions
diff --git a/template/id.c.tmpl b/template/id.c.tmpl
index 5aa8e47ce7..d40f143065 100644
--- a/template/id.c.tmpl
+++ b/template/id.c.tmpl
@@ -1,5 +1,5 @@
%# -*- c -*-
-/* DO NOT EDIT THIS FILE DIRECTLY */
+/* DO NOT EDIT THIS FILE DIRECTLY: source is at template/id.c.tmpl */
/**********************************************************************
id.c -