- C Avoid\sevaluating\sspecial\svtab\soperators\s(e.g.\sMATCH)\sthat\sare\spart\sof\sON\sclauses\sattached\sto\sleft\sjoins\sfrom\sbeing\sevaluated\stoo\searly.\sFix\sfor\s[forum:/forumpost/428ef7c468\s|\sforum\spost\s428ef7c468].
- D 2025-07-15T19:00:01.118
-C Squelch\sa\slegitimate\sbut\sharmless\s'discards\sconst'\swarning.
-D 2025-07-16T09:20:02.408
++C Teach\sthe\ssqlite3\sCLI\sshell\sto\slook\sin\sXDG_STATE_HOME\sfor\sthe\sCLI\shistory\sfile\sbefore\sfalling\sback\sto\sits\shistorical\slocation\sin\sthe\suser's\shome\sdirectory.
++D 2025-07-16T09:27:55.137
F .fossil-settings/binary-glob 61195414528fb3ea9693577e1980230d78a1f8b0a54c78cf1b9b24d0a409ed6a x
F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1
F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea
F mptest/mptest.c aa41ace6dbc5050d76b02548d3521e6bbccae4f0
F mptest/multiwrite01.test dab5c5f8f9534971efce679152c5146da265222d
F sqlite.pc.in 42b7bf0d02e08b9e77734a47798d1a55a9e0716b
- F sqlite3.1 acdff36db796e2d00225b911d3047d580cd136547298435426ce9d40347973cc
+ F sqlite3.1 9e426a150af072be26b0661bcd54567692d979e99bc7daf55b22b952ff8e41a6
-F sqlite3.pc.in 0977c03a4da7c4204bd60e784a0efb8d51a190448aba78a4e973fe7192bdaf03
+F sqlite3.pc.in e6dee284fba59ef500092fdc1843df3be8433323a3733c91da96690a50a5b398
F src/alter.c fc7bbbeb9e89c7124bf5772ce474b333b7bdc18d6e080763211a40fde69fb1da
F src/analyze.c 03bcfc083fc0cccaa9ded93604e1d4244ea245c17285d463ef6a60425fcb247d
F src/attach.c 9af61b63b10ee702b1594ecd24fb8cea0839cfdb6addee52fba26fa879f5db9d
F src/prepare.c 1832be043fce7d489959aae6f994c452d023914714c4d5457beaed51c0f3d126
F src/printf.c 71b6d3a0093bf23f473e25480ca0024e8962681506c75f4ffd3d343a3f0ab113
F src/random.c 606b00941a1d7dd09c381d3279a058d771f406c5213c9932bbd93d5587be4b9c
-F src/resolve.c d40fe18d7c2fd0339f5846ffcf7d6809866e380acdf14c76fb2af87e9fe13f64
+F src/resolve.c d3ee7ed308d46f4ee6d3bb6316d8d6f87158f93a7fd616732138cc953cf364f0
F src/rowset.c 8432130e6c344b3401a8874c3cb49fefe6873fec593294de077afea2dce5ec97
-F src/select.c 882d739e0d5e6c7a8b46a3cca3ada37fe1a56301f1360d6b141312c666bbe482
-F src/shell.c.in 550ca8a09f8ac55203e69aae34e429b79d92cb44edf7419d8f3dd88eefab5d39
+F src/select.c fc003cad96a105765261f7b6c5f4596e505894262bb5593cb29e10b682800d12
- F src/shell.c.in 73c0eeb7c265d59b99219d5aa055f412f07842088d8036b6d259927d85dd1bbf
++F src/shell.c.in 2be7d0b2ba7221bd991f96d0c72728c06cead09bec3965e230ad703c9daf0c8a
F src/sqlite.h.in 5c54f2461a1ea529bab8499148a2b238e2d4bb571d59e8ea5322d0c190abb693
F src/sqlite3.rc 015537e6ac1eec6c7050e17b616c2ffe6f70fca241835a84a4f0d5937383c479
F src/sqlite3ext.h 0bfd049bb2088cc44c2ad54f2079d1c6e43091a4e1ce8868779b75f6c1484f1e
F tool/warnings-clang.sh bbf6a1e685e534c92ec2bfba5b1745f34fb6f0bc2a362850723a9ee87c1b31a7
F tool/warnings.sh 1ad0169b022b280bcaaf94a7fa231591be96b514230ab5c98fbf15cd7df842dd
F tool/win/sqlite.vsix deb315d026cc8400325c5863eef847784a219a2f
- P 0fcc3cbdfa21adf97aed01fa76991cccf9380e2755b0182a9e2c94e3c8fb38d7 ffebbb7ae977adc6c729d30b51f2ff29d416e018d82e450d87ccd973472819c8
- R 0ec55818aae25b06d1ba2943b74e8035
- T +closed ffebbb7ae977adc6c729d30b51f2ff29d416e018d82e450d87ccd973472819c8
- U dan
- Z 39542e12671ba6b0f9f551dd25869359
-P ebb346c5aa427b9e84a035278ee245d54810d9954efef12b898f2d7bc0ff630c
-R debb7a97a27a2dab2543b88f76ae8cc2
++P 9f184f8dfa5ef6d57e10376adc30e0060ceda07d283c23dfdfe3dbdd6608f839 73539fe0932494234b8f2293b0dbc1f0aac60a7d00fdaf4a59c2da654ce26f5b
++R 301553834aa3054a0cc5a0c4c21b9798
++T +closed 73539fe0932494234b8f2293b0dbc1f0aac60a7d00fdaf4a59c2da654ce26f5b Closed\sby\sintegrate-merge.
+ U stephan
-Z affb48d71da77c1ae112258e0a7a4bb5
++Z f8c26aad77c21d4fab9a1de2f2326205
# Remove this line to create a well-formed Fossil manifest.
}
/*
- ** On non-Windows platforms, look for $XDG_CONFIG_HOME.
- ** If ${XDG_CONFIG_HOME}/sqlite3/sqliterc is found, return
- ** the path to it. If there is no $(XDG_CONFIG_HOME) then
- ** look for $(HOME)/.config/sqlite3/sqliterc and if found
- ** return that. If none of these are found, return 0.
+ ** On non-Windows platforms, look for:
**
- ** The string returned is obtained from sqlite3_malloc() and
- ** should be freed by the caller.
+ ** - ${zEnvVar}/${zBaseName}
+ ** - ${HOME}/${zSubdir}/${zBaseName}
+ **
+ ** $zEnvVar is intended to be the name of an XDG_... environment
+ ** variable, e.g. XDG_CONFIG_HOME or XDG_STATE_HOME. If zEnvVar is
+ ** NULL or getenv(zEnvVar) is NULL then fall back to the second
+ ** option. If the selected option is not found in the filesystem,
+ ** return 0.
+ **
+ ** zSubdir may be NULL or empty, in which case ${HOME}/${zBaseName}
+ ** becomes the fallback.
+ **
+ ** Both zSubdir and zBaseName may contain subdirectory parts. zSubdir
-** will conventionally be ".config" or ".local/state".
++** will conventionally be ".config" or ".local/state", which, not
++** coincidentally, is the typical subdir of the corresponding XDG_...
++** var with the XDG var's $HOME prefix.
+ **
+ ** The returned string is obtained from sqlite3_malloc() and should be
+ ** sqlite3_free()'d by the caller.
*/
- static char *find_xdg_config(void){
+ static char *find_xdg_file(const char *zEnvVar, const char *zSubdir,
+ const char *zBaseName){
#if defined(_WIN32) || defined(WIN32) || defined(_WIN32_WCE) \
|| defined(__RTP__) || defined(_WRS_KERNEL)
return 0;