aboutsummaryrefslogtreecommitdiff
path: root/src/os_unix.c
diff options
context:
space:
mode:
authordan <dan@noemail.net>2010-04-30 16:41:53 +0000
committerdan <dan@noemail.net>2010-04-30 16:41:53 +0000
commit43a56b812c6faf2069b428c84fb91c368eda4894 (patch)
treeb631633530759e229d37645aadf70270fc7b147d /src/os_unix.c
parent78daa5a7d9ae0629032b459d2fb65c2f6fc5e2a8 (diff)
downloadsqlite-43a56b812c6faf2069b428c84fb91c368eda4894.tar.gz
sqlite-43a56b812c6faf2069b428c84fb91c368eda4894.zip
Fix a problem in the previous commit. Both unixShm.lockState and unixShm.readLock should be set to READ when downgrading from a WRITE to a READ lock
FossilOrigin-Name: 90119fecbce06c8db82194dfd9d5045be29b1cda
Diffstat (limited to 'src/os_unix.c')
-rw-r--r--src/os_unix.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/os_unix.c b/src/os_unix.c
index 6e01ffb6b..a85d7a61b 100644
--- a/src/os_unix.c
+++ b/src/os_unix.c
@@ -5242,7 +5242,7 @@ 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 = SQLITE_SHM_READ;
+ p->lockState = p->readLock = SQLITE_SHM_READ;
}else{
assert( p->lockState==SQLITE_SHM_RECOVER );
unixShmUnlock(pFile, p, UNIX_SHM_MUTEX);