aboutsummaryrefslogtreecommitdiff
path: root/ext/misc/appendvfs.c
diff options
context:
space:
mode:
authordrh <drh@noemail.net>2017-12-14 16:57:11 +0000
committerdrh <drh@noemail.net>2017-12-14 16:57:11 +0000
commit233ff96ec5beae1301731a3c0893f8cf358c86f0 (patch)
treefa0bb9b2c409a34eb6944e3d5b52e6457a423d29 /ext/misc/appendvfs.c
parente483d349ab20b49cf704423f3d15e30d722f25e2 (diff)
downloadsqlite-233ff96ec5beae1301731a3c0893f8cf358c86f0.tar.gz
sqlite-233ff96ec5beae1301731a3c0893f8cf358c86f0.zip
The "apndvfs" VFS shim now appears to be working for both reads and writes.
FossilOrigin-Name: 7f7b72d83633922e2b5dbf0d3455d0fea72cc6b8925ffcb78dfbad7b3c4b26e9
Diffstat (limited to 'ext/misc/appendvfs.c')
-rw-r--r--ext/misc/appendvfs.c7
1 files changed, 3 insertions, 4 deletions
diff --git a/ext/misc/appendvfs.c b/ext/misc/appendvfs.c
index d0096f122..bd1f37509 100644
--- a/ext/misc/appendvfs.c
+++ b/ext/misc/appendvfs.c
@@ -212,7 +212,7 @@ static int apndWriteMark(ApndFile *p, sqlite3_file *pFile){
for(i=0; i<8; i++){
a[APND_MARK_PREFIX_SZ+i] = (p->iPgOne >> (56 - i*8)) & 0xff;
}
- return pFile->pMethods->xWrite(pFile, a, APND_MARK_PREFIX_SZ, p->iMark);
+ return pFile->pMethods->xWrite(pFile, a, APND_MARK_SIZE, p->iMark);
}
/*
@@ -331,8 +331,7 @@ static int apndSectorSize(sqlite3_file *pFile){
*/
static int apndDeviceCharacteristics(sqlite3_file *pFile){
pFile = ORIGFILE(pFile);
- return SQLITE_IOCAP_IMMUTABLE |
- pFile->pMethods->xDeviceCharacteristics(pFile);
+ return pFile->pMethods->xDeviceCharacteristics(pFile);
}
/* Create a shared memory file mapping */
@@ -550,7 +549,7 @@ int sqlite3_appendvfs_init(
pOrig = sqlite3_vfs_find(0);
apnd_vfs.iVersion = pOrig->iVersion;
apnd_vfs.pAppData = pOrig;
- apnd_vfs.szOsFile = sizeof(ApndFile);
+ apnd_vfs.szOsFile = pOrig->szOsFile + sizeof(ApndFile);
rc = sqlite3_vfs_register(&apnd_vfs, 0);
#ifdef APPENDVFS_TEST
if( rc==SQLITE_OK ){