Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
Comment: | Merge back a sequence of three changes that were branched due to a build break. |
---|---|
Downloads: | Tarball | ZIP archive | SQL archive |
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA3-256: |
67809715977a5bad0ec7830e27746aba |
User & Date: | drh 2025-02-27 15:55:01 |
Context
2025-02-27
| ||
16:07 | Strive to make sorts stable in the mkpragmatab.tcl build script, so that we get consistent amalgamations regardless of platform. Forum thread c9914addebf3da51. (check-in: 3f575847 user: drh tags: trunk) | |
15:55 | Merge back a sequence of three changes that were branched due to a build break. (check-in: 67809715 user: drh tags: trunk) | |
15:52 | Fix build break in [e2bd23f251359e7a]. (Closed-Leaf check-in: 6ed84211 user: drh tags: build-break) | |
2025-02-26
| ||
18:31 | Teach testrunner.tcl to identify an msys environment. (check-in: e9f777ce user: stephan tags: trunk) | |
Changes
Changes to src/func.c.
︙ | ︙ | |||
1915 1916 1917 1918 1919 1920 1921 | /* ** Routines used to compute the sum, average, and total. ** ** The SUM() function follows the (broken) SQL standard which means ** that it returns NULL if it sums over no inputs. TOTAL returns ** 0.0 in that case. In addition, TOTAL always returns a float where ** SUM might return an integer if it never encounters a floating point | | | 1915 1916 1917 1918 1919 1920 1921 1922 1923 1924 1925 1926 1927 1928 1929 | /* ** Routines used to compute the sum, average, and total. ** ** The SUM() function follows the (broken) SQL standard which means ** that it returns NULL if it sums over no inputs. TOTAL returns ** 0.0 in that case. In addition, TOTAL always returns a float where ** SUM might return an integer if it never encounters a floating point ** value. TOTAL never fails, but SUM might throw an exception if ** it overflows an integer. */ static void sumStep(sqlite3_context *context, int argc, sqlite3_value **argv){ SumCtx *p; int type; assert( argc==1 ); UNUSED_PARAMETER(argc); |
︙ | ︙ |
Changes to src/main.c.
︙ | ︙ | |||
299 300 301 302 303 304 305 306 307 308 309 310 311 312 | if( rc==SQLITE_OK ){ rc = sqlite3MemdbInit(); } #endif if( rc==SQLITE_OK ){ sqlite3PCacheBufferSetup( sqlite3GlobalConfig.pPage, sqlite3GlobalConfig.szPage, sqlite3GlobalConfig.nPage); sqlite3MemoryBarrier(); sqlite3GlobalConfig.isInit = 1; #ifdef SQLITE_EXTRA_INIT bRunExtraInit = 1; #endif } sqlite3GlobalConfig.inProgress = 0; | > > > > > > > > | 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 | if( rc==SQLITE_OK ){ rc = sqlite3MemdbInit(); } #endif if( rc==SQLITE_OK ){ sqlite3PCacheBufferSetup( sqlite3GlobalConfig.pPage, sqlite3GlobalConfig.szPage, sqlite3GlobalConfig.nPage); #ifdef SQLITE_EXTRA_INIT_MUTEXED { int SQLITE_EXTRA_INIT_MUTEXED(const char*); rc = SQLITE_EXTRA_INIT_MUTEXED(0); } #endif } if( rc==SQLITE_OK ){ sqlite3MemoryBarrier(); sqlite3GlobalConfig.isInit = 1; #ifdef SQLITE_EXTRA_INIT bRunExtraInit = 1; #endif } sqlite3GlobalConfig.inProgress = 0; |
︙ | ︙ |
Changes to src/util.c.
︙ | ︙ | |||
1635 1636 1637 1638 1639 1640 1641 | } *pA = iA*iB; return 0; #endif } /* | | | 1635 1636 1637 1638 1639 1640 1641 1642 1643 1644 1645 1646 1647 1648 1649 | } *pA = iA*iB; return 0; #endif } /* ** Compute the absolute value of a 32-bit signed integer, if possible. Or ** if the integer has a value of -2147483648, return +2147483647 */ int sqlite3AbsInt32(int x){ if( x>=0 ) return x; if( x==(int)0x80000000 ) return 0x7fffffff; return -x; } |
︙ | ︙ |
Changes to test/testrunner.tcl.
︙ | ︙ | |||
26 27 28 29 30 31 32 | } } if {$rc} { if { [string match -nocase testfixture* $interpreter]==0 && [file executable ./testfixture] } { puts "Failed to find tcl package sqlite3. Restarting with ./testfixture.." | | | | 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 | } } if {$rc} { if { [string match -nocase testfixture* $interpreter]==0 && [file executable ./testfixture] } { puts "Failed to find tcl package sqlite3. Restarting with ./testfixture.." set status [catch { exec [trd_get_bin_name testfixture] [info script] {*}$::argv >@ stdout } msg] exit $status } } if {$rc} { puts "Cannot find tcl package sqlite3: Trying to build it now..." if {$::tcl_platform(platform)=="windows"} { |
︙ | ︙ | |||
233 234 235 236 237 238 239 | set TRG(make) make.sh set TRG(makecmd) "bash make.sh" set TRG(testfixture) testfixture set TRG(shell) sqlite3 set TRG(run) run.sh set TRG(runcmd) "bash run.sh" } | | | 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 | set TRG(make) make.sh set TRG(makecmd) "bash make.sh" set TRG(testfixture) testfixture set TRG(shell) sqlite3 set TRG(run) run.sh set TRG(runcmd) "bash run.sh" } *linux* - MSYS_NT* - MINGW64_NT* - MINGW32_NT* { set TRG(platform) linux set TRG(make) make.sh set TRG(makecmd) "bash make.sh" set TRG(testfixture) testfixture set TRG(shell) sqlite3 set TRG(run) run.sh set TRG(runcmd) "bash run.sh" |
︙ | ︙ |
Changes to test/testrunner_data.tcl.
︙ | ︙ | |||
455 456 457 458 459 460 461 | set lFuzzDb [glob [file join $::testdir fuzzdata*.db]] set lSessionDb [glob [file join $::testdir sessionfuzz-data*.db]] if {$::tcl_platform(platform)=="windows"} { return [list fuzzcheck.exe $lFuzzDb] } | | | 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 | set lFuzzDb [glob [file join $::testdir fuzzdata*.db]] set lSessionDb [glob [file join $::testdir sessionfuzz-data*.db]] if {$::tcl_platform(platform)=="windows"} { return [list fuzzcheck.exe $lFuzzDb] } return [list [trd_get_bin_name fuzzcheck] $lFuzzDb {sessionfuzz run} $lSessionDb] } proc trd_all_configs {} { trd_import set all_configs } |
︙ | ︙ | |||
684 685 686 687 688 689 690 | } set trd_test_script_properties_cache($path) $ret close $fd } set trd_test_script_properties_cache($path) } | > > > > > > > > > > > > > > | 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 | } set trd_test_script_properties_cache($path) $ret close $fd } set trd_test_script_properties_cache($path) } # Usage: # # trd_get_bin_name executable-file-name # # If file $bin exists, return $bin. Else if ${bin}.exe # exists, return that. Else error out. proc trd_get_bin_name {bin} { global tcl_platform if {[file exists $bin]} {return $bin} if {[file exists $bin.exe]} {return $bin.exe} if {$tcl_platform(platform)=="Windows"} {return $bin.exe} return $bin } |
Changes to tool/mkctimec.tcl.
︙ | ︙ | |||
316 317 318 319 320 321 322 323 324 325 326 327 328 329 | SQLITE_DEFAULT_WORKER_THREADS SQLITE_DQS SQLITE_ENABLE_8_3_NAMES SQLITE_ENABLE_CEROD SQLITE_ENABLE_LOCKING_STYLE SQLITE_EXTRA_AUTOEXT SQLITE_EXTRA_INIT SQLITE_EXTRA_SHUTDOWN SQLITE_FTS3_MAX_EXPR_DEPTH SQLITE_INTEGRITY_CHECK_ERROR_MAX SQLITE_MALLOC_SOFT_LIMIT SQLITE_MAX_ATTACHED SQLITE_MAX_COLUMN SQLITE_MAX_COMPOUND_SELECT | > | 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 | SQLITE_DEFAULT_WORKER_THREADS SQLITE_DQS SQLITE_ENABLE_8_3_NAMES SQLITE_ENABLE_CEROD SQLITE_ENABLE_LOCKING_STYLE SQLITE_EXTRA_AUTOEXT SQLITE_EXTRA_INIT SQLITE_EXTRA_INIT_MUTEXED SQLITE_EXTRA_SHUTDOWN SQLITE_FTS3_MAX_EXPR_DEPTH SQLITE_INTEGRITY_CHECK_ERROR_MAX SQLITE_MALLOC_SOFT_LIMIT SQLITE_MAX_ATTACHED SQLITE_MAX_COLUMN SQLITE_MAX_COMPOUND_SELECT |
︙ | ︙ |