diff options
author | drh <drh@noemail.net> | 2015-10-15 16:20:57 +0000 |
---|---|---|
committer | drh <drh@noemail.net> | 2015-10-15 16:20:57 +0000 |
commit | 039ca6ab59cb869b439a776f1389ef8c3687f017 (patch) | |
tree | fe2dba2e61299fbadd3564f818e97e771cad1eb2 /src/malloc.c | |
parent | b02392e6f0a8980c261c1e46c1f7fbcfe54c23c2 (diff) | |
download | sqlite-039ca6ab59cb869b439a776f1389ef8c3687f017.tar.gz sqlite-039ca6ab59cb869b439a776f1389ef8c3687f017.zip |
Performance optimizations to the sqlite3MallocSize() by requiring the
argument to always be non-NULL.
FossilOrigin-Name: cb65989b0710c65e4df69063b346344fdb1d12c7
Diffstat (limited to 'src/malloc.c')
-rw-r--r-- | src/malloc.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/malloc.c b/src/malloc.c index f017e1bc0..7b52661a3 100644 --- a/src/malloc.c +++ b/src/malloc.c @@ -411,6 +411,7 @@ int sqlite3MallocSize(void *p){ return sqlite3GlobalConfig.m.xSize(p); } int sqlite3DbMallocSize(sqlite3 *db, void *p){ + assert( p!=0 ); if( db==0 || !isLookaside(db,p) ){ #if SQLITE_DEBUG if( db==0 ){ @@ -430,7 +431,7 @@ int sqlite3DbMallocSize(sqlite3 *db, void *p){ sqlite3_uint64 sqlite3_msize(void *p){ assert( sqlite3MemdebugNoType(p, (u8)~MEMTYPE_HEAP) ); assert( sqlite3MemdebugHasType(p, MEMTYPE_HEAP) ); - return (sqlite3_uint64)sqlite3GlobalConfig.m.xSize(p); + return p ? sqlite3GlobalConfig.m.xSize(p) : 0; } /* @@ -456,7 +457,7 @@ void sqlite3_free(void *p){ ** *db->pnBytesFreed. */ static SQLITE_NOINLINE void measureAllocationSize(sqlite3 *db, void *p){ - *db->pnBytesFreed += sqlite3DbMallocSize(db,p); + if( p ) *db->pnBytesFreed += sqlite3DbMallocSize(db,p); } /* |