]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
Add two new static mutexes, SQLITE_MUTEX_STATIC_APP1 and _APP2, for use by
authordrh <drh@noemail.net>
Sat, 3 May 2014 12:00:01 +0000 (12:00 +0000)
committerdrh <drh@noemail.net>
Sat, 3 May 2014 12:00:01 +0000 (12:00 +0000)
the application program.  First intended use is in test programs for the
memory allocation logic where one does not want to allocating a _FAST
or _RECURSIVE mutex since that would involve using the memory allocation
system under test.

FossilOrigin-Name: 13686035dd1cf67ad9c6d282ab13c3259e7273d1

manifest
manifest.uuid
src/mutex_unix.c
src/mutex_w32.c
src/sqlite.h.in

index a8edf3f089b6aecf8b9f7e5c3a19f5ddf9970390..ed70315ed0d615835ad88bbf616327ffb6992048 100644 (file)
--- a/manifest
+++ b/manifest
@@ -1,5 +1,5 @@
-C Add\sthe\sSQLITE_DEFAULT_WORKER_THREADS\scompile-time\soption.\s\nFix\sa\sNULL-pointer\sdereference\sthat\scan\soccur\sfollowing\sOOM.
-D 2014-05-03T11:22:09.616
+C Add\stwo\snew\sstatic\smutexes,\sSQLITE_MUTEX_STATIC_APP1\sand\s_APP2,\sfor\suse\sby\nthe\sapplication\sprogram.\s\sFirst\sintended\suse\sis\sin\stest\sprograms\sfor\sthe\nmemory\sallocation\slogic\swhere\sone\sdoes\snot\swant\sto\sallocating\sa\s_FAST\nor\s_RECURSIVE\smutex\ssince\sthat\swould\sinvolve\susing\sthe\smemory\sallocation\nsystem\sunder\stest.
+D 2014-05-03T12:00:01.738
 F Makefile.arm-wince-mingw32ce-gcc d6df77f1f48d690bd73162294bbba7f59507c72f
 F Makefile.in ad0921c4b2780d01868cf69b419a4f102308d125
 F Makefile.linux-gcc 91d710bdc4998cb015f39edf3cb314ec4f4d7e23
@@ -198,8 +198,8 @@ F src/memjournal.c 0683aac6cab6ec2b5374c0db37c0deb2436a3785
 F src/mutex.c d3b66a569368015e0fcb1ac15f81c119f504d3bc
 F src/mutex.h 5bc526e19dccc412b7ff04642f6fdad3fdfdabea
 F src/mutex_noop.c 7682796b7d8d39bf1c138248858efcd10c9e1553
-F src/mutex_unix.c c3a4e00f96ba068a8dbef34084465979aaf369cc
-F src/mutex_w32.c 6108c88e1cb38d8fbb3534b170793815cbedbf97
+F src/mutex_unix.c 56e22c1bc6aabfa2f9736317a8f56acd5d0c5f7c
+F src/mutex_w32.c f648cebb542b7a7ab98cecaa79259e8519e8f492
 F src/notify.c 976dd0f6171d4588e89e874fcc765e92914b6d30
 F src/os.c 1b147e4cf7cc39e618115c14a086aed44bc91ace
 F src/os.h 4a46270a64e9193af4a0aaa3bc2c66dc07c29b3f
@@ -220,7 +220,7 @@ F src/resolve.c 273d5f47c4e2c05b2d3d2bffeda939551ab59e66
 F src/rowset.c a9c9aae3234b44a6d7c6f5a3cadf90dce1e627be
 F src/select.c a5ed3fdc82ebab5b9b095ea1971515a7f8a303d2
 F src/shell.c 6946aea9f21af551fa84bc6b2a8de55d93bf0004
-F src/sqlite.h.in 579aebacdea59386d9cdf01fd4a16f4cafbb248f
+F src/sqlite.h.in ed6d0cc90da850340c3863c84351e6e164c0ef00
 F src/sqlite3.rc 11094cc6a157a028b301a9f06b3d03089ea37c3e
 F src/sqlite3ext.h 886f5a34de171002ad46fae8c36a7d8051c190fc
 F src/sqliteInt.h 851003126071d4a3bac86a0db75c48197fbd0ff0
@@ -1170,7 +1170,7 @@ F tool/vdbe_profile.tcl 67746953071a9f8f2f668b73fe899074e2c6d8c1
 F tool/warnings-clang.sh f6aa929dc20ef1f856af04a730772f59283631d4
 F tool/warnings.sh d1a6de74685f360ab718efda6265994b99bbea01
 F tool/win/sqlite.vsix 030f3eeaf2cb811a3692ab9c14d021a75ce41fff
-P d7ed529fa2aa5cb13edaabca2acaad06dffef569
-R bf6d771799174fcada0f5c36289734b7
+P e0dea89b3e9f295f80210fcca007681bf1b08692
+R 29c0adc487699967d8fac6f96f2dadac
 U drh
-Z 521faa6705b79213c3ba83b826f10b41
+Z ccb706fc99bd01bffced28b368a2dc97
index 03cf71aa4dd73191639f5abef1c31c7920920e4d..62ecc8633bfbe7ef70d88f37dbac7903de27ab97 100644 (file)
@@ -1 +1 @@
-e0dea89b3e9f295f80210fcca007681bf1b08692
\ No newline at end of file
+13686035dd1cf67ad9c6d282ab13c3259e7273d1
\ No newline at end of file
index eca7295831c2f0ee48ba54d062914d06a1dd8ebe..ea1203c047dc3a50d85d22d6a3e50d53ce3fddd9 100644 (file)
@@ -96,10 +96,12 @@ static int pthreadMutexEnd(void){ return SQLITE_OK; }
 ** <li>  SQLITE_MUTEX_RECURSIVE
 ** <li>  SQLITE_MUTEX_STATIC_MASTER
 ** <li>  SQLITE_MUTEX_STATIC_MEM
-** <li>  SQLITE_MUTEX_STATIC_MEM2
+** <li>  SQLITE_MUTEX_STATIC_OPEN
 ** <li>  SQLITE_MUTEX_STATIC_PRNG
 ** <li>  SQLITE_MUTEX_STATIC_LRU
 ** <li>  SQLITE_MUTEX_STATIC_PMEM
+** <li>  SQLITE_MUTEX_STATIC_APP1
+** <li>  SQLITE_MUTEX_STATIC_APP2
 ** </ul>
 **
 ** The first two constants cause sqlite3_mutex_alloc() to create
@@ -133,6 +135,8 @@ static sqlite3_mutex *pthreadMutexAlloc(int iType){
     SQLITE3_MUTEX_INITIALIZER,
     SQLITE3_MUTEX_INITIALIZER,
     SQLITE3_MUTEX_INITIALIZER,
+    SQLITE3_MUTEX_INITIALIZER,
+    SQLITE3_MUTEX_INITIALIZER,
     SQLITE3_MUTEX_INITIALIZER
   };
   sqlite3_mutex *p;
index 4b88c174524ede16b42ff42e7e3bc4a317d6762b..7c17cc501e39cf819ccf85d34b2e432237928a63 100644 (file)
@@ -99,6 +99,8 @@ static sqlite3_mutex winMutex_staticMutexes[6] = {
   SQLITE3_MUTEX_INITIALIZER,
   SQLITE3_MUTEX_INITIALIZER,
   SQLITE3_MUTEX_INITIALIZER,
+  SQLITE3_MUTEX_INITIALIZER,
+  SQLITE3_MUTEX_INITIALIZER,
   SQLITE3_MUTEX_INITIALIZER
 };
 static int winMutex_isInit = 0;
@@ -159,10 +161,12 @@ static int winMutexEnd(void){
 ** <li>  SQLITE_MUTEX_RECURSIVE
 ** <li>  SQLITE_MUTEX_STATIC_MASTER
 ** <li>  SQLITE_MUTEX_STATIC_MEM
-** <li>  SQLITE_MUTEX_STATIC_MEM2
+** <li>  SQLITE_MUTEX_STATIC_OPEN
 ** <li>  SQLITE_MUTEX_STATIC_PRNG
 ** <li>  SQLITE_MUTEX_STATIC_LRU
 ** <li>  SQLITE_MUTEX_STATIC_PMEM
+** <li>  SQLITE_MUTEX_STATIC_APP1
+** <li>  SQLITE_MUTEX_STATIC_APP2
 ** </ul>
 **
 ** The first two constants cause sqlite3_mutex_alloc() to create
index f09c374a740774c964d455064e053606b61dbcaa..2f39101a31e58c037a541e8fce1bd2b5d715ff4f 100644 (file)
@@ -5828,10 +5828,12 @@ int sqlite3_vfs_unregister(sqlite3_vfs*);
 ** <li>  SQLITE_MUTEX_RECURSIVE
 ** <li>  SQLITE_MUTEX_STATIC_MASTER
 ** <li>  SQLITE_MUTEX_STATIC_MEM
-** <li>  SQLITE_MUTEX_STATIC_MEM2
+** <li>  SQLITE_MUTEX_STATIC_OPEN
 ** <li>  SQLITE_MUTEX_STATIC_PRNG
 ** <li>  SQLITE_MUTEX_STATIC_LRU
-** <li>  SQLITE_MUTEX_STATIC_LRU2
+** <li>  SQLITE_MUTEX_STATIC_PMEM
+** <li>  SQLITE_MUTEX_STATIC_APP1
+** <li>  SQLITE_MUTEX_STATIC_APP2
 ** </ul>)^
 **
 ** ^The first two constants (SQLITE_MUTEX_FAST and SQLITE_MUTEX_RECURSIVE)
@@ -6035,6 +6037,8 @@ int sqlite3_mutex_notheld(sqlite3_mutex*);
 #define SQLITE_MUTEX_STATIC_LRU       6  /* lru page list */
 #define SQLITE_MUTEX_STATIC_LRU2      7  /* NOT USED */
 #define SQLITE_MUTEX_STATIC_PMEM      7  /* sqlite3PageMalloc() */
+#define SQLITE_MUTEX_STATIC_APP1      8  /* For use by application */
+#define SQLITE_MUTEX_STATIC_APP2      9  /* For use by application */
 
 /*
 ** CAPI3REF: Retrieve the mutex for a database connection