]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
Cherrypick the sqlite_data_count() changes from [d4f95b3b6e] and
authordrh <drh@noemail.net>
Mon, 10 Oct 2011 18:59:05 +0000 (18:59 +0000)
committerdrh <drh@noemail.net>
Mon, 10 Oct 2011 18:59:05 +0000 (18:59 +0000)
[9913996e7b] into the apple-osx branch for version 3.7.7.

FossilOrigin-Name: aef7945c423a8338374572eeda9444866c64569b

manifest
manifest.uuid
src/sqlite.h.in
src/vdbeaux.c

index 3708a4362ebb35505d0d30353ec5ef4dd54246ba..c3cd1f857ea0f73ee67347b19502be45ada78f83 100644 (file)
--- a/manifest
+++ b/manifest
@@ -1,5 +1,5 @@
-C Changes\sto\smake\spragma\ssynchronous\ssticky\swhen\sSQLITE_DEFAULT_WAL_SAFETYLEVEL\sis\sused
-D 2011-06-25T21:43:15.946
+C Cherrypick\sthe\ssqlite_data_count()\schanges\sfrom\s[d4f95b3b6e]\sand\n[9913996e7b]\sinto\sthe\sapple-osx\sbranch\sfor\sversion\s3.7.7.
+D 2011-10-10T18:59:05.365
 F Makefile.arm-wince-mingw32ce-gcc d6df77f1f48d690bd73162294bbba7f59507c72f
 F Makefile.in 8410b02448997eb43bdf0ffa482c9bc2d2624e45
 F Makefile.linux-gcc 91d710bdc4998cb015f39edf3cb314ec4f4d7e23
@@ -184,7 +184,7 @@ F src/resolve.c 1c0f32b64f8e3f555fe1f732f9d6f501a7f05706
 F src/rowset.c 69afa95a97c524ba6faf3805e717b5b7ae85a697
 F src/select.c 75b7dd8c6a5ff9b8ec3f7ed51d31af8b30f114bc
 F src/shell.c 0e0173b3e79d956368013e759f084caa7995ecb1
-F src/sqlite.h.in dc26f18c71a30680b163317aa3d068e3aa02980c
+F src/sqlite.h.in 7289ab65b3eaf9dad5284b100764f3db1bd667a9
 F src/sqlite3_private.h 1d18557420cb0cc51ff31ec0a3fcce11e5cd6f5a
 F src/sqlite3ext.h c90bd5507099f62043832d73f6425d8d5c5da754
 F src/sqliteInt.h 7240bba17d8f49a667d67bdbbe4cdf898536fc61
@@ -246,7 +246,7 @@ F src/vdbe.c 80d511d7096918f4f6be6a63988a885c54dd1048
 F src/vdbe.h 5cf09e7ee8a3f7d93bc51f196a96550786afe7a1
 F src/vdbeInt.h ad84226cc0adcb1185c22b70696b235a1678bb45
 F src/vdbeapi.c 7f01db7d26758b2be316116f8325a0b9f0d8edd6
-F src/vdbeaux.c 0b2e2880f13af400a27c92a7673287c3eaec8b21
+F src/vdbeaux.c ebe8ca774b6bb9fb4252037f3bb53883b632704e
 F src/vdbeblob.c f024f0bf420f36b070143c32b15cc7287341ffd3
 F src/vdbemem.c 0498796b6ffbe45e32960d6a1f5adfb6e419883b
 F src/vdbetrace.c 4b92fe7355f682368203d29b2be7125cbab85e79
@@ -954,7 +954,10 @@ F tool/symbols.sh bc2a3709940d47c8ac8e0a1fdf17ec801f015a00
 F tool/tostr.awk 11760e1b94a5d3dcd42378f3cc18544c06cfa576
 F tool/vdbe-compress.tcl d70ea6d8a19e3571d7ab8c9b75cba86d1173ff0f
 F tool/warnings.sh 347d974d143cf132f953b565fbc03026f19fcb4d
-P 8f8b373eed7052e6e93c1805fc1effcf1db09366
-R e151aa11e88480c804b5ef43a2ab643c
-U adam
-Z 3111cbbb811aa7ac12c37845c0ffea17
+P c6158b254fabd02a3d58b1a047a3c5fa979b41a8
+R 698ad78198c29aa949534e4c4e347713
+T *branch * apple-osx-377
+T *sym-apple-osx-377 *
+T -sym-apple-osx *
+U drh
+Z 06f34d41d072554967ad572a94c4a640
index 54617e53b2a303a6b35c6a9d4c46f8d958776051..65c398afe7e817f5848306eb6e4ab9f3008ff95c 100644 (file)
@@ -1 +1 @@
-c6158b254fabd02a3d58b1a047a3c5fa979b41a8
\ No newline at end of file
+aef7945c423a8338374572eeda9444866c64569b
\ No newline at end of file
index 824c96d1bc863957965dd54a8a8c08076421ae5c..2d3676a3d996709a26ac66652e3fafa902f34768 100644 (file)
@@ -3323,6 +3323,12 @@ int sqlite3_step(sqlite3_stmt*);
 ** (via calls to the [sqlite3_column_int | sqlite3_column_*()] of
 ** interfaces) then sqlite3_data_count(P) returns 0.
 ** ^The sqlite3_data_count(P) routine also returns 0 if P is a NULL pointer.
+** ^The sqlite3_data_count(P) routine returns 0 if the previous call to
+** [sqlite3_step](P) returned [SQLITE_DONE].  ^The sqlite3_data_count(P)
+** will return non-zero if previous call to [sqlite3_step](P) returned
+** [SQLITE_ROW], except in the case of the [PRAGMA incremental_vacuum]
+** where it always returns zero since each step of that multi-step
+** pragma returns 0 columns of data.
 **
 ** See also: [sqlite3_column_count()]
 */
index 447ba57a1e136161e23ac206396e07b576654646..5d5f47aa38825c08e0a2ef64100fb1987aedcfcc 100644 (file)
@@ -1138,7 +1138,7 @@ int sqlite3VdbeList(
   sqlite3 *db = p->db;                 /* The database connection */
   int i;                               /* Loop counter */
   int rc = SQLITE_OK;                  /* Return code */
-  Mem *pMem = p->pResultSet = &p->aMem[1];  /* First Mem of result set */
+  Mem *pMem = &p->aMem[1];             /* First Mem of result set */
 
   assert( p->explain );
   assert( p->magic==VDBE_MAGIC_RUN );
@@ -1149,6 +1149,7 @@ int sqlite3VdbeList(
   ** sqlite3_column_text16(), causing a translation to UTF-16 encoding.
   */
   releaseMemArray(pMem, 8);
+  p->pResultSet = 0;
 
   if( p->rc==SQLITE_NOMEM ){
     /* This happens if a malloc() inside a call to sqlite3_column_text() or
@@ -1303,6 +1304,7 @@ int sqlite3VdbeList(
     }
 
     p->nResColumn = 8 - 4*(p->explain-1);
+    p->pResultSet = &p->aMem[1];
     p->rc = SQLITE_OK;
     rc = SQLITE_ROW;
   }