Index: third_party/sqlite/src/src/test_init.c |
diff --git a/third_party/sqlite/src/src/test_init.c b/third_party/sqlite/src/src/test_init.c |
index a67b6788abf753c552a046294790156d8cefb532..502d95c05237348bb925b2e81d9de73027a94454 100644 |
--- a/third_party/sqlite/src/src/test_init.c |
+++ b/third_party/sqlite/src/src/test_init.c |
@@ -30,9 +30,9 @@ |
#include <tcl.h> |
static struct Wrapped { |
- sqlite3_pcache_methods pcache; |
- sqlite3_mem_methods mem; |
- sqlite3_mutex_methods mutex; |
+ sqlite3_pcache_methods2 pcache; |
+ sqlite3_mem_methods mem; |
+ sqlite3_mutex_methods mutex; |
int mem_init; /* True if mem subsystem is initalized */ |
int mem_fail; /* True to fail mem subsystem inialization */ |
@@ -123,8 +123,8 @@ static void wrPCacheShutdown(void *pArg){ |
wrapped.pcache_init = 0; |
} |
-static sqlite3_pcache *wrPCacheCreate(int a, int b){ |
- return wrapped.pcache.xCreate(a, b); |
+static sqlite3_pcache *wrPCacheCreate(int a, int b, int c){ |
+ return wrapped.pcache.xCreate(a, b, c); |
} |
static void wrPCacheCachesize(sqlite3_pcache *p, int n){ |
wrapped.pcache.xCachesize(p, n); |
@@ -132,13 +132,18 @@ static void wrPCacheCachesize(sqlite3_pcache *p, int n){ |
static int wrPCachePagecount(sqlite3_pcache *p){ |
return wrapped.pcache.xPagecount(p); |
} |
-static void *wrPCacheFetch(sqlite3_pcache *p, unsigned a, int b){ |
+static sqlite3_pcache_page *wrPCacheFetch(sqlite3_pcache *p, unsigned a, int b){ |
return wrapped.pcache.xFetch(p, a, b); |
} |
-static void wrPCacheUnpin(sqlite3_pcache *p, void *a, int b){ |
+static void wrPCacheUnpin(sqlite3_pcache *p, sqlite3_pcache_page *a, int b){ |
wrapped.pcache.xUnpin(p, a, b); |
} |
-static void wrPCacheRekey(sqlite3_pcache *p, void *a, unsigned b, unsigned c){ |
+static void wrPCacheRekey( |
+ sqlite3_pcache *p, |
+ sqlite3_pcache_page *a, |
+ unsigned b, |
+ unsigned c |
+){ |
wrapped.pcache.xRekey(p, a, b, c); |
} |
static void wrPCacheTruncate(sqlite3_pcache *p, unsigned a){ |
@@ -154,8 +159,8 @@ static void installInitWrappers(void){ |
wrMutexFree, wrMutexEnter, wrMutexTry, |
wrMutexLeave, wrMutexHeld, wrMutexNotheld |
}; |
- sqlite3_pcache_methods pcachemethods = { |
- 0, |
+ sqlite3_pcache_methods2 pcachemethods = { |
+ 1, 0, |
wrPCacheInit, wrPCacheShutdown, wrPCacheCreate, |
wrPCacheCachesize, wrPCachePagecount, wrPCacheFetch, |
wrPCacheUnpin, wrPCacheRekey, wrPCacheTruncate, |
@@ -173,10 +178,10 @@ static void installInitWrappers(void){ |
sqlite3_shutdown(); |
sqlite3_config(SQLITE_CONFIG_GETMUTEX, &wrapped.mutex); |
sqlite3_config(SQLITE_CONFIG_GETMALLOC, &wrapped.mem); |
- sqlite3_config(SQLITE_CONFIG_GETPCACHE, &wrapped.pcache); |
+ sqlite3_config(SQLITE_CONFIG_GETPCACHE2, &wrapped.pcache); |
sqlite3_config(SQLITE_CONFIG_MUTEX, &mutexmethods); |
sqlite3_config(SQLITE_CONFIG_MALLOC, &memmethods); |
- sqlite3_config(SQLITE_CONFIG_PCACHE, &pcachemethods); |
+ sqlite3_config(SQLITE_CONFIG_PCACHE2, &pcachemethods); |
} |
static int init_wrapper_install( |
@@ -214,11 +219,10 @@ static int init_wrapper_uninstall( |
return TCL_ERROR; |
} |
- memset(&wrapped, 0, sizeof(&wrapped)); |
sqlite3_shutdown(); |
sqlite3_config(SQLITE_CONFIG_MUTEX, &wrapped.mutex); |
sqlite3_config(SQLITE_CONFIG_MALLOC, &wrapped.mem); |
- sqlite3_config(SQLITE_CONFIG_PCACHE, &wrapped.pcache); |
+ sqlite3_config(SQLITE_CONFIG_PCACHE2, &wrapped.pcache); |
return TCL_OK; |
} |