1
0
mirror of https://github.com/sqlite/sqlite.git synced 2025-11-12 13:01:09 +03:00

Fix a bug whereby upgrading from a READ_FULL to a WRITE lock, and then back to a read lock was dropping all WAL locks.

FossilOrigin-Name: 55f5af5e174df7a28deeb36faa51138926669897
This commit is contained in:
dan
2010-04-30 16:38:59 +00:00
parent 30c8629e67
commit 78daa5a7d9
3 changed files with 9 additions and 9 deletions

View File

@@ -5240,9 +5240,9 @@ static int unixShmLock(
}
}
}else if( p->lockState==SQLITE_SHM_WRITE ){
rc = unixShmSharedLock(pFile, p, UNIX_SHM_A);
unixShmUnlock(pFile, p, UNIX_SHM_C|UNIX_SHM_D);
p->lockState = p->readLock;
rc = SQLITE_OK;
p->lockState = SQLITE_SHM_READ;
}else{
assert( p->lockState==SQLITE_SHM_RECOVER );
unixShmUnlock(pFile, p, UNIX_SHM_MUTEX);