We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
2 parents f12e496 + a3eb1fd commit 41d75f4Copy full SHA for 41d75f4
ext/zend_test/fiber.c
@@ -352,4 +352,5 @@ void zend_test_fiber_init(void)
352
zend_test_fiber_handlers = std_object_handlers;
353
zend_test_fiber_handlers.dtor_obj = zend_test_fiber_object_destroy;
354
zend_test_fiber_handlers.free_obj = zend_test_fiber_object_free;
355
+ zend_test_fiber_handlers.clone_obj = NULL;
356
}
ext/zend_test/tests/gh16388.phpt
@@ -0,0 +1,12 @@
1
+--TEST--
2
+GH-16388 (UB when freeing a cloned _ZendTestFiber)
3
+--EXTENSIONS--
4
+zend_test
5
+--FILE--
6
+<?php
7
+$fiber = new _ZendTestFiber(function (): int {});
8
+clone $fiber;
9
+?>
10
+--EXPECTF--
11
+Fatal error: Uncaught Error: Trying to clone an uncloneable object of class _ZendTestFiber in %s:%d
12
+%A
0 commit comments