From: dan Date: Mon, 2 Jun 2025 18:37:32 +0000 (+0000) Subject: Fix os_win.c so that SQLITE_ENABLE_SETLK_TIMEOUT=2 builds work on windows. X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=69ce758efa51906c9dad175e78893e160acc04f4;p=thirdparty%2Fsqlite.git Fix os_win.c so that SQLITE_ENABLE_SETLK_TIMEOUT=2 builds work on windows. FossilOrigin-Name: 8efb95e0d4670b9c5dbd8cf34512334f47951a8dff8fdadc8645f75076acd91f --- diff --git a/manifest b/manifest index a3a003af32..96ed7e1f99 100644 --- a/manifest +++ b/manifest @@ -1,5 +1,5 @@ -C Updates\sto\snew\stest\scases\sto\srun\swith\sSQLITE_ENABLE_SETLK_TIMEOUT=2\sbuilds. -D 2025-06-02T18:09:46.489 +C Fix\sos_win.c\sso\sthat\sSQLITE_ENABLE_SETLK_TIMEOUT=2\sbuilds\swork\son\swindows. +D 2025-06-02T18:37:32.126 F .fossil-settings/binary-glob 61195414528fb3ea9693577e1980230d78a1f8b0a54c78cf1b9b24d0a409ed6a x F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1 F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea @@ -770,7 +770,7 @@ F src/os_common.h 6c0eb8dd40ef3e12fe585a13e709710267a258e2c8dd1c40b1948a1d14582e F src/os_kv.c 4d39e1f1c180b11162c6dc4aa8ad34053873a639bac6baae23272fc03349986a F src/os_setup.h 6011ad7af5db4e05155f385eb3a9b4470688de6f65d6166b8956e58a3d872107 F src/os_unix.c 04e054ab86d86a7be99ebe5265922687791a40df5afc781d059beb47f4a40acd -F src/os_win.c 6535f8d41674ec9512b1dc516710af5e210db7e51149a500e14bd5b811000601 +F src/os_win.c b8d3cfdf2f40e2f9715b7d8df64f3c0c7ee18743a2dd0c4fc70c1d57fa1aadc7 F src/os_win.h 4c247cdb6d407c75186c94a1e84d5a22cbae4adcec93fcae8d2bc1f956fd1f19 F src/pager.c 23c0f17deb892da6b32fef1f465507df7ab5cd01d774288cb43695658a649259 F src/pager.h 6137149346e6c8a3ddc1eeb40aee46381e9bc8b0fcc6dda8a1efde993c2275b8 @@ -2036,8 +2036,8 @@ F test/walseh1.test bae700eb99519b6d5cd3f893c04759accc5a59c391d4189fe4dd6995a533 F test/walsetlk.test 9079cd8ef82570b8cf0067f31e049a72bec353fb2d5f0cc88f1736dc42ba9704 F test/walsetlk2.test 9097083633cdf55bf1098b694fb8651d0356d38fef28b869481d18029d7ceaf4 F test/walsetlk3.test 1b82bd92dea7e58f498b4399b0b3d26773dd8ac5c74205ce4a23c207cb8e85fe -F test/walsetlk_recover.test e09ae048a9e6c78af6907f16246bc0233f44c259bd14c98117e1728506d9cdc6 -F test/walsetlk_snapshot.test 0edadd7712d4c3a15e056741beb05651f158da363f975aa199b0310acf664ac8 +F test/walsetlk_recover.test adccbffc59e365063a4efd2da6b661ae2fcf15d775b6719fe46acd87face08ff +F test/walsetlk_snapshot.test 86d5588380f9927d8fcbbd75133b0a34fddf959378d6823c6f164a390123f70a F test/walshared.test 42e3808582504878af237ea02c42ca793e8a0efaa19df7df26ac573370dbc7a3 F test/walslow.test 0c51843836c9dcf40a5ac05aa781bfb977b396ee2c872d92bd48b79d5dd9aa23 F test/walthread.test 14b20fcfa6ae152f5d8e12f5dc8a8a724b7ef189f5d8ef1e2ceab79f2af51747 @@ -2209,8 +2209,8 @@ F tool/version-info.c 3b36468a90faf1bbd59c65fd0eb66522d9f941eedd364fabccd7227350 F tool/warnings-clang.sh bbf6a1e685e534c92ec2bfba5b1745f34fb6f0bc2a362850723a9ee87c1b31a7 F tool/warnings.sh 1ad0169b022b280bcaaf94a7fa231591be96b514230ab5c98fbf15cd7df842dd F tool/win/sqlite.vsix deb315d026cc8400325c5863eef847784a219a2f -P 7d27451804e525190f8e67da75aaeb3bf2de677021f7566c6681398e60a88c72 -R 734e170a1ca2f4592eaf31a41ca11e3c +P c6d3e3542fdf6a3428d3a2ec20c699c169ed53341dc782d81f7fe5944f769748 +R 12703d8bfffd8f861886bb5cc39d7c30 U dan -Z e910bbd4a496935af0bc3162a47411df +Z 45c47e26e2dabffe2552459e6f2df0ee # Remove this line to create a well-formed Fossil manifest. diff --git a/manifest.uuid b/manifest.uuid index 0f403444be..2655359b9b 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -c6d3e3542fdf6a3428d3a2ec20c699c169ed53341dc782d81f7fe5944f769748 +8efb95e0d4670b9c5dbd8cf34512334f47951a8dff8fdadc8645f75076acd91f diff --git a/src/os_win.c b/src/os_win.c index c39b49e5e9..c7c923e774 100644 --- a/src/os_win.c +++ b/src/os_win.c @@ -2722,7 +2722,11 @@ static int winHandleLockTimeout( if( res==WAIT_OBJECT_0 ){ ret = TRUE; }else if( res==WAIT_TIMEOUT ){ +#if SQLITE_ENABLE_SETLK_TIMEOUT==1 rc = SQLITE_BUSY_TIMEOUT; +#else + rc = SQLITE_BUSY; +#endif }else{ /* Some other error has occurred */ rc = SQLITE_IOERR_LOCK; diff --git a/test/walsetlk_recover.test b/test/walsetlk_recover.test index 080ea638cd..1daece7470 100644 --- a/test/walsetlk_recover.test +++ b/test/walsetlk_recover.test @@ -77,7 +77,7 @@ set tm [lindex [time { }] 0] do_test 1.2 { set ::msg } {database is locked} -do_test 1.3.($::tm) { expr $::tm>400000 && $::tm<1000000 } 1 +do_test 1.3.($::tm) { expr $::tm>400000 && $::tm<2000000 } 1 vwait myvar diff --git a/test/walsetlk_snapshot.test b/test/walsetlk_snapshot.test index a1e97c5d3d..e05ad69cce 100644 --- a/test/walsetlk_snapshot.test +++ b/test/walsetlk_snapshot.test @@ -83,7 +83,7 @@ set tm [lindex [time { }] 0] do_test 1.2 { set ::msg } {SQLITE_BUSY} -do_test 1.3.($::tm) { expr $::tm<1000000 } 1 +do_test 1.3.($::tm) { expr $::tm<2000000 } 1 do_execsql_test 1.4 { SELECT * FROM t1