Fix some memory leaks that occur when malloc() fails. (CVS 3286)

FossilOrigin-Name: b56cc035f2be5c1a3f63efbb4c181e405a140fbb
diff --git a/src/main.c b/src/main.c
index b72d219..ae5f99c 100644
--- a/src/main.c
+++ b/src/main.c
@@ -14,7 +14,7 @@
 ** other files are for internal use by SQLite and should not be
 ** accessed by users of the library.
 **
-** $Id: main.c,v 1.346 2006/06/22 09:53:49 danielk1977 Exp $
+** $Id: main.c,v 1.347 2006/06/23 11:34:55 danielk1977 Exp $
 */
 #include "sqliteInt.h"
 #include "os.h"
@@ -133,6 +133,8 @@
     return SQLITE_ERROR;
   }
 
+  sqlite3VtabRollback(db);
+
   for(j=0; j<db->nDb; j++){
     struct Db *pDb = &db->aDb[j];
     if( pDb->pBt ){