diff options
author | drh <drh@noemail.net> | 2014-09-18 21:25:33 +0000 |
---|---|---|
committer | drh <drh@noemail.net> | 2014-09-18 21:25:33 +0000 |
commit | 17bcb102993a155dec69a58e2f079a880e1967b7 (patch) | |
tree | 8abc9f4462b8269582e7e4aa23c7af3dd82dd360 /src/malloc.c | |
parent | 26c79a060b2e7fdf6d05585a3b44d0498df3fe1c (diff) | |
download | sqlite-17bcb102993a155dec69a58e2f079a880e1967b7.tar.gz sqlite-17bcb102993a155dec69a58e2f079a880e1967b7.zip |
Add the Mem.szMalloc element to the Mem object and use it to keep track of
the size of the Mem.zMalloc allocation.
FossilOrigin-Name: 9c09ac353df6041808cace41880f4729ee73f5e1
Diffstat (limited to 'src/malloc.c')
-rw-r--r-- | src/malloc.c | 19 |
1 files changed, 11 insertions, 8 deletions
diff --git a/src/malloc.c b/src/malloc.c index e0d5b5ff9..8ba5fa0a8 100644 --- a/src/malloc.c +++ b/src/malloc.c @@ -451,15 +451,18 @@ int sqlite3MallocSize(void *p){ return sqlite3GlobalConfig.m.xSize(p); } int sqlite3DbMallocSize(sqlite3 *db, void *p){ - assert( db!=0 ); - assert( sqlite3_mutex_held(db->mutex) ); - if( isLookaside(db, p) ){ - return db->lookaside.sz; + if( db==0 ){ + return sqlite3MallocSize(p); }else{ - assert( sqlite3MemdebugHasType(p, MEMTYPE_DB) ); - assert( sqlite3MemdebugHasType(p, MEMTYPE_LOOKASIDE|MEMTYPE_HEAP) ); - assert( db!=0 || sqlite3MemdebugNoType(p, MEMTYPE_LOOKASIDE) ); - return sqlite3GlobalConfig.m.xSize(p); + assert( sqlite3_mutex_held(db->mutex) ); + if( isLookaside(db, p) ){ + return db->lookaside.sz; + }else{ + assert( sqlite3MemdebugHasType(p, MEMTYPE_DB) ); + assert( sqlite3MemdebugHasType(p, MEMTYPE_LOOKASIDE|MEMTYPE_HEAP) ); + assert( db!=0 || sqlite3MemdebugNoType(p, MEMTYPE_LOOKASIDE) ); + return sqlite3GlobalConfig.m.xSize(p); + } } } sqlite3_uint64 sqlite3_msize(void *p){ |