Commit 61e44df
committed
sqlite: prevent reentrant statement finalization
Track statement execution depth while calling sqlite3_step(). Reject
close() and deserialize() while a statement is executing so callbacks
cannot finalize the active statement and crash.
Signed-off-by: Kamat, Trivikram <16024985+trivikr@users.noreply.github.com>
Assisted-by: codex:gpt-5.6-sol1 parent c8fa0b1 commit 61e44df
4 files changed
Lines changed: 51 additions & 4 deletions
File tree
- src
- test/parallel
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1063 | 1063 | | |
1064 | 1064 | | |
1065 | 1065 | | |
| 1066 | + | |
| 1067 | + | |
| 1068 | + | |
| 1069 | + | |
| 1070 | + | |
| 1071 | + | |
1066 | 1072 | | |
1067 | 1073 | | |
1068 | 1074 | | |
| |||
1456 | 1462 | | |
1457 | 1463 | | |
1458 | 1464 | | |
| 1465 | + | |
| 1466 | + | |
| 1467 | + | |
| 1468 | + | |
1459 | 1469 | | |
1460 | 1470 | | |
1461 | 1471 | | |
| |||
1851 | 1861 | | |
1852 | 1862 | | |
1853 | 1863 | | |
| 1864 | + | |
| 1865 | + | |
| 1866 | + | |
| 1867 | + | |
1854 | 1868 | | |
1855 | 1869 | | |
1856 | 1870 | | |
| |||
2925 | 2939 | | |
2926 | 2940 | | |
2927 | 2941 | | |
2928 | | - | |
| 2942 | + | |
2929 | 2943 | | |
2930 | 2944 | | |
2931 | 2945 | | |
| |||
2967 | 2981 | | |
2968 | 2982 | | |
2969 | 2983 | | |
2970 | | - | |
| 2984 | + | |
2971 | 2985 | | |
2972 | 2986 | | |
2973 | 2987 | | |
| |||
3045 | 3059 | | |
3046 | 3060 | | |
3047 | 3061 | | |
3048 | | - | |
| 3062 | + | |
3049 | 3063 | | |
3050 | 3064 | | |
3051 | 3065 | | |
| |||
3772 | 3786 | | |
3773 | 3787 | | |
3774 | 3788 | | |
3775 | | - | |
| 3789 | + | |
3776 | 3790 | | |
3777 | 3791 | | |
3778 | 3792 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
239 | 239 | | |
240 | 240 | | |
241 | 241 | | |
| 242 | + | |
242 | 243 | | |
243 | 244 | | |
244 | 245 | | |
| |||
247 | 248 | | |
248 | 249 | | |
249 | 250 | | |
| 251 | + | |
250 | 252 | | |
251 | 253 | | |
252 | 254 | | |
| |||
256 | 258 | | |
257 | 259 | | |
258 | 260 | | |
| 261 | + | |
259 | 262 | | |
260 | 263 | | |
261 | 264 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
6 | 6 | | |
7 | 7 | | |
8 | 8 | | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
9 | 22 | | |
10 | 23 | | |
11 | 24 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
82 | 82 | | |
83 | 83 | | |
84 | 84 | | |
| 85 | + | |
| 86 | + | |
| 87 | + | |
| 88 | + | |
| 89 | + | |
| 90 | + | |
| 91 | + | |
| 92 | + | |
| 93 | + | |
| 94 | + | |
| 95 | + | |
| 96 | + | |
| 97 | + | |
| 98 | + | |
| 99 | + | |
| 100 | + | |
| 101 | + | |
85 | 102 | | |
86 | 103 | | |
87 | 104 | | |
| |||
0 commit comments