1# 2009 April 30 2# 3# The author disclaims copyright to this source code. In place of 4# a legal notice, here is a blessing: 5# 6# May you do good and not evil. 7# May you find forgiveness for yourself and forgive others. 8# May you share freely, never taking more than you give. 9# 10#*********************************************************************** 11# 12# Ticket #3832 13# 14# A segfault when using a BEFORE trigger on an INSERT and inserting 15# a NULL into the INTEGER PRIMARY KEY. 16# 17# $Id: tkt3832.test,v 1.1 2009/05/01 02:08:04 drh Exp $ 18 19set testdir [file dirname $argv0] 20source $testdir/tester.tcl 21ifcapable {!trigger} { 22 finish_test 23 return 24} 25 26 27do_test tkt3832-1.1 { 28 db eval { 29 CREATE TABLE t1(a INT, b INTEGER PRIMARY KEY); 30 CREATE TABLE log(x); 31 CREATE TRIGGER t1r1 BEFORE INSERT ON t1 BEGIN 32 INSERT INTO log VALUES(new.b); 33 END; 34 INSERT INTO t1 VALUES(NULL,5); 35 INSERT INTO t1 SELECT b, a FROM t1 ORDER BY b; 36 SELECT rowid, * FROM t1; 37 SELECT rowid, * FROM log; 38 } 39} {5 {} 5 6 5 6 1 5 2 -1} 40 41finish_test 42