diff --git a/src/os_win.c b/src/os_win.c
index ec62e39..24d0e7c 100644
--- a/src/os_win.c
+++ b/src/os_win.c
@@ -1151,7 +1151,7 @@
 */
 static int winDeviceCharacteristics(sqlite3_file *id){
   UNUSED_PARAMETER(id);
-  return 0;
+  return SQLITE_IOCAP_UNDELETABLE_WHEN_OPEN;
 }
 
 /****************************************************************************
diff --git a/src/pager.c b/src/pager.c
index a902d70..3d16c66 100644
--- a/src/pager.c
+++ b/src/pager.c
@@ -3924,9 +3924,9 @@
   assert( pPager->useJournal );
   assert( isOpen(pPager->fd) );
   assert( pPager->state <= PAGER_SHARED );
-  assert( jrnlOpen==0
-       || sqlite3OsDeviceCharacteristics(pPager->jfd)&SQLITE_IOCAP_SAFE_DELETE
-  );
+  assert( jrnlOpen==0 || ( sqlite3OsDeviceCharacteristics(pPager->jfd) &
+    SQLITE_IOCAP_UNDELETABLE_WHEN_OPEN
+  ));
 
   *pExists = 0;
   if( !jrnlOpen ){
@@ -4509,7 +4509,7 @@
       rc = sqlite3OsOpen(pVfs, pPager->zJournal, pPager->jfd, flags, 0);
       if( rc==SQLITE_OK ){
         int iDc = sqlite3OsDeviceCharacteristics(pPager->jfd);
-        pPager->safeJrnlHandle = (iDc&SQLITE_IOCAP_SAFE_DELETE)!=0;
+        pPager->safeJrnlHandle = (iDc&SQLITE_IOCAP_UNDELETABLE_WHEN_OPEN)!=0;
       }
 #endif
     }
diff --git a/src/sqlite.h.in b/src/sqlite.h.in
index 093d5b3..f91f25b 100644
--- a/src/sqlite.h.in
+++ b/src/sqlite.h.in
@@ -497,18 +497,18 @@
 ** information is written to disk in the same order as calls
 ** to xWrite().
 */
-#define SQLITE_IOCAP_ATOMIC          0x00000001
-#define SQLITE_IOCAP_ATOMIC512       0x00000002
-#define SQLITE_IOCAP_ATOMIC1K        0x00000004
-#define SQLITE_IOCAP_ATOMIC2K        0x00000008
-#define SQLITE_IOCAP_ATOMIC4K        0x00000010
-#define SQLITE_IOCAP_ATOMIC8K        0x00000020
-#define SQLITE_IOCAP_ATOMIC16K       0x00000040
-#define SQLITE_IOCAP_ATOMIC32K       0x00000080
-#define SQLITE_IOCAP_ATOMIC64K       0x00000100
-#define SQLITE_IOCAP_SAFE_APPEND     0x00000200
-#define SQLITE_IOCAP_SEQUENTIAL      0x00000400
-#define SQLITE_IOCAP_SAFE_DELETE     0x00000800
+#define SQLITE_IOCAP_ATOMIC                 0x00000001
+#define SQLITE_IOCAP_ATOMIC512              0x00000002
+#define SQLITE_IOCAP_ATOMIC1K               0x00000004
+#define SQLITE_IOCAP_ATOMIC2K               0x00000008
+#define SQLITE_IOCAP_ATOMIC4K               0x00000010
+#define SQLITE_IOCAP_ATOMIC8K               0x00000020
+#define SQLITE_IOCAP_ATOMIC16K              0x00000040
+#define SQLITE_IOCAP_ATOMIC32K              0x00000080
+#define SQLITE_IOCAP_ATOMIC64K              0x00000100
+#define SQLITE_IOCAP_SAFE_APPEND            0x00000200
+#define SQLITE_IOCAP_SEQUENTIAL             0x00000400
+#define SQLITE_IOCAP_UNDELETABLE_WHEN_OPEN  0x00000800
 
 /*
 ** CAPI3REF: File Locking Levels
diff --git a/src/test_vfs.c b/src/test_vfs.c
index 2d4dad7..46f3a06 100644
--- a/src/test_vfs.c
+++ b/src/test_vfs.c
@@ -1066,19 +1066,19 @@
         char *zName;
         int iValue;
       } aFlag[] = {
-        { "default",     -1 },
-        { "atomic",      SQLITE_IOCAP_ATOMIC      },
-        { "atomic512",   SQLITE_IOCAP_ATOMIC512   },
-        { "atomic1k",    SQLITE_IOCAP_ATOMIC1K    },
-        { "atomic2k",    SQLITE_IOCAP_ATOMIC2K    },
-        { "atomic4k",    SQLITE_IOCAP_ATOMIC4K    },
-        { "atomic8k",    SQLITE_IOCAP_ATOMIC8K    },
-        { "atomic16k",   SQLITE_IOCAP_ATOMIC16K   },
-        { "atomic32k",   SQLITE_IOCAP_ATOMIC32K   },
-        { "atomic64k",   SQLITE_IOCAP_ATOMIC64K   },
-        { "sequential",  SQLITE_IOCAP_SEQUENTIAL  },
-        { "safe_append", SQLITE_IOCAP_SAFE_APPEND },
-        { "safe_delete", SQLITE_IOCAP_SAFE_DELETE },
+        { "default",               -1 },
+        { "atomic",                SQLITE_IOCAP_ATOMIC      },
+        { "atomic512",             SQLITE_IOCAP_ATOMIC512   },
+        { "atomic1k",              SQLITE_IOCAP_ATOMIC1K    },
+        { "atomic2k",              SQLITE_IOCAP_ATOMIC2K    },
+        { "atomic4k",              SQLITE_IOCAP_ATOMIC4K    },
+        { "atomic8k",              SQLITE_IOCAP_ATOMIC8K    },
+        { "atomic16k",             SQLITE_IOCAP_ATOMIC16K   },
+        { "atomic32k",             SQLITE_IOCAP_ATOMIC32K   },
+        { "atomic64k",             SQLITE_IOCAP_ATOMIC64K   },
+        { "sequential",            SQLITE_IOCAP_SEQUENTIAL  },
+        { "safe_append",           SQLITE_IOCAP_SAFE_APPEND },
+        { "undeletable_when_open", SQLITE_IOCAP_UNDELETABLE_WHEN_OPEN },
         { 0, 0 }
       };
       Tcl_Obj *pRet;
