From 537a6bf1899942db02d83da4db9023f40fcfb1d5 Mon Sep 17 00:00:00 2001 From: drh <> Date: Tue, 15 Feb 2022 13:23:09 +0000 Subject: [PATCH] Improved rendering of floating point numbers without a fractional part in ".dump" output from the CLI. [forum:/forumpost/550d877659f37cb2|Forum post 550d877659f37cb2]. FossilOrigin-Name: 9edaeed56f2282fd4da935454178c38ab49d259aed96d4e720aae09050a53006 --- manifest | 12 ++++++------ manifest.uuid | 2 +- src/shell.c.in | 7 ++++++- 3 files changed, 13 insertions(+), 8 deletions(-) diff --git a/manifest b/manifest index e685cc2ec5..220535e5db 100644 --- a/manifest +++ b/manifest @@ -1,5 +1,5 @@ -C New\sassert()\sstatements\sto\shelp\sprove\scorrectness\sof\smemjournal.c. -D 2022-02-15T11:46:31.084 +C Improved\srendering\sof\sfloating\spoint\snumbers\swithout\sa\sfractional\spart\sin\n".dump"\soutput\sfrom\sthe\sCLI.\n[forum:/forumpost/550d877659f37cb2|Forum\spost\s550d877659f37cb2]. +D 2022-02-15T13:23:09.386 F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1 F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea F LICENSE.md df5091916dbb40e6e9686186587125e1b2ff51f022cc334e886c19a0e9982724 @@ -553,7 +553,7 @@ F src/random.c 097dc8b31b8fba5a9aca1697aeb9fd82078ec91be734c16bffda620ced7ab83c F src/resolve.c ea935b87d6fb36c78b70cdc7b28561dc8f33f2ef37048389549c7b5ef9b0ba5e F src/rowset.c ba9515a922af32abe1f7d39406b9d35730ed65efab9443dc5702693b60854c92 F src/select.c 3baa9dd8cf240654773c7974e2bcce398ac9dd24419c36684156963defe43b35 -F src/shell.c.in 1289a2e10f48e75956700f61aac63beff7f05988ac7a4c701800b9f0e9adad4e +F src/shell.c.in b5b44c2ebfd3942e60dbcc47b94a74337a482a5f1c3766fbfb9f578a605ecf50 F src/sqlite.h.in 7047c4b60fa550264d6363bb1d983540e7828fb19d2d1e5aa43b52ca13144807 F src/sqlite3.rc 5121c9e10c3964d5755191c80dd1180c122fc3a8 F src/sqlite3ext.h a95cb9ed106e3d39e2118e4dcc15a14faec3fa50d0093425083d340d9dfd96e6 @@ -1944,8 +1944,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 c039d5476e0836c16d8c1ad99a2620f7fd04eb4b0e5dcb2246b42dde2ae1f95a -R 9bfcbea3e2cc10033819aafa59cb37db +P d74ec88c2f9b9e056988add8322186750229e14a609d1a6969ba393a5b8c5174 +R d44a4dfcecd9d59ae3b06dca8b590f27 U drh -Z 45576672f2f8bed09c321631de66d99f +Z 28d22f7919d651ae0bfc81a1c20dfd1c # Remove this line to create a well-formed Fossil manifest. diff --git a/manifest.uuid b/manifest.uuid index 95ed510956..cf24b67f55 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -d74ec88c2f9b9e056988add8322186750229e14a609d1a6969ba393a5b8c5174 \ No newline at end of file +9edaeed56f2282fd4da935454178c38ab49d259aed96d4e720aae09050a53006 \ No newline at end of file diff --git a/src/shell.c.in b/src/shell.c.in index dba42e817f..3ff1f62c72 100644 --- a/src/shell.c.in +++ b/src/shell.c.in @@ -2311,7 +2311,12 @@ static int shell_callback( }else if( ur==0xfff0000000000000LL ){ raw_printf(p->out, "-1e999"); }else{ - sqlite3_snprintf(50,z,"%!.20g", r); + sqlite3_int64 ir = (sqlite3_int64)r; + if( r==(double)ir ){ + sqlite3_snprintf(50,z,"%lld.0", ir); + }else{ + sqlite3_snprintf(50,z,"%!.20g", r); + } raw_printf(p->out, "%s", z); } }else if( aiType && aiType[i]==SQLITE_BLOB && p->pStmt ){ -- 2.47.2