]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
Adjustments of assert() statement in STAT4 in order to give 100% MC/DC.
authordrh <>
Wed, 1 Feb 2023 23:24:34 +0000 (23:24 +0000)
committerdrh <>
Wed, 1 Feb 2023 23:24:34 +0000 (23:24 +0000)
FossilOrigin-Name: 55a26c67ed4a3a937e009f60da2cd951d6f090b0bea748037db5c1680e5ff3b4

manifest
manifest.uuid
src/vdbemem.c

index 0f594a0adcfce521ca84ac222c921cc410836a97..487dc17c6c8baa7f8bc0e08007736c6c465b3e09 100644 (file)
--- a/manifest
+++ b/manifest
@@ -1,5 +1,5 @@
-C New\sassert()\sstatements\sto\sverify\sthat\ssqlite3DeleteIndexSamples()\sis\salways\ncalled\swith\snon-NULL\sparameters.
-D 2023-02-01T20:45:12.233
+C Adjustments\sof\sassert()\sstatement\sin\sSTAT4\sin\sorder\sto\sgive\s100%\sMC/DC.
+D 2023-02-01T23:24:34.683
 F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1
 F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea
 F LICENSE.md df5091916dbb40e6e9686186587125e1b2ff51f022cc334e886c19a0e9982724
@@ -698,7 +698,7 @@ F src/vdbeInt.h a4147a4ddf613cb1bcb555ace9e9e74a9c099d65facd88155f191b1fb4d74cfb
 F src/vdbeapi.c 40c47b1528d308a322203de21d2e0d711753257ed9771771b6129214b1d65932
 F src/vdbeaux.c 3f9e3b6585e7434aa11300169dd66ddf0fc963a0c6f7940bdc058335dadeb353
 F src/vdbeblob.c 5e61ce31aca17db8fb60395407457a8c1c7fb471dde405e0cd675974611dcfcd
-F src/vdbemem.c 316d518115f3720b4097f0231e2a3d6eefd06c787eccf44972f8d8f462153421
+F src/vdbemem.c 87d3811aabb68eb9210c14c9a8b5e8ec3acb7ba787beb80a4323af54fb6013f7
 F src/vdbesort.c 43756031ca7430f7aec3ef904824a7883c4ede783e51f280d99b9b65c0796e35
 F src/vdbetrace.c fe0bc29ebd4e02c8bc5c1945f1d2e6be5927ec12c06d89b03ef2a4def34bf823
 F src/vdbevtab.c aae4bd769410eb7e1d02c42613eec961d514459b1c3c1c63cfc84e92a137daac
@@ -2046,8 +2046,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 66f29c403d28630bfaea9124bd63ee4a047b1fe4a7e27dc5d10d67d1601b15e0
-R 528d21e7221f87a57110bf960c25518d
+P 92c71fdd7167a7db055ef0aec522bbba8c7b4b37658efda10dac44699921b57f
+R 3bed385ef72ee5c0645ae5caa491aa6f
 U drh
-Z ab69140996cae547f604b863d81ded55
+Z 5dbaa2f1ac06834b251752125ac989a8
 # Remove this line to create a well-formed Fossil manifest.
index 72d83e6db9a5964e88bcd48d685096705917d4c0..922d42aaa53667f22e7d7974355f4c7967c3eae7 100644 (file)
@@ -1 +1 @@
-92c71fdd7167a7db055ef0aec522bbba8c7b4b37658efda10dac44699921b57f
\ No newline at end of file
+55a26c67ed4a3a937e009f60da2cd951d6f090b0bea748037db5c1680e5ff3b4
\ No newline at end of file
index d9909deccac0d3da4ee2349f93b4a1ad4ee242ef..d415f9f72ca87b190ed8d557ec18fdbe7359d3e6 100644 (file)
@@ -1508,8 +1508,6 @@ static int valueFromFunction(
     goto value_from_function_out;
   }
 
-  testcase( pCtx->pParse->rc==SQLITE_ERROR );
-  testcase( pCtx->pParse->rc==SQLITE_OK );
   memset(&ctx, 0, sizeof(ctx));
   ctx.pOut = pVal;
   ctx.pFunc = pFunc;
@@ -1521,11 +1519,14 @@ static int valueFromFunction(
   }else{
     sqlite3ValueApplyAffinity(pVal, aff, SQLITE_UTF8);
     assert( rc==SQLITE_OK );
+    assert( enc==pVal->enc || db->mallocFailed );
+#if 0  /* Not reachable except after a prior failure */
     rc = sqlite3VdbeChangeEncoding(pVal, enc);
     if( rc==SQLITE_OK && sqlite3VdbeMemTooBig(pVal) ){
       rc = SQLITE_TOOBIG;
       pCtx->pParse->nErr++;
     }
+#endif
   }
   pCtx->pParse->rc = rc;