1
0
mirror of https://github.com/sqlite/sqlite.git synced 2025-08-01 06:27:03 +03:00

The OP_ResultRow opcode releases the SCopy dependences on all its registers,

as the values in those registers will not be reused.

FossilOrigin-Name: 1dc83c5d54ca2890112e735e336c209adb8d067d2f647e9f8ae5d58f84a52461
This commit is contained in:
drh
2019-12-31 12:18:24 +00:00
parent 70d6b8327a
commit 02ff747bc0
4 changed files with 27 additions and 11 deletions

View File

@ -306,7 +306,15 @@ do_execsql_test 8.10 {
SELECT * FROM t0 WHERE likelihood(t0.rowid <= '0', 0.5);
} {}
# 2019-12-31: assertion fault discovered by Yongheng's fuzzer.
# Harmless memIsValid() due to the code generators failure to
# release the registers used by OP_ResultRow.
#
do_execsql_test 9.10 {
DROP TABLE IF EXISTS t1;
CREATE TABLE t1(a, b FLOAT);
INSERT INTO t1(a) VALUES(''),(NULL),('X'),(NULL);
SELECT coalesce(max(quote(a)),10) FROM t1 GROUP BY a;
} {NULL '' 'X'}
finish_test