Make sure SQLITE_OPEN_DELETEONCLOSE is ignored by sqlite3_open_v2(). (CVS 4798)

FossilOrigin-Name: 33e26f6adf2ec2ab2e2711a8f86ce4cb11544e61
diff --git a/manifest b/manifest
index 0ed3cdf..3678793 100644
--- a/manifest
+++ b/manifest
@@ -1,5 +1,5 @@
-C Change\snon-exported\smemory\sinterfaces\sto\sfollowing\sthe\snaming\sconventions.\s(CVS\s4797)
-D 2008-02-19T15:15:16
+C Make\ssure\sSQLITE_OPEN_DELETEONCLOSE\sis\signored\sby\ssqlite3_open_v2().\s(CVS\s4798)
+D 2008-02-19T15:20:44
 F Makefile.arm-wince-mingw32ce-gcc ac5f7b2cef0cd850d6f755ba6ee4ab961b1fadf7
 F Makefile.in bc2b5df3e3d0d4b801b824b7ef6dec43812b049b
 F Makefile.linux-gcc d53183f4aa6a9192d249731c90dbdffbd2c68654
@@ -103,7 +103,7 @@
 F src/legacy.c cb1939fdeb91ea88fb44fbd2768a10e14bc44650
 F src/limits.h 71ab25f17e35e0a9f3f6f234b8ed49cc56731d35
 F src/loadext.c d17a0f760d6866aacf5262f97d8efaaad379cdd7
-F src/main.c b4014b71979a58d6aa79549fdf87175ab7bdf1cc
+F src/main.c 56f208ef8a06dd7474e65c591ad1d459ada2b6ed
 F src/malloc.c 60e392a4c12c839517f9b0db7b995f825444fb35
 F src/md5.c c5fdfa5c2593eaee2e32a5ce6c6927c986eaf217
 F src/mem1.c 62a821702d3292809ca78e7c55c3ca04b05a3757
@@ -621,7 +621,7 @@
 F www/vdbe.tcl 87a31ace769f20d3627a64fa1fade7fed47b90d0
 F www/version3.tcl 890248cf7b70e60c383b0e84d77d5132b3ead42b
 F www/whentouse.tcl fc46eae081251c3c181bd79c5faef8195d7991a5
-P 8fdbe4abab4e9c292111579b03471f68c1e855fb
-R ffd2f20a735264530a3840b731c9c29f
+P 94774b41429c8bfa3582e30c09f414b9e5669575
+R 293540c23c15806e7d5dede170b832e5
 U drh
-Z c45d168ad6e6cadeaabc43c10b516ff1
+Z 96dc1027991fc57641f419200eb92fc3
diff --git a/manifest.uuid b/manifest.uuid
index f3bc160..1e64744 100644
--- a/manifest.uuid
+++ b/manifest.uuid
@@ -1 +1 @@
-94774b41429c8bfa3582e30c09f414b9e5669575
\ No newline at end of file
+33e26f6adf2ec2ab2e2711a8f86ce4cb11544e61
\ No newline at end of file
diff --git a/src/main.c b/src/main.c
index 5f878f0..cb12c21 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.417 2008/01/31 15:31:02 danielk1977 Exp $
+** $Id: main.c,v 1.418 2008/02/19 15:20:44 drh Exp $
 */
 #include "sqliteInt.h"
 #include <ctype.h>
@@ -944,6 +944,17 @@
   int rc;
   CollSeq *pColl;
 
+  /* Remove harmful bits from the flags parameter */
+  flags &=  ~( SQLITE_OPEN_DELETEONCLOSE |
+               SQLITE_OPEN_MAIN_DB |
+               SQLITE_OPEN_TEMP_DB | 
+               SQLITE_OPEN_TRANSIENT_DB | 
+               SQLITE_OPEN_MAIN_JOURNAL | 
+               SQLITE_OPEN_TEMP_JOURNAL | 
+               SQLITE_OPEN_SUBJOURNAL | 
+               SQLITE_OPEN_MASTER_JOURNAL
+             );
+
   /* Allocate the sqlite data structure */
   db = sqlite3MallocZero( sizeof(sqlite3) );
   if( db==0 ) goto opendb_out;