diff options
author | 2012-04-14 13:13:09 +0000 | |
---|---|---|
committer | 2012-04-14 13:13:09 +0000 | |
commit | dbe60eea59e076f767d5d7dce342b5ed0430e8f7 (patch) | |
tree | cbbe70f70e0ed6f1fc7f75b0778dd4703d71e71c /lib/libsqlite3/src/mem0.c | |
parent | Make kvm_getfile2() have a fighting change to work correctly on crash (diff) | |
download | wireguard-openbsd-dbe60eea59e076f767d5d7dce342b5ed0430e8f7.tar.xz wireguard-openbsd-dbe60eea59e076f767d5d7dce342b5ed0430e8f7.zip |
sqlite 3.7.11 library, vendor sources
Diffstat (limited to 'lib/libsqlite3/src/mem0.c')
-rw-r--r-- | lib/libsqlite3/src/mem0.c | 59 |
1 files changed, 59 insertions, 0 deletions
diff --git a/lib/libsqlite3/src/mem0.c b/lib/libsqlite3/src/mem0.c new file mode 100644 index 00000000000..0d0b6667d60 --- /dev/null +++ b/lib/libsqlite3/src/mem0.c @@ -0,0 +1,59 @@ +/* +** 2008 October 28 +** +** The author disclaims copyright to this source code. In place of +** a legal notice, here is a blessing: +** +** May you do good and not evil. +** May you find forgiveness for yourself and forgive others. +** May you share freely, never taking more than you give. +** +************************************************************************* +** +** This file contains a no-op memory allocation drivers for use when +** SQLITE_ZERO_MALLOC is defined. The allocation drivers implemented +** here always fail. SQLite will not operate with these drivers. These +** are merely placeholders. Real drivers must be substituted using +** sqlite3_config() before SQLite will operate. +*/ +#include "sqliteInt.h" + +/* +** This version of the memory allocator is the default. It is +** used when no other memory allocator is specified using compile-time +** macros. +*/ +#ifdef SQLITE_ZERO_MALLOC + +/* +** No-op versions of all memory allocation routines +*/ +static void *sqlite3MemMalloc(int nByte){ return 0; } +static void sqlite3MemFree(void *pPrior){ return; } +static void *sqlite3MemRealloc(void *pPrior, int nByte){ return 0; } +static int sqlite3MemSize(void *pPrior){ return 0; } +static int sqlite3MemRoundup(int n){ return n; } +static int sqlite3MemInit(void *NotUsed){ return SQLITE_OK; } +static void sqlite3MemShutdown(void *NotUsed){ return; } + +/* +** This routine is the only routine in this file with external linkage. +** +** Populate the low-level memory allocation function pointers in +** sqlite3GlobalConfig.m with pointers to the routines in this file. +*/ +void sqlite3MemSetDefault(void){ + static const sqlite3_mem_methods defaultMethods = { + sqlite3MemMalloc, + sqlite3MemFree, + sqlite3MemRealloc, + sqlite3MemSize, + sqlite3MemRoundup, + sqlite3MemInit, + sqlite3MemShutdown, + 0 + }; + sqlite3_config(SQLITE_CONFIG_MALLOC, &defaultMethods); +} + +#endif /* SQLITE_ZERO_MALLOC */ |