From 0b8c3126f4ac61a1e8cb4aeee19396f4e2b3862e Mon Sep 17 00:00:00 2001 From: drh <> Date: Thu, 22 Feb 2024 00:50:54 +0000 Subject: [PATCH] Fix debugging code so that it compiles on MSVC. FossilOrigin-Name: ce5df19dc4aff3fde03ef62261a5e095a16a8f4e46e2924becea4fed56ce49e3 --- manifest | 12 ++++++------ manifest.uuid | 2 +- src/malloc.c | 8 ++++---- 3 files changed, 11 insertions(+), 11 deletions(-) diff --git a/manifest b/manifest index 67ee4024d3..50c2f0e0af 100644 --- a/manifest +++ b/manifest @@ -1,5 +1,5 @@ -C Fix\stypo\sin\scomment.\s[https://fossil-scm.org/forum/forumpost/cc20266bf2|Fossil\sforum\spost\scc20266bf2]. -D 2024-02-21T20:21:46.267 +C Fix\sdebugging\scode\sso\sthat\sit\scompiles\son\sMSVC. +D 2024-02-22T00:50:54.956 F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1 F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea F LICENSE.md df5091916dbb40e6e9686186587125e1b2ff51f022cc334e886c19a0e9982724 @@ -703,7 +703,7 @@ F src/json.c a412d7f1550a8597470d30e1d9f8d3dcf111b96ef3877b74bb1c363086bcfb51 F src/legacy.c d7874bc885906868cd51e6c2156698f2754f02d9eee1bae2d687323c3ca8e5aa F src/loadext.c 7432c944ff197046d67a1207790a1b13eec4548c85a9457eb0896bb3641dfb36 F src/main.c 438b95162acfa17b7d218f586f5bde11d6ae82bcf030c9611fc537556870ad6b -F src/malloc.c c31472af77e3421d993b69c93f07890277afd94247da4290e1b290ffc0d1f404 +F src/malloc.c 410e570b30c26cc36e3372577df50f7a96ee3eed5b2b161c6b6b48773c650c5e F src/mem0.c 6a55ebe57c46ca1a7d98da93aaa07f99f1059645 F src/mem1.c 3bb59158c38e05f6270e761a9f435bf19827a264c13d1631c58b84bdc96d73b2 F src/mem2.c c8bfc9446fd0798bddd495eb5d9dbafa7d4b7287d8c22d50a83ac9daa26d8a75 @@ -2162,8 +2162,8 @@ F vsixtest/vsixtest.tcl 6a9a6ab600c25a91a7acc6293828957a386a8a93 F vsixtest/vsixtest.vcxproj.data 2ed517e100c66dc455b492e1a33350c1b20fbcdc F vsixtest/vsixtest.vcxproj.filters 37e51ffedcdb064aad6ff33b6148725226cd608e F vsixtest/vsixtest_TemporaryKey.pfx e5b1b036facdb453873e7084e1cae9102ccc67a0 -P 27a2113d78b35e324e9aedda7403c96c56ad0bed8c6b139fc5a179e8800b9109 -R 1a616a32dc6ef4389da85028142db3e7 +P 7e3c46eed1290964a3e25662686c6ba1149bf8687d05719b684772e65d660c09 +R 365ecee93146612474dc5afdd7dbd0ae U drh -Z 046bb5ba6f502774560061e8a489ed3b +Z a2e66d96e9a847508f80a325e0644c11 # Remove this line to create a well-formed Fossil manifest. diff --git a/manifest.uuid b/manifest.uuid index b20144c9e0..6da1bb3887 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -7e3c46eed1290964a3e25662686c6ba1149bf8687d05719b684772e65d660c09 \ No newline at end of file +ce5df19dc4aff3fde03ef62261a5e095a16a8f4e46e2924becea4fed56ce49e3 \ No newline at end of file diff --git a/src/malloc.c b/src/malloc.c index ef7d2e1edd..9a635e7162 100644 --- a/src/malloc.c +++ b/src/malloc.c @@ -228,9 +228,9 @@ static void sqlite3MallocAlarm(int nByte){ ** code debuggers when working on out-of-memory conditions, for example ** caused by PRAGMA hard_heap_limit=N. */ -static SQLITE_NOINLINE void test_oom_breakpoint(void){ +static SQLITE_NOINLINE void test_oom_breakpoint(u64 n){ static u64 nOomFault = 0; - nOomFault++; + nOomFault += n; /* The assert() is never reached in a human lifetime. It is here mostly ** to prevent code optimizers from optimizing out this function. */ assert( (nOomFault>>32) < 0xffffffff ); @@ -265,7 +265,7 @@ static void mallocWithAlarm(int n, void **pp){ if( mem0.hardLimit ){ nUsed = sqlite3StatusValue(SQLITE_STATUS_MEMORY_USED); if( nUsed >= mem0.hardLimit - nFull ){ - test_oom_breakpoint(); + test_oom_breakpoint(1); *pp = 0; return; } @@ -554,7 +554,7 @@ void *sqlite3Realloc(void *pOld, u64 nBytes){ sqlite3MallocAlarm(nDiff); if( mem0.hardLimit>0 && nUsed >= mem0.hardLimit - nDiff ){ sqlite3_mutex_leave(mem0.mutex); - test_oom_breakpoint(); + test_oom_breakpoint(1); return 0; } }