diff options
author | Araq <rumpf_a@web.de> | 2017-03-14 15:45:35 +0100 |
---|---|---|
committer | Araq <rumpf_a@web.de> | 2017-03-14 15:45:35 +0100 |
commit | 98c7bab8eaa3daf872b12984a07b269f548210e4 (patch) | |
tree | dee28d6557ad3d2e8ac15d0e9e58419b5d978515 /lib/pure/nimtracker.nim | |
parent | ced38f3fdb4a4eedd8c999c479b80d593dfe2600 (diff) | |
download | Nim-98c7bab8eaa3daf872b12984a07b269f548210e4.tar.gz |
make memory tracker work without onThreadCreation
Diffstat (limited to 'lib/pure/nimtracker.nim')
-rw-r--r-- | lib/pure/nimtracker.nim | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/lib/pure/nimtracker.nim b/lib/pure/nimtracker.nim index acc242257..a66dfc2ea 100644 --- a/lib/pure/nimtracker.nim +++ b/lib/pure/nimtracker.nim @@ -23,12 +23,6 @@ var const insertQuery = "INSERT INTO tracking(op, address, size, file, line) values (?, ?, ?, ?, ?)" -when compileOption("threads"): - onThreadCreation do(): - if prepare_v2(dbHandle, insertQuery, - insertQuery.len, insertStmt, nil) != SQLITE_OK: - quit "could not bind query to insertStmt " & $sqlite3.errmsg(dbHandle) - template sbind(x: int; value) = when value is cstring: let ret = insertStmt.bindText(x, value, value.len.int32, SQLITE_TRANSIENT) @@ -41,6 +35,10 @@ template sbind(x: int; value) = when defined(memTracker): proc logEntries(log: TrackLog) {.nimcall, locks: 0, tags: [], gcsafe.} = + if insertStmt.isNil: + if prepare_v2(dbHandle, insertQuery, + insertQuery.len, insertStmt, nil) != SQLITE_OK: + quit "could not bind query to insertStmt " & $sqlite3.errmsg(dbHandle) for i in 0..log.count-1: var success = false let e = log.data[i] |