Commit 2225295
committed
Fix GH-19653: Closure named argument unpacking between temporary closures can cause a crash
Due to user closures, the `fbc` address isn't unique if the memory address is reused.
We need to distinguish using a unique key, and we choose arg_info such
that it can be reused across different functions.
Closes GH-19654.1 parent b46681d commit 2225295
File tree
4 files changed
+67
-6
lines changed- Zend
- tests/closures
4 files changed
+67
-6
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
8 | 8 | | |
9 | 9 | | |
10 | 10 | | |
| 11 | + | |
| 12 | + | |
11 | 13 | | |
12 | 14 | | |
13 | 15 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
5058 | 5058 | | |
5059 | 5059 | | |
5060 | 5060 | | |
5061 | | - | |
| 5061 | + | |
| 5062 | + | |
| 5063 | + | |
| 5064 | + | |
| 5065 | + | |
| 5066 | + | |
5062 | 5067 | | |
5063 | 5068 | | |
5064 | 5069 | | |
| |||
5069 | 5074 | | |
5070 | 5075 | | |
5071 | 5076 | | |
5072 | | - | |
5073 | | - | |
| 5077 | + | |
| 5078 | + | |
| 5079 | + | |
| 5080 | + | |
5074 | 5081 | | |
5075 | 5082 | | |
5076 | 5083 | | |
| |||
5079 | 5086 | | |
5080 | 5087 | | |
5081 | 5088 | | |
5082 | | - | |
| 5089 | + | |
5083 | 5090 | | |
5084 | 5091 | | |
5085 | 5092 | | |
5086 | 5093 | | |
5087 | 5094 | | |
5088 | 5095 | | |
5089 | 5096 | | |
5090 | | - | |
5091 | | - | |
| 5097 | + | |
| 5098 | + | |
| 5099 | + | |
| 5100 | + | |
5092 | 5101 | | |
5093 | 5102 | | |
5094 | 5103 | | |
| |||
0 commit comments