aboutsummaryrefslogtreecommitdiff
path: root/sqlite3.go
diff options
context:
space:
mode:
authorYasuhiro Matsumoto <mattn.jp@gmail.com>2017-01-03 22:25:02 +0900
committerYasuhiro Matsumoto <mattn.jp@gmail.com>2017-01-03 22:25:02 +0900
commit6f2749a3ca9b233ffb8749ef9684f7f4d88cee7a (patch)
tree99f07d970ea8184870d4cd167c7a27b505049621 /sqlite3.go
parenttemporary fix BeginTx (diff)
downloadgolite-6f2749a3ca9b233ffb8749ef9684f7f4d88cee7a.tar.gz
golite-6f2749a3ca9b233ffb8749ef9684f7f4d88cee7a.tar.xz
fix race condition
Diffstat (limited to 'sqlite3.go')
-rw-r--r--sqlite3.go6
1 files changed, 3 insertions, 3 deletions
diff --git a/sqlite3.go b/sqlite3.go
index 64933f1..a11e990 100644
--- a/sqlite3.go
+++ b/sqlite3.go
@@ -808,13 +808,13 @@ func (s *SQLiteStmt) exec(ctx context.Context, args []namedValue) (driver.Result
done := make(chan struct{})
defer close(done)
- go func() {
+ go func(db *C.sqlite3) {
select {
case <-ctx.Done():
- C.sqlite3_interrupt(s.c.db)
+ C.sqlite3_interrupt(db)
case <-done:
}
- }()
+ }(s.c.db)
var rowid, changes C.longlong
rv := C._sqlite3_step(s.s, &rowid, &changes)