diff options
| author | Mike Pall <mike> | 2021-10-12 23:49:47 +0200 |
|---|---|---|
| committer | Mike Pall <mike> | 2021-10-12 23:49:47 +0200 |
| commit | bfd076532cdf1159df13499392879f5f4d3a9a5d (patch) | |
| tree | 9135b02923923382b6b1495aedbd6eb9fd88bd85 /src | |
| parent | 05f1984e1a862e4b3d3c3b370c773492e2edf84a (diff) | |
| download | luajit-bfd076532cdf1159df13499392879f5f4d3a9a5d.tar.gz luajit-bfd076532cdf1159df13499392879f5f4d3a9a5d.tar.bz2 luajit-bfd076532cdf1159df13499392879f5f4d3a9a5d.zip | |
Fix string buffer method recording.
Reported and analyzed by vfprintf. #755
Diffstat (limited to 'src')
| -rw-r--r-- | src/lj_ffrecord.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/src/lj_ffrecord.c b/src/lj_ffrecord.c index 4c351bd6..97b40f98 100644 --- a/src/lj_ffrecord.c +++ b/src/lj_ffrecord.c | |||
| @@ -1123,6 +1123,7 @@ static TRef recff_sbufx_check(jit_State *J, RecordFFData *rd, int arg) | |||
| 1123 | if (!tvisbuf(&rd->argv[arg])) lj_trace_err(J, LJ_TRERR_BADTYPE); | 1123 | if (!tvisbuf(&rd->argv[arg])) lj_trace_err(J, LJ_TRERR_BADTYPE); |
| 1124 | trtype = emitir(IRT(IR_FLOAD, IRT_U8), ud, IRFL_UDATA_UDTYPE); | 1124 | trtype = emitir(IRT(IR_FLOAD, IRT_U8), ud, IRFL_UDATA_UDTYPE); |
| 1125 | emitir(IRTGI(IR_EQ), trtype, lj_ir_kint(J, UDTYPE_BUFFER)); | 1125 | emitir(IRTGI(IR_EQ), trtype, lj_ir_kint(J, UDTYPE_BUFFER)); |
| 1126 | J->needsnap = 1; | ||
| 1126 | return ud; | 1127 | return ud; |
| 1127 | } | 1128 | } |
| 1128 | 1129 | ||
