diff options
| author | Mike Pall <mike> | 2020-07-12 14:30:34 +0200 |
|---|---|---|
| committer | Mike Pall <mike> | 2020-07-12 14:30:34 +0200 |
| commit | 53f82e6e2e858a0a62fd1a2ff47e9866693382e6 (patch) | |
| tree | 49a2ecfc6e046c191f65771b40b07fa57ee890f6 /src | |
| parent | f5b0fff5a990004375ad43aa6e6c4a11a8b6eb7e (diff) | |
| download | luajit-53f82e6e2e858a0a62fd1a2ff47e9866693382e6.tar.gz luajit-53f82e6e2e858a0a62fd1a2ff47e9866693382e6.tar.bz2 luajit-53f82e6e2e858a0a62fd1a2ff47e9866693382e6.zip | |
Fix frame traversal for __gc handler frames.
Reported by Changochen.
Diffstat (limited to 'src')
| -rw-r--r-- | src/lj_err.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/src/lj_err.c b/src/lj_err.c index caa7487f..e3e0c2eb 100644 --- a/src/lj_err.c +++ b/src/lj_err.c | |||
| @@ -529,6 +529,7 @@ static ptrdiff_t finderrfunc(lua_State *L) | |||
| 529 | if (cframe_canyield(cf)) return 0; | 529 | if (cframe_canyield(cf)) return 0; |
| 530 | if (cframe_errfunc(cf) >= 0) | 530 | if (cframe_errfunc(cf) >= 0) |
| 531 | return cframe_errfunc(cf); | 531 | return cframe_errfunc(cf); |
| 532 | cf = cframe_prev(cf); | ||
| 532 | frame = frame_prevd(frame); | 533 | frame = frame_prevd(frame); |
| 533 | break; | 534 | break; |
| 534 | case FRAME_PCALL: | 535 | case FRAME_PCALL: |
