From 02b0e267fb17fc89cc962f3a8f81e0212ffbd482 Mon Sep 17 00:00:00 2001 From: mistachkin Date: Thu, 16 Apr 2015 03:37:19 +0000 Subject: [PATCH 1/4] Make sure the sqlite3DebugPrintf() function is defined for OSTRACE as well. FossilOrigin-Name: ae5af70427e0df960a54c48cd27a6288500b1f31 --- manifest | 16 ++++++++-------- manifest.uuid | 2 +- src/os_common.h | 2 +- src/printf.c | 2 +- src/sqliteInt.h | 2 +- 5 files changed, 12 insertions(+), 12 deletions(-) diff --git a/manifest b/manifest index f3d2bc3b41..3bcf3f2885 100644 --- a/manifest +++ b/manifest @@ -1,5 +1,5 @@ -C Merge\supdates\sfrom\strunk.\s\sMake\sOSTRACE\schanges\swork\son\sLinux. -D 2015-04-16T03:24:38.672 +C Make\ssure\sthe\ssqlite3DebugPrintf()\sfunction\sis\sdefined\sfor\sOSTRACE\sas\swell. +D 2015-04-16T03:37:19.418 F Makefile.arm-wince-mingw32ce-gcc d6df77f1f48d690bd73162294bbba7f59507c72f F Makefile.in 5f78b1ab81b64e7c57a75d170832443e66c0880a F Makefile.linux-gcc 91d710bdc4998cb015f39edf3cb314ec4f4d7e23 @@ -212,7 +212,7 @@ F src/mutex_w32.c 61660ada28d8308ad190f444c2170c4f2a590c2f F src/notify.c 9711a7575036f0d3040ba61bc6e217f13a9888e7 F src/os.c 8fd25588eeba74068d41102d26810e216999b6c8 F src/os.h 3e57a24e2794a94d3cf2342c6d9a884888cd96bf -F src/os_common.h 4613f59778954663f1db6b9a68f091be9310d6ae +F src/os_common.h 7cb39fb6ceec8c69a27d001163b41880fa9b23c0 F src/os_setup.h c9d4553b5aaa6f73391448b265b89bed0b890faa F src/os_unix.c cf45d7b1cd27341ba8699e62c4902062b6297039 F src/os_win.c c2f0b0b3541906e310588b9e95080df4df75b674 @@ -226,7 +226,7 @@ F src/pcache1.c 69d137620a305f814398bd29a0c998038c0695e9 F src/pragma.c 3965ae4e82bed39fb97ce04c5fe18c9bc3ee6a88 F src/pragma.h 09c89bca58e9a44de2116cc8272b8d454657129f F src/prepare.c 1fffbdcd6f8a0173a8f70d71f22528f4c0e1e3d3 -F src/printf.c 08fa675c200aac29e561c6153f91f909ed17612f +F src/printf.c 18df0da8c343dc4380f27a803858f2a4b81f1824 F src/random.c ba2679f80ec82c4190062d756f22d0c358180696 F src/resolve.c 66cfe49a9c3b449ef13b89a8c47036a4ed167eab F src/rowset.c eccf6af6d620aaa4579bd3b72c1b6395d9e9fa1e @@ -235,7 +235,7 @@ F src/shell.c 72b61a9d41ba12b67ea06fe9267abcc012c6c5bb F src/sqlite.h.in ca27603a36fcacdaac5a19d8ee35aaff8ce8516f F src/sqlite3.rc 992c9f5fb8285ae285d6be28240a7e8d3a7f2bad F src/sqlite3ext.h 17d487c3c91b0b8c584a32fbeb393f6f795eea7d -F src/sqliteInt.h 2c4f9e8a3ebebdcecc4a214638eb190eb56932a4 +F src/sqliteInt.h 2aa91b5b500aaf877c59e00a6e1c81c0b4d4babe F src/sqliteLimit.h 216557999cb45f2e3578ed53ebefe228d779cb46 F src/status.c f266ad8a2892d659b74f0f50cb6a88b6e7c12179 F src/table.c e7a09215315a978057fb42c640f890160dbcc45e @@ -1250,7 +1250,7 @@ F tool/vdbe_profile.tcl 67746953071a9f8f2f668b73fe899074e2c6d8c1 F tool/warnings-clang.sh f6aa929dc20ef1f856af04a730772f59283631d4 F tool/warnings.sh 0abfd78ceb09b7f7c27c688c8e3fe93268a13b32 F tool/win/sqlite.vsix deb315d026cc8400325c5863eef847784a219a2f -P f664bfdc82597a4530d4f4938bb96557b43b171b d3c00d61581c8ba6dce5618391432d3af8d324d4 -R fc38550e22f348cd0d3d2f2ddf7d63af +P cd1542664eb3eb46d486664ded49cd9c4bef3948 +R bcc89826e9f25bef6a366a7f195dedc4 U mistachkin -Z ee67c55d1a8d246e247c4904241d9e6b +Z fe350e14fe404098bece6b10d955edca diff --git a/manifest.uuid b/manifest.uuid index 979b90634e..8c79a12f65 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -cd1542664eb3eb46d486664ded49cd9c4bef3948 \ No newline at end of file +ae5af70427e0df960a54c48cd27a6288500b1f31 \ No newline at end of file diff --git a/src/os_common.h b/src/os_common.h index 837f947143..24b00f6683 100644 --- a/src/os_common.h +++ b/src/os_common.h @@ -38,8 +38,8 @@ # define OSTRACE(X) if( sqlite3OSTrace ) sqlite3DebugPrintf X # define SQLITE_HAVE_OS_TRACE #else -# undef SQLITE_HAVE_OS_TRACE # define OSTRACE(X) +# undef SQLITE_HAVE_OS_TRACE #endif /* diff --git a/src/printf.c b/src/printf.c index 1a978dc5ca..d4063174ac 100644 --- a/src/printf.c +++ b/src/printf.c @@ -1059,7 +1059,7 @@ void sqlite3_log(int iErrCode, const char *zFormat, ...){ } } -#if defined(SQLITE_DEBUG) +#if defined(SQLITE_DEBUG) || defined(SQLITE_HAVE_OS_TRACE) /* ** A version of printf() that understands %lld. Used for debugging. ** The printf() built into some versions of windows does not understand %lld diff --git a/src/sqliteInt.h b/src/sqliteInt.h index e22da91e5b..769b2afe8c 100644 --- a/src/sqliteInt.h +++ b/src/sqliteInt.h @@ -3146,7 +3146,7 @@ void sqlite3XPrintf(StrAccum*, u32, const char*, ...); char *sqlite3MPrintf(sqlite3*,const char*, ...); char *sqlite3VMPrintf(sqlite3*,const char*, va_list); char *sqlite3MAppendf(sqlite3*,char*,const char*,...); -#if defined(SQLITE_TEST) || defined(SQLITE_DEBUG) +#if defined(SQLITE_DEBUG) || defined(SQLITE_HAVE_OS_TRACE) void sqlite3DebugPrintf(const char*, ...); #endif #if defined(SQLITE_TEST) From 0cbcffa75d4c4a6036720c6a5bf7d5da5fe3841a Mon Sep 17 00:00:00 2001 From: mistachkin Date: Thu, 16 Apr 2015 03:56:32 +0000 Subject: [PATCH 2/4] Move OSTRACE defines so they are visible to all source files that need them. FossilOrigin-Name: 72485c97c6de47b8bba63b2a307e7bdeea114040 --- manifest | 16 ++++++++-------- manifest.uuid | 2 +- src/main.c | 2 +- src/os_common.h | 13 ------------- src/sqliteInt.h | 15 ++++++++++++++- 5 files changed, 24 insertions(+), 24 deletions(-) diff --git a/manifest b/manifest index 3bcf3f2885..0109903b5e 100644 --- a/manifest +++ b/manifest @@ -1,5 +1,5 @@ -C Make\ssure\sthe\ssqlite3DebugPrintf()\sfunction\sis\sdefined\sfor\sOSTRACE\sas\swell. -D 2015-04-16T03:37:19.418 +C Move\sOSTRACE\sdefines\sso\sthey\sare\svisible\sto\sall\ssource\sfiles\sthat\sneed\sthem. +D 2015-04-16T03:56:32.316 F Makefile.arm-wince-mingw32ce-gcc d6df77f1f48d690bd73162294bbba7f59507c72f F Makefile.in 5f78b1ab81b64e7c57a75d170832443e66c0880a F Makefile.linux-gcc 91d710bdc4998cb015f39edf3cb314ec4f4d7e23 @@ -195,7 +195,7 @@ F src/journal.c b4124532212b6952f42eb2c12fa3c25701d8ba8d F src/legacy.c ba1863ea58c4c840335a84ec276fc2b25e22bc4e F src/lempar.c 7274c97d24bb46631e504332ccd3bd1b37841770 F src/loadext.c 86bd4e2fccd520b748cba52492ab60c4a770f660 -F src/main.c df3cbe6ebe9df0bea291e649cea3dfcaa6a18cb7 +F src/main.c 9f4b0e0924cd1be1c7766290bf3f9c98b97f32b7 F src/malloc.c 6a370b83d54e4bbf6f94021221c2a311cff26a18 F src/mem0.c 6a55ebe57c46ca1a7d98da93aaa07f99f1059645 F src/mem1.c abe6ee469b6c5a35c7f22bfeb9c9bac664a1c987 @@ -212,7 +212,7 @@ F src/mutex_w32.c 61660ada28d8308ad190f444c2170c4f2a590c2f F src/notify.c 9711a7575036f0d3040ba61bc6e217f13a9888e7 F src/os.c 8fd25588eeba74068d41102d26810e216999b6c8 F src/os.h 3e57a24e2794a94d3cf2342c6d9a884888cd96bf -F src/os_common.h 7cb39fb6ceec8c69a27d001163b41880fa9b23c0 +F src/os_common.h abdb9a191a367793268fe553d25bab894e986a0e F src/os_setup.h c9d4553b5aaa6f73391448b265b89bed0b890faa F src/os_unix.c cf45d7b1cd27341ba8699e62c4902062b6297039 F src/os_win.c c2f0b0b3541906e310588b9e95080df4df75b674 @@ -235,7 +235,7 @@ F src/shell.c 72b61a9d41ba12b67ea06fe9267abcc012c6c5bb F src/sqlite.h.in ca27603a36fcacdaac5a19d8ee35aaff8ce8516f F src/sqlite3.rc 992c9f5fb8285ae285d6be28240a7e8d3a7f2bad F src/sqlite3ext.h 17d487c3c91b0b8c584a32fbeb393f6f795eea7d -F src/sqliteInt.h 2aa91b5b500aaf877c59e00a6e1c81c0b4d4babe +F src/sqliteInt.h 0c5881204cfbba739fa5c859a6acb3219a70f42e F src/sqliteLimit.h 216557999cb45f2e3578ed53ebefe228d779cb46 F src/status.c f266ad8a2892d659b74f0f50cb6a88b6e7c12179 F src/table.c e7a09215315a978057fb42c640f890160dbcc45e @@ -1250,7 +1250,7 @@ F tool/vdbe_profile.tcl 67746953071a9f8f2f668b73fe899074e2c6d8c1 F tool/warnings-clang.sh f6aa929dc20ef1f856af04a730772f59283631d4 F tool/warnings.sh 0abfd78ceb09b7f7c27c688c8e3fe93268a13b32 F tool/win/sqlite.vsix deb315d026cc8400325c5863eef847784a219a2f -P cd1542664eb3eb46d486664ded49cd9c4bef3948 -R bcc89826e9f25bef6a366a7f195dedc4 +P ae5af70427e0df960a54c48cd27a6288500b1f31 +R 947eabea0fc8e6e24a4dbedb3eb276a4 U mistachkin -Z fe350e14fe404098bece6b10d955edca +Z 9274684aadef583df5fc51a559e8c418 diff --git a/manifest.uuid b/manifest.uuid index 8c79a12f65..fb0a24b48a 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -ae5af70427e0df960a54c48cd27a6288500b1f31 \ No newline at end of file +72485c97c6de47b8bba63b2a307e7bdeea114040 \ No newline at end of file diff --git a/src/main.c b/src/main.c index 043f3e14d0..27a0fe58d8 100644 --- a/src/main.c +++ b/src/main.c @@ -1206,7 +1206,7 @@ void sqlite3RollbackAll(sqlite3 *db, int tripCode){ ** Return a static string containing the name corresponding to the error code ** specified in the argument. */ -#ifdef SQLITE_HAVE_OS_TRACE +#if defined(SQLITE_DEBUG) || defined(SQLITE_HAVE_OS_TRACE) const char *sqlite3ErrName(int rc){ const char *zName = 0; int i, origRc = rc; diff --git a/src/os_common.h b/src/os_common.h index 24b00f6683..d18b95a5ff 100644 --- a/src/os_common.h +++ b/src/os_common.h @@ -29,19 +29,6 @@ # error "The MEMORY_DEBUG macro is obsolete. Use SQLITE_DEBUG instead." #endif -/* -** Declarations used for tracing the operating system interfaces. -*/ -#if (defined(SQLITE_DEBUG) && SQLITE_OS_WIN) || \ - defined(SQLITE_TEST) || defined(SQLITE_FORCE_OS_TRACE) - extern int sqlite3OSTrace; -# define OSTRACE(X) if( sqlite3OSTrace ) sqlite3DebugPrintf X -# define SQLITE_HAVE_OS_TRACE -#else -# define OSTRACE(X) -# undef SQLITE_HAVE_OS_TRACE -#endif - /* ** Macros for performance tracing. Normally turned off. Only works ** on i486 hardware. diff --git a/src/sqliteInt.h b/src/sqliteInt.h index 769b2afe8c..3bea7335da 100644 --- a/src/sqliteInt.h +++ b/src/sqliteInt.h @@ -362,6 +362,19 @@ # define NEVER(X) (X) #endif +/* +** Declarations used for tracing the operating system interfaces. +*/ +#if (defined(SQLITE_DEBUG) && SQLITE_OS_WIN) || \ + defined(SQLITE_TEST) || defined(SQLITE_FORCE_OS_TRACE) + extern int sqlite3OSTrace; +# define OSTRACE(X) if( sqlite3OSTrace ) sqlite3DebugPrintf X +# define SQLITE_HAVE_OS_TRACE +#else +# define OSTRACE(X) +# undef SQLITE_HAVE_OS_TRACE +#endif + /* ** Return true (non-zero) if the input is an integer that is too large ** to fit in 32-bits. This macro is used inside of various testcase() @@ -3493,7 +3506,7 @@ void *sqlite3HexToBlob(sqlite3*, const char *z, int n); u8 sqlite3HexToInt(int h); int sqlite3TwoPartName(Parse *, Token *, Token *, Token **); -#ifdef SQLITE_HAVE_OS_TRACE +#if defined(SQLITE_DEBUG) || defined(SQLITE_HAVE_OS_TRACE) const char *sqlite3ErrName(int); #endif From b10f22a14128e82ce8ec9b618567847330b9d8de Mon Sep 17 00:00:00 2001 From: mistachkin Date: Thu, 16 Apr 2015 16:27:29 +0000 Subject: [PATCH 3/4] Restore SQLITE_FORCE_OS_TRACE to the MSVC makefile, which was removed during a merge. FossilOrigin-Name: c37f4d492f98ac5c07c08705a3826a3e86107306 --- Makefile.msc | 13 ++++++++++--- manifest | 14 +++++++------- manifest.uuid | 2 +- src/sqliteInt.h | 4 ++-- 4 files changed, 20 insertions(+), 13 deletions(-) diff --git a/Makefile.msc b/Makefile.msc index f13418ffb7..1c3adc59a1 100644 --- a/Makefile.msc +++ b/Makefile.msc @@ -140,6 +140,13 @@ MEMDEBUG = 0 WIN32HEAP = 0 !ENDIF +# Set this to non-0 to enable OSTRACE() macros, which can be useful when +# debugging. +# +!IFNDEF OSTRACE +OSTRACE = 0 +!ENDIF + # Set this to one of the following values to enable various debugging # features. Each level includes the debugging options from the previous # levels. Currently, the recognized values for DEBUG are: @@ -481,9 +488,9 @@ TCC = $(TCC) -DSQLITE_DEBUG RCC = $(RCC) -DSQLITE_DEBUG !ENDIF -!IF $(DEBUG)>4 -TCC = $(TCC) -DSQLITE_DEBUG_OS_TRACE=1 -RCC = $(RCC) -DSQLITE_DEBUG_OS_TRACE=1 +!IF $(DEBUG)>4 || $(OSTRACE)!=0 +TCC = $(TCC) -DSQLITE_FORCE_OS_TRACE=1 -DSQLITE_DEBUG_OS_TRACE=1 +RCC = $(RCC) -DSQLITE_FORCE_OS_TRACE=1 -DSQLITE_DEBUG_OS_TRACE=1 !ENDIF !IF $(DEBUG)>5 diff --git a/manifest b/manifest index 0109903b5e..d72c37561f 100644 --- a/manifest +++ b/manifest @@ -1,9 +1,9 @@ -C Move\sOSTRACE\sdefines\sso\sthey\sare\svisible\sto\sall\ssource\sfiles\sthat\sneed\sthem. -D 2015-04-16T03:56:32.316 +C Restore\sSQLITE_FORCE_OS_TRACE\sto\sthe\sMSVC\smakefile,\swhich\swas\sremoved\sduring\sa\smerge. +D 2015-04-16T16:27:29.786 F Makefile.arm-wince-mingw32ce-gcc d6df77f1f48d690bd73162294bbba7f59507c72f F Makefile.in 5f78b1ab81b64e7c57a75d170832443e66c0880a F Makefile.linux-gcc 91d710bdc4998cb015f39edf3cb314ec4f4d7e23 -F Makefile.msc 11cb5361e34b80e9c5b417ed6a6deee099c5b5f3 +F Makefile.msc 29e11e91c4abf13c522b983552fac18422519321 F Makefile.vxworks e1b65dea203f054e71653415bd8f96dcaed47858 F README.md d58e3bebc0a4145e0f2a87994015fdb575a8e866 F VERSION 2e244662b71e6e68a5c29b014ebc5b7564f4cc5a @@ -235,7 +235,7 @@ F src/shell.c 72b61a9d41ba12b67ea06fe9267abcc012c6c5bb F src/sqlite.h.in ca27603a36fcacdaac5a19d8ee35aaff8ce8516f F src/sqlite3.rc 992c9f5fb8285ae285d6be28240a7e8d3a7f2bad F src/sqlite3ext.h 17d487c3c91b0b8c584a32fbeb393f6f795eea7d -F src/sqliteInt.h 0c5881204cfbba739fa5c859a6acb3219a70f42e +F src/sqliteInt.h 1b6087a8e82c3e5bf3acfbf0fe144519df7cecc8 F src/sqliteLimit.h 216557999cb45f2e3578ed53ebefe228d779cb46 F src/status.c f266ad8a2892d659b74f0f50cb6a88b6e7c12179 F src/table.c e7a09215315a978057fb42c640f890160dbcc45e @@ -1250,7 +1250,7 @@ F tool/vdbe_profile.tcl 67746953071a9f8f2f668b73fe899074e2c6d8c1 F tool/warnings-clang.sh f6aa929dc20ef1f856af04a730772f59283631d4 F tool/warnings.sh 0abfd78ceb09b7f7c27c688c8e3fe93268a13b32 F tool/win/sqlite.vsix deb315d026cc8400325c5863eef847784a219a2f -P ae5af70427e0df960a54c48cd27a6288500b1f31 -R 947eabea0fc8e6e24a4dbedb3eb276a4 +P 72485c97c6de47b8bba63b2a307e7bdeea114040 +R 59a3cad2ebc56d9746b8d39612e405b8 U mistachkin -Z 9274684aadef583df5fc51a559e8c418 +Z ed5465cd174207b2ad19d34d3cae09df diff --git a/manifest.uuid b/manifest.uuid index fb0a24b48a..9949a6e131 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -72485c97c6de47b8bba63b2a307e7bdeea114040 \ No newline at end of file +c37f4d492f98ac5c07c08705a3826a3e86107306 \ No newline at end of file diff --git a/src/sqliteInt.h b/src/sqliteInt.h index 3bea7335da..56fd2e14fa 100644 --- a/src/sqliteInt.h +++ b/src/sqliteInt.h @@ -365,8 +365,8 @@ /* ** Declarations used for tracing the operating system interfaces. */ -#if (defined(SQLITE_DEBUG) && SQLITE_OS_WIN) || \ - defined(SQLITE_TEST) || defined(SQLITE_FORCE_OS_TRACE) +#if defined(SQLITE_FORCE_OS_TRACE) || defined(SQLITE_TEST) || \ + (defined(SQLITE_DEBUG) && SQLITE_OS_WIN) extern int sqlite3OSTrace; # define OSTRACE(X) if( sqlite3OSTrace ) sqlite3DebugPrintf X # define SQLITE_HAVE_OS_TRACE From 5824d44babc81893534bcc1ded9d512da566f498 Mon Sep 17 00:00:00 2001 From: mistachkin Date: Tue, 28 Apr 2015 23:34:10 +0000 Subject: [PATCH 4/4] Revise when the sqlite3ErrName() function is defined. FossilOrigin-Name: 9e593fb3dbc58e86f499ba4399530e3e760eb84d --- manifest | 14 +++++++------- manifest.uuid | 2 +- src/main.c | 2 +- src/sqliteInt.h | 15 ++++++++++++++- 4 files changed, 23 insertions(+), 10 deletions(-) diff --git a/manifest b/manifest index d72c37561f..8adcf63f4d 100644 --- a/manifest +++ b/manifest @@ -1,5 +1,5 @@ -C Restore\sSQLITE_FORCE_OS_TRACE\sto\sthe\sMSVC\smakefile,\swhich\swas\sremoved\sduring\sa\smerge. -D 2015-04-16T16:27:29.786 +C Revise\swhen\sthe\ssqlite3ErrName()\sfunction\sis\sdefined. +D 2015-04-28T23:34:10.625 F Makefile.arm-wince-mingw32ce-gcc d6df77f1f48d690bd73162294bbba7f59507c72f F Makefile.in 5f78b1ab81b64e7c57a75d170832443e66c0880a F Makefile.linux-gcc 91d710bdc4998cb015f39edf3cb314ec4f4d7e23 @@ -195,7 +195,7 @@ F src/journal.c b4124532212b6952f42eb2c12fa3c25701d8ba8d F src/legacy.c ba1863ea58c4c840335a84ec276fc2b25e22bc4e F src/lempar.c 7274c97d24bb46631e504332ccd3bd1b37841770 F src/loadext.c 86bd4e2fccd520b748cba52492ab60c4a770f660 -F src/main.c 9f4b0e0924cd1be1c7766290bf3f9c98b97f32b7 +F src/main.c 6dc030204d80be177578210a90c912e1d9597126 F src/malloc.c 6a370b83d54e4bbf6f94021221c2a311cff26a18 F src/mem0.c 6a55ebe57c46ca1a7d98da93aaa07f99f1059645 F src/mem1.c abe6ee469b6c5a35c7f22bfeb9c9bac664a1c987 @@ -235,7 +235,7 @@ F src/shell.c 72b61a9d41ba12b67ea06fe9267abcc012c6c5bb F src/sqlite.h.in ca27603a36fcacdaac5a19d8ee35aaff8ce8516f F src/sqlite3.rc 992c9f5fb8285ae285d6be28240a7e8d3a7f2bad F src/sqlite3ext.h 17d487c3c91b0b8c584a32fbeb393f6f795eea7d -F src/sqliteInt.h 1b6087a8e82c3e5bf3acfbf0fe144519df7cecc8 +F src/sqliteInt.h 5a4e0ae0ce02acb1cadb783abd70af800f538cba F src/sqliteLimit.h 216557999cb45f2e3578ed53ebefe228d779cb46 F src/status.c f266ad8a2892d659b74f0f50cb6a88b6e7c12179 F src/table.c e7a09215315a978057fb42c640f890160dbcc45e @@ -1250,7 +1250,7 @@ F tool/vdbe_profile.tcl 67746953071a9f8f2f668b73fe899074e2c6d8c1 F tool/warnings-clang.sh f6aa929dc20ef1f856af04a730772f59283631d4 F tool/warnings.sh 0abfd78ceb09b7f7c27c688c8e3fe93268a13b32 F tool/win/sqlite.vsix deb315d026cc8400325c5863eef847784a219a2f -P 72485c97c6de47b8bba63b2a307e7bdeea114040 -R 59a3cad2ebc56d9746b8d39612e405b8 +P c37f4d492f98ac5c07c08705a3826a3e86107306 +R f96d406cf134e6be926fdb343dc33ea3 U mistachkin -Z ed5465cd174207b2ad19d34d3cae09df +Z 0af972753cfc85d551aad5ddaa27fa03 diff --git a/manifest.uuid b/manifest.uuid index 9949a6e131..fc8716e2ea 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -c37f4d492f98ac5c07c08705a3826a3e86107306 \ No newline at end of file +9e593fb3dbc58e86f499ba4399530e3e760eb84d \ No newline at end of file diff --git a/src/main.c b/src/main.c index 27a0fe58d8..ff5a1061b3 100644 --- a/src/main.c +++ b/src/main.c @@ -1206,7 +1206,7 @@ void sqlite3RollbackAll(sqlite3 *db, int tripCode){ ** Return a static string containing the name corresponding to the error code ** specified in the argument. */ -#if defined(SQLITE_DEBUG) || defined(SQLITE_HAVE_OS_TRACE) +#if defined(SQLITE_NEED_ERR_NAME) const char *sqlite3ErrName(int rc){ const char *zName = 0; int i, origRc = rc; diff --git a/src/sqliteInt.h b/src/sqliteInt.h index 56fd2e14fa..5a393b27d1 100644 --- a/src/sqliteInt.h +++ b/src/sqliteInt.h @@ -375,6 +375,19 @@ # undef SQLITE_HAVE_OS_TRACE #endif +/* +** Is the sqlite3ErrName() function needed in the build? Currently, +** it is needed by "mutex_w32.c" (when debugging), "os_win.c" (when +** OSTRACE is enabled), and by several "test*.c" files (which are +** compiled using SQLITE_TEST). +*/ +#if defined(SQLITE_HAVE_OS_TRACE) || defined(SQLITE_TEST) || \ + (defined(SQLITE_DEBUG) && SQLITE_OS_WIN) +# define SQLITE_NEED_ERR_NAME +#else +# undef SQLITE_NEED_ERR_NAME +#endif + /* ** Return true (non-zero) if the input is an integer that is too large ** to fit in 32-bits. This macro is used inside of various testcase() @@ -3506,7 +3519,7 @@ void *sqlite3HexToBlob(sqlite3*, const char *z, int n); u8 sqlite3HexToInt(int h); int sqlite3TwoPartName(Parse *, Token *, Token *, Token **); -#if defined(SQLITE_DEBUG) || defined(SQLITE_HAVE_OS_TRACE) +#if defined(SQLITE_NEED_ERR_NAME) const char *sqlite3ErrName(int); #endif