From: drh <> Date: Mon, 7 Feb 2022 18:52:56 +0000 (+0000) Subject: Disable the sqlite3_error_offset() when the error occurs in a trigger or X-Git-Tag: version-3.38.0~44 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=e1c47431214cc456b133a99919e02f210c6e648f;p=thirdparty%2Fsqlite.git Disable the sqlite3_error_offset() when the error occurs in a trigger or view or some other bit of text that is not part of the original statement. FossilOrigin-Name: 0e909e34fa74e7b9b7954e4ed4c39dd293c1d413b58fda03607faab74aa382ad --- diff --git a/manifest b/manifest index 23ccae7683..5ddfeb2e8c 100644 --- a/manifest +++ b/manifest @@ -1,5 +1,5 @@ -C When\screate\stable/view\sfails\sdue\sto\sname\staken,\ssay\swhich\stook\sit. -D 2022-02-07T01:09:49.988 +C Disable\sthe\ssqlite3_error_offset()\swhen\sthe\serror\soccurs\sin\sa\strigger\sor\nview\sor\ssome\sother\sbit\sof\stext\sthat\sis\snot\spart\sof\sthe\soriginal\sstatement. +D 2022-02-07T18:52:56.839 F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1 F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea F LICENSE.md df5091916dbb40e6e9686186587125e1b2ff51f022cc334e886c19a0e9982724 @@ -618,7 +618,7 @@ F src/test_wsd.c 41cadfd9d97fe8e3e4e44f61a4a8ccd6f7ca8fe9 F src/threads.c 4ae07fa022a3dc7c5beb373cf744a85d3c5c6c3c F src/tokenize.c b74d878aa7c82ec8460779468061a96185e22257f68ab785b69abce354b70446 F src/treeview.c a84b57d15e46007d8b1ae249344b3f0b7f3c62def908b98baaa54935a57c8476 -F src/trigger.c 692972e4393dfc8017a1a527c1ea1b96ce3d101e84584cd832fcfb83d22b50b2 +F src/trigger.c 19fc6fe696a2409b04496df1ff044e6a942dad6ed3b6e897b1c9093b88cc2c62 F src/update.c f875b0d59da5c3055a0b2ac20560e1650229c6787e78de5e9836267b5cbb8359 F src/upsert.c 8789047a8f0a601ea42fa0256d1ba3190c13746b6ba940fe2d25643a7e991937 F src/utf.c ee39565f0843775cc2c81135751ddd93eceb91a673ea2c57f61c76f288b041a0 @@ -628,7 +628,7 @@ F src/vdbe.c 13a4de20ee07bdfb3dc74ab49b7912208e309caf762a8d1678fb111e2223af35 F src/vdbe.h 25dabb25c7e157b84e59260cfb5b466c3ac103ede9f36f4db371332c47601abe F src/vdbeInt.h b45599a2b59f1ce042512ab6786b0b82a8cf3002f6b0fa60b4834e2cd3ac61d8 F src/vdbeapi.c 06bff35393ca5daa3e02e38fb516df320bd52720a2781eb70c2db23ea1c746dd -F src/vdbeaux.c e761b8011baec7a4773f0a7594783f2cd71f699ab187c4aad917529ab8acd3fe +F src/vdbeaux.c 0d7659fe8cb38ce86092b9bc5131c99a834a04eb78745e54acb77d79d7af2fb5 F src/vdbeblob.c 5e61ce31aca17db8fb60395407457a8c1c7fb471dde405e0cd675974611dcfcd F src/vdbemem.c eb6042667c02c3ef1f968235b4a170e31b23a4b6a57f65a8454eab4d36f14b7f F src/vdbesort.c 43756031ca7430f7aec3ef904824a7883c4ede783e51f280d99b9b65c0796e35 @@ -1943,8 +1943,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 031381aea371892a35737e550121846af41241711a36c1a2086af3b0c11bf7b6 -R 606368899dca878552b4f7d1d7489e66 -U larrybr -Z 563df92cd5328919a56efe7627786d87 +P 9a206e37fb49a203a7b5fdc93c41acc39e9ceb37144c78432a235e2f0d54a210 +R 0bec0c5635c3eb23a485bd776e87820e +U drh +Z 0f4df12d4ecf241bfbf3b48f4a3650a9 # Remove this line to create a well-formed Fossil manifest. diff --git a/manifest.uuid b/manifest.uuid index 537184b02b..82f8c808d8 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -9a206e37fb49a203a7b5fdc93c41acc39e9ceb37144c78432a235e2f0d54a210 \ No newline at end of file +0e909e34fa74e7b9b7954e4ed4c39dd293c1d413b58fda03607faab74aa382ad \ No newline at end of file diff --git a/src/trigger.c b/src/trigger.c index 420ef7061c..8f096a05c6 100644 --- a/src/trigger.c +++ b/src/trigger.c @@ -1236,6 +1236,7 @@ static TriggerPrg *getRowTrigger( /* If an existing TriggerPrg could not be located, create a new one. */ if( !pPrg ){ pPrg = codeRowTrigger(pParse, pTrigger, pTab, orconf); + pParse->db->errByteOffset = -1; } return pPrg; diff --git a/src/vdbeaux.c b/src/vdbeaux.c index e586df64d4..0f3d0eb877 100644 --- a/src/vdbeaux.c +++ b/src/vdbeaux.c @@ -3249,6 +3249,7 @@ int sqlite3VdbeTransferError(Vdbe *p){ sqlite3ValueSetNull(db->pErr); } db->errCode = rc; + db->errByteOffset = -1; return rc; }