Read the sqlite3_vtab.zErrMsg after each call to a virtual table
method and transfer any error into the database connection.
Fix the fts2.test and fts3.test scripts to that they return
silently rather than failing the test sequence if the appropriate
FTS implementation is unavailable. (CVS 5463)

FossilOrigin-Name: e2c6771d44f1b4fee16ef90e91c3498be2a7d2b1
diff --git a/src/sqliteInt.h b/src/sqliteInt.h
index cd976f1..07d7a3f 100644
--- a/src/sqliteInt.h
+++ b/src/sqliteInt.h
@@ -11,7 +11,7 @@
 *************************************************************************
 ** Internal interface definitions for SQLite.
 **
-** @(#) $Id: sqliteInt.h,v 1.742 2008/07/12 14:52:20 drh Exp $
+** @(#) $Id: sqliteInt.h,v 1.743 2008/07/23 18:17:32 drh Exp $
 */
 #ifndef _SQLITEINT_H_
 #define _SQLITEINT_H_
@@ -2215,11 +2215,13 @@
 #  define sqlite3VtabSync(X,Y) (Y)
 #  define sqlite3VtabRollback(X)
 #  define sqlite3VtabCommit(X)
+#  define sqlite3VtabTransferError(A,B,C)
 #else
    void sqlite3VtabClear(Table*);
    int sqlite3VtabSync(sqlite3 *db, int rc);
    int sqlite3VtabRollback(sqlite3 *db);
    int sqlite3VtabCommit(sqlite3 *db);
+   void sqlite3VtabTransferError(sqlite3 *db, int, sqlite3_vtab*);
 #endif
 void sqlite3VtabMakeWritable(Parse*,Table*);
 void sqlite3VtabLock(sqlite3_vtab*);