Author: rfm
Date: Fri Mar 18 15:56:55 2016
New Revision: 39565
URL: http://svn.gna.org/viewcvs/gnustep?rev=39565&view=rev
Log:
make sure to unlock after an exception
Modified:
libs/base/trunk/Source/NSUserDefaults.m
Modified: libs/base/trunk/Source/NSUserDefaults.m
URL:
http://svn.gna.org/viewcvs/gnustep/libs/base/trunk/Source/NSUserDefaults.m?rev=39565&r1=39564&r2=39565&view=diff
==============================================================================
--- libs/base/trunk/Source/NSUserDefaults.m (original)
+++ libs/base/trunk/Source/NSUserDefaults.m Fri Mar 18 15:56:55 2016
@@ -1789,7 +1789,8 @@
- (BOOL) synchronize
{
NSDate *saved;
- BOOL wasLocked;
+ BOOL isLocked = NO;
+ BOOL wasLocked = NO;
BOOL result = YES;
BOOL haveChange = NO;
@@ -1825,6 +1826,7 @@
NSEnumerator *enumerator;
NSString *domainName;
+ isLocked = YES;
haveChange = [self _readDefaults];
if (YES == haveChange)
{
@@ -1867,8 +1869,9 @@
{
updateCache(self);
}
- if (NO == wasLocked)
+ if (YES == isLocked && NO == wasLocked)
{
+ isLocked = NO;
[self _unlockDefaultsFile];
}
}
@@ -1878,6 +1881,11 @@
{
[_lastSync release];
_lastSync = saved;
+ if (YES == isLocked && NO == wasLocked)
+ {
+ isLocked = NO;
+ [self _unlockDefaultsFile];
+ }
[_lock unlock];
[localException raise];
}
_______________________________________________
Gnustep-cvs mailing list
[email protected]
https://mail.gna.org/listinfo/gnustep-cvs