1
0
mirror of https://github.com/sqlite/sqlite.git synced 2025-10-27 08:52:26 +03:00

Bug fix in the unix locking code. (CVS 1574)

FossilOrigin-Name: dcad244f58453d23f2bcb749dcea077434bbd08c
This commit is contained in:
drh
2004-06-12 02:17:14 +00:00
parent 2a764eb0cd
commit 3cde3bb0da
5 changed files with 40 additions and 29 deletions

View File

@@ -420,6 +420,7 @@ int sqlite3OsLock(OsFile *id, int locktype){
** a SHARED lock. If we are acquiring a SHARED lock, the acquisition of
** the PENDING_LOCK byte is temporary.
*/
newLocktype = id->locktype;
if( id->locktype==NO_LOCK
|| (locktype==EXCLUSIVE_LOCK && id->locktype==RESERVED_LOCK)
){
@@ -536,7 +537,7 @@ int sqlite3OsCheckReservedLock(OsFile *id){
int sqlite3OsUnlock(OsFile *id, int locktype){
int rc, type;
assert( locktype<=SHARED_LOCK );
TRACE4("UNLOCK %d to %d was %d(%d)\n", id->h, locktype,
TRACE5("UNLOCK %d to %d was %d(%d)\n", id->h, locktype,
id->locktype, id->sharedLockByte);
type = id->locktype;
if( type>=EXCLUSIVE_LOCK ){