]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
Fix the QRF so that it omits the closing text from styles "json" and "jobject"
authordrh <>
Fri, 21 Nov 2025 11:00:29 +0000 (11:00 +0000)
committerdrh <>
Fri, 21 Nov 2025 11:00:29 +0000 (11:00 +0000)
when the result set it empty.

FossilOrigin-Name: e1ba175124be83da4db6d5d4e583b9b3b7dcb82e983c6f185d590469dcdc3139

ext/qrf/qrf.c
manifest
manifest.uuid
test/qrf01.test

index 317a760e36e9f6b0b99b6905c65312befde872b8..d9d0c75d0886e9f081f2d09bc028de3fddb43134 100644 (file)
@@ -2386,13 +2386,17 @@ static void qrfFinalize(Qrf *p){
       break;
     }
     case QRF_STYLE_Json: {
-      sqlite3_str_append(p->pOut, "}]\n", 3);
-      qrfWrite(p);
+      if( p->nRow>0 ){
+        sqlite3_str_append(p->pOut, "}]\n", 3);
+        qrfWrite(p);
+      }
       break;
     }
     case QRF_STYLE_JObject: {
-      sqlite3_str_append(p->pOut, "}\n", 2);
-      qrfWrite(p);
+      if( p->nRow>0 ){
+        sqlite3_str_append(p->pOut, "}\n", 2);
+        qrfWrite(p);
+      }
       break;
     }
     case QRF_STYLE_Line: {
index 4122d483d3de6da2598c4918266ab3109f8037b0..279e0a1b6905c95d313b055aebeab3b19a8dec99 100644 (file)
--- a/manifest
+++ b/manifest
@@ -1,5 +1,5 @@
-C Move\sthe\sJS\spieces\sof\skvvfs\sinto\stheir\sown\sfile\sto\sfacilitate\spending\sfeature\sexperimentation.
-D 2025-11-21T10:49:32.462
+C Fix\sthe\sQRF\sso\sthat\sit\somits\sthe\sclosing\stext\sfrom\sstyles\s"json"\sand\s"jobject"\nwhen\sthe\sresult\sset\sit\sempty.
+D 2025-11-21T11:00:29.560
 F .fossil-settings/binary-glob 61195414528fb3ea9693577e1980230d78a1f8b0a54c78cf1b9b24d0a409ed6a x
 F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1
 F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea
@@ -417,7 +417,7 @@ F ext/misc/windirent.h 02211ce51f3034c675f2dbf4d228194d51b3ee05734678bad5106fff6
 F ext/misc/zipfile.c 09e6e3a3ff40a99677de3c0bc6569bd5f4709b1844ac3d1c1452a456c5a62f1c
 F ext/misc/zorder.c bddff2e1b9661a90c95c2a9a9c7ecd8908afab5763256294dd12d609d4664eee
 F ext/qrf/README.md dd565fd1ca0c46ea37dbf4d496e368b9ecade768c92669640bc106e039629016
-F ext/qrf/qrf.c ee3964addf075c87fc60e312a472eec35112ba34581edf655fcd5c34e2492602
+F ext/qrf/qrf.c 9c956eb63c34f9e1addfb658e61bc81c6e1783dd67d0656260223ab25b02ea37
 F ext/qrf/qrf.h b4b3489b3b3683523fd248d15cf5945830643b036943efacdb772a3e00367aa2
 F ext/rbu/rbu.c 801450b24eaf14440d8fd20385aacc751d5c9d6123398df41b1b5aa804bf4ce8
 F ext/rbu/rbu1.test 25870dd7db7eb5597e2b4d6e29e7a7e095abf332660f67d89959552ce8f8f255
@@ -1506,7 +1506,7 @@ F test/printf2.test 3f55c1871a5a65507416076f6eb97e738d5210aeda7595a74ee895f2224c
 F test/progress.test ebab27f670bd0d4eb9d20d49cef96e68141d92fb
 F test/ptrchng.test ef1aa72d6cf35a2bbd0869a649b744e9d84977fc
 F test/pushdown.test 46a626ef1c0ca79b85296ff2e078b9da20a50e9b804b38f441590c3987580ddd
-F test/qrf01.test dfdbbd2b5f2808f5ff6598c8632ee002389b690eb5016450c2f847d8e51b9b92
+F test/qrf01.test f1831a387233482b64a43d55f89a2d0f0da5d1e903e2473c7bd03deb88272234
 F test/qrf02.test 39b4afdc000bedccdafc0aecf17638df67a67aaa2d2942865ae6abcc48ba0e92
 F test/qrf03.test 9d88aeb5cdd53f050b7ab9bd203281f7c9d063c33f22f8808e441b7ac0874ccf
 F test/queryonly.test 5f653159e0f552f0552d43259890c1089391dcca
@@ -2175,8 +2175,8 @@ F tool/version-info.c 33d0390ef484b3b1cb685d59362be891ea162123cea181cb8e6d2cf6dd
 F tool/warnings-clang.sh bbf6a1e685e534c92ec2bfba5b1745f34fb6f0bc2a362850723a9ee87c1b31a7
 F tool/warnings.sh d924598cf2f55a4ecbc2aeb055c10bd5f48114793e7ba25f9585435da29e7e98
 F tool/win/sqlite.vsix deb315d026cc8400325c5863eef847784a219a2f
-P 4d41bee75eda51251121c8e3903f47941116e5182238a03f41a593c47efb6fcf
-R 89e12ac8833b73cf56a70154881e6f51
-U stephan
-Z 653a6aeee27ed8b2d1b86bc8d2dfe977
+P 3c40614285449df259a3444e36f888cfb5e782ea58287914f97f496ea61e9e9f
+R 72c70ba25f0ad378a1be121350d99310
+U drh
+Z 8420ad8f8baca6e0e81bbb82a5393430
 # Remove this line to create a well-formed Fossil manifest.
index 17a24daa49ac5aad522c7787125b003944b398b1..1bdbcfee9c2b769fa94310ad9c1439314ba30be7 100644 (file)
@@ -1 +1 @@
-3c40614285449df259a3444e36f888cfb5e782ea58287914f97f496ea61e9e9f
+e1ba175124be83da4db6d5d4e583b9b3b7dcb82e983c6f185d590469dcdc3139
index 431f51f51ae5e783095cd30a4fdc8f84fd1bf241..d251e35f7987d331552d954818f2b349c8de2176 100644 (file)
@@ -888,6 +888,13 @@ do_test 9.2 {
   db format -style list -text sql -rowsep , -textjsonb on \
                {SELECT * FROM t9}
 } {jsonb('1234'),jsonb('1234'),jsonb('1234'),jsonb('1234'),jsonb('1234'),}
+do_test 9.3 {
+  db format -style json  {SELECT * FROM t9 WHERE rowid<0}
+} {}
+do_test 9.4 {
+  db format -style jobject  {SELECT * FROM t9 WHERE rowid<0}
+} {}
+
 db close
 
 finish_test