diff --git a/manifest b/manifest index 6af7ad4a9d..d27db89232 100644 --- a/manifest +++ b/manifest @@ -1,5 +1,5 @@ -C Do\snot\srun\sthe\sOR\soptimization\son\sthe\sleft\soperand\sof\sa\sLEFT\sJOIN.\n[bugs:/info/2026-10-18T16:10:55Z|Bug\s2026-10-18T16:10:55Z]. -D 2026-10-18T23:45:59.905 +C Fix\sthe\s".dump"\scommand\sin\sthe\sCLI\sso\sthat\sit\sis\snot\saffected\sby\nmode\ssettings\slike\s--fpfmt,\s--ifmt,\sor\s--textjsonb.\n[bugs:/info/2026-10-18T20:39:22Z|/info/2026-10-18T20:39:22Z] +D 2026-10-19T12:02:08.747 F .fossil-settings/binary-glob 61195414528fb3ea9693577e1980230d78a1f8b0a54c78cf1b9b24d0a409ed6a x F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1 F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea @@ -803,7 +803,7 @@ F src/random.c 606b00941a1d7dd09c381d3279a058d771f406c5213c9932bbd93d5587be4b9c F src/resolve.c 0e0990f60c93db38c735d85e5d1741130e72dd0670aec204b5a39118b53c8044 F src/rowset.c 8432130e6c344b3401a8874c3cb49fefe6873fec593294de077afea2dce5ec97 F src/select.c 1367ef94822d7f9179c119906315f4a1ef1765aa04c0e08db0cd66a58e2d191d -F src/shell.c.in 3e11598ebd82077fb525874046250117502e665ac75b6e9912acf29a8514ffd7 +F src/shell.c.in 7b2b927ade38b5ac1553eeeba3e22d42da87ba585c00d5277b8595090ac96c59 F src/sqlite.h.in 648fdc66f52433fc0f6cf9564ac924cde544eca9605bbac36aa22d8c944f11ed F src/sqlite3.rc 015537e6ac1eec6c7050e17b616c2ffe6f70fca241835a84a4f0d5937383c479 F src/sqlite3ext.h 5e113c4c0442f2f1b3345d44cbe4b82fad45f2fc0c35f0ed4eef27fb8f1cb394 @@ -1529,7 +1529,7 @@ F test/mmapcorrupt.test 470fb44fe92e99c1d23701d156f8c17865f5b027063c9119dcfdb842 F test/mmapfault.test d4c9eff9cd8c2dc14bc43e71e042f175b0a26fe3 F test/mmapleak.test 7542cafa4771abba531d072ea905f474a2875a153337a04f327f0a9319cdb72c F test/mmapwarm.test 2272005969cd17a910077bd5082f70bc1fefad9a875afec7fc9af483898ecaf3 -F test/modeA.sql 85875b8d676a3f4f7cb320f1a3d2b87e739dd9f3958902689a37a675affa125c +F test/modeA.sql ef3227057969c2bc22f9ac741f37b0fad4166c184f010a17a660623aa89fc7a9 F test/multiplex.test d74c034e52805f6de8cc5432cef8c9eb774bb64ec29b83a22effc8ca4dac1f08 F test/multiplex2.test 580ca5817c7edbe4cc68fa150609c9473393003a F test/multiplex3.test fac575e0b1b852025575a6a8357701d80933e98b5d2fe6d35ddaa68f92f6a1f7 @@ -2287,8 +2287,8 @@ F tool/warnings-clang.sh bbf6a1e685e534c92ec2bfba5b1745f34fb6f0bc2a362850723a9ee F tool/warnings.sh a554d13f6e5cf3760f041b87939e3d616ec6961859c3245e8ef701d1eafc2ca2 F tool/win/sqlite.vsix deb315d026cc8400325c5863eef847784a219a2f F tool/winmain.c 00c8fb88e365c9017db14c73d3c78af62194d9644feaf60e220ab0f411f3604c -P 845190e3f2ede1f64d7e26ec9391d3551080c1d787599d49bad402c3734d81aa -R 097ca74841620a107f4b676054a6633b +P b4974127526b290149447849bf9c24c9ea01678755a58af3843c9e2c73c417d2 +R 173f8968dabb00bebdb6a472f81cd6fe U drh -Z 9ef3372a867dded1c7f0a5b2abcca5f3 +Z 79a8816ac565f6a1aed056d06beacd35 # Remove this line to create a well-formed Fossil manifest. diff --git a/manifest.uuid b/manifest.uuid index 3bcfe694d0..2b793f30ec 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -b4974127526b290149447849bf9c24c9ea01678755a58af3843c9e2c73c417d2 +a9d8123e27fa71bf7d29ec4cc7aa997f5e94de3c5b48907ccb7242795e44144c diff --git a/src/shell.c.in b/src/shell.c.in index 706e85b3f8..66b45246e6 100644 --- a/src/shell.c.in +++ b/src/shell.c.in @@ -4292,6 +4292,9 @@ static int dump_callback(void *pArg, int nArg, char **azArg, char **azNotUsed){ p->mode.spec.eBlob = QRF_BLOB_Sql; p->mode.spec.bTitles = QRF_No; p->mode.spec.nCharLimit = 0; + p->mode.spec.bTextJsonb = QRF_No; + p->mode.spec.zIFmt = 0; + p->mode.spec.zFpFmt = 0; rc = shell_exec(p, sSelect.zTxt, 0); if( (rc&0xff)==SQLITE_CORRUPT ){ cli_puts("/****** CORRUPTION ERROR *******/\n", p->out); @@ -10614,6 +10617,8 @@ static int do_meta_command(const char *zLine, ShellState *p){ p->shellFlgs = savedShellFlags; modeFree(&p->mode); p->mode = saved_mode; + if( p->mode.spec.zFpFmt ) p->mode.spec.zFpFmt = p->mode.zFpFmt; + if( p->mode.spec.zIFmt ) p->mode.spec.zIFmt = p->mode.zIFmt; rc = p->nErr>0; }else diff --git a/test/modeA.sql b/test/modeA.sql index ddadabe49e..cdcbf47be5 100644 --- a/test/modeA.sql +++ b/test/modeA.sql @@ -670,3 +670,44 @@ SELECT '' AS ''; │ │ ╰──╯ END + +# Bug 2026-10-18T20:39:22Z +# +# .dump should not be affected by the --fpfmt, --ifmt, and --textjsonb +# settings of .mode +# +.open :memory: +.testcase 1400 +CREATE TABLE t1(a,b,c); +INSERT INTO t1 VALUES(1234.5678, 16, jsonb('{"a":1}')); +INSERT INTO t1 VALUES(0.5, 1234567, x'0102'); +.mode list --fpfmt %.2f --ifmt %x --textjsonb on +.dump +.check <