View Issue Details
| ID | Project | Category | View Status | Date Submitted | Last Update |
|---|---|---|---|---|---|
| 0002046 | Xdebug | Tracing | public | 2021-11-22 10:30 | 2021-12-01 15:39 |
| Reporter | eater | Assigned To | |||
| Priority | normal | Severity | minor | Reproducibility | always |
| Status | closed | Resolution | fixed | ||
| Platform | x86_64 | OS | Void Linux | ||
| Product Version | 3.1.1 | ||||
| Fixed in Version | 3.1.2 | ||||
| Summary | 0002046: Segault on xdebug_get_function_stack inside a Fiber | ||||
| Description | When I call xdebug_get_function_stack inside a Fiber I expect to see the function stack originating from the Fiber entry point instead php segfaults instantly | ||||
| Steps To Reproduce | Run the following on PHP 8.1.0RC6 with xdebug 3.1.1 <?php var_dump(xdebug_get_function_stack()); $f->start(); | ||||
| Additional Information | From preliminary inspection it looks like xdebug tries to retrieve the file of the Fiber (see https://github.com/xdebug/xdebug/blob/3.1.1/src/develop/stack.c#L1069 ) but the closure has no file associated with it as can been seen in PHP's backtrace, thus segfaulting on copying it relevant valgrind/gdb excerpts (full logs in attachments) valgrind: gdb: | ||||
| Tags | No tags attached. | ||||
| Operating System | |||||
| PHP Version | 8.1.0-8.1.4 | ||||
|
|
I can indeed reproduce this with Xdebug 3.1.1, but not with the latest code in the xdebug_3_1 branch. I think this is a duplicated of 0002036. If you can try the latest xdebug_3_1 (or master) branch from GitHub to verify, that'd be great. The fix for 0002036 will be in Xdebug 3.1.2, which I am intending to release this week. |
|
|
Indeed works for me on master! thanks :) |