]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
Fix a problem with reading the "file" column of a zonefile virtual table.
authordan <dan@noemail.net>
Tue, 20 Feb 2018 19:25:49 +0000 (19:25 +0000)
committerdan <dan@noemail.net>
Tue, 20 Feb 2018 19:25:49 +0000 (19:25 +0000)
FossilOrigin-Name: d8d0bdcb405610978393bb8f3ef30ee868fddda0d129036f8d0102012fe0d5d4

ext/zonefile/zonefile.c
ext/zonefile/zonefile1.test
manifest
manifest.uuid

index e31abe0cc626ef224ccc6bfe35e08e2ab8ff1c65..1714120535ed5d399ea56c89272bfcd0ac693018 100644 (file)
@@ -2312,9 +2312,13 @@ static int zonefileColumn(
     case 1: /* v */
       rc = zonefileGetValue(pCtx, pCsr);
       break;
-    case 2: /* file */
-      sqlite3_result_value(pCtx, sqlite3_column_value(pCsr->pSelect, 1));
+    case 2: { /* file */
+      const char *zFile = 0;
+      rc = zonefileGetFile(pCtx, pCsr, &zFile);
+      sqlite3_result_text(pCtx, zFile, -1, SQLITE_TRANSIENT);
+      zonefileReleaseFile(pCsr);
       break;
+    }
     default: { /* sz */
       int iCol;
       if( sqlite3_column_type(pCsr->pSelect, 5)==SQLITE_NULL ){
index ca1a06f43a522fe6b12ac4b4a8101f03afe7d91d..660bb14e8c42fb5538b23548de6b358febf71446 100644 (file)
@@ -51,7 +51,6 @@ do_execsql_test 1.5.2 { SELECT file FROM z1 } {
   test.zonefile test.zonefile test.zonefile
 }
 do_execsql_test 1.5.4 { SELECT sz FROM z1 } {100 100 100}
-exit
 
 do_execsql_test 1.5.5 {
   SELECT zz.v==z1.v FROM zz, z1 WHERE zz.k=z1.k
index 5e2c7a9e30133ada1e1b0b2ae5f7053fc37877f3..118621e308e523cc65d76cf0af582a609c4f60d4 100644 (file)
--- a/manifest
+++ b/manifest
@@ -1,5 +1,5 @@
-C Instead\sof\sjust\sthe\sframe\snumber,\sstore\sframe\ssizes\sand\soffsets\sin\szonefile\nshadow\stable\s%_shadow_idx.
-D 2018-02-20T18:47:24.294
+C Fix\sa\sproblem\swith\sreading\sthe\s"file"\scolumn\sof\sa\szonefile\svirtual\stable.
+D 2018-02-20T19:25:49.291
 F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1
 F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea
 F Makefile.in 7a3f714b4fcf793108042b7b0a5c720b0b310ec84314d61ba7f3f49f27e550ea
@@ -409,8 +409,8 @@ F ext/userauth/sqlite3userauth.h 7f3ea8c4686db8e40b0a0e7a8e0b00fac13aa7a3
 F ext/userauth/user-auth.txt e6641021a9210364665fe625d067617d03f27b04
 F ext/userauth/userauth.c 3410be31283abba70255d71fd24734e017a4497f
 F ext/zonefile/README.md 1a95a93c865e196bc6301581e5a702f449ea9ce0e307cdbdbbdfd58377f1ec7e
-F ext/zonefile/zonefile.c 0a15cb181d02f5afb7ca8dd3ae939cfa765bbf11a6a44c4e3f358e978d39795e
-F ext/zonefile/zonefile1.test 12e32e0664338fe5002d78036f057c46cf33214d73550c6e820e90e946a90f52
+F ext/zonefile/zonefile.c e65e17336a635ab1a7745924c2a9801427fcb7d90faf27495a18818c2873cf43
+F ext/zonefile/zonefile1.test a30f9604cede51f699af8192a34fac96dc05b860ffa10d6040baeda7df350ccd
 F install-sh 9d4de14ab9fb0facae2f48780b874848cbf2f895 x
 F ltmain.sh 3ff0879076df340d2e23ae905484d8c15d5fdea8
 F magic.txt 8273bf49ba3b0c8559cb2774495390c31fd61c60
@@ -1708,7 +1708,7 @@ F vsixtest/vsixtest.tcl 6a9a6ab600c25a91a7acc6293828957a386a8a93
 F vsixtest/vsixtest.vcxproj.data 2ed517e100c66dc455b492e1a33350c1b20fbcdc
 F vsixtest/vsixtest.vcxproj.filters 37e51ffedcdb064aad6ff33b6148725226cd608e
 F vsixtest/vsixtest_TemporaryKey.pfx e5b1b036facdb453873e7084e1cae9102ccc67a0
-P 55cf920c5a13473d04f0cb885117c04b2bc054bfed6ee549be84cb9485c104d2
-R 032579fc2be331b3506eb489f2f4da6b
+P 56801c461c5d19cf96146fe0fa7f725c81da5cd7495c9608cd044125d00fecfe
+R ba7ae0ba2f81b939f32aa56d85d21a90
 U dan
-Z 6da1c9e76b52b238efa7bf0ed02b77c3
+Z d1c74b9a3c2d2e5fb68ce19cfd3af3bc
index 982449f30b056ddf330f414f6a88b2dba25cb594..9cdc09bb43aabb5c7bdff13bc8b3e384a9cdd959 100644 (file)
@@ -1 +1 @@
-56801c461c5d19cf96146fe0fa7f725c81da5cd7495c9608cd044125d00fecfe
\ No newline at end of file
+d8d0bdcb405610978393bb8f3ef30ee868fddda0d129036f8d0102012fe0d5d4
\ No newline at end of file