Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Browse files

Fixed a crash that could occur when an appcast failed to parse due to…

… a double-release.
  • Loading branch information...
commit cbaa635a893e95932ba62e0cb2af4df61bce7fd9 1 parent 0a4bc65
@andymatuschak andymatuschak authored
Showing with 4 additions and 4 deletions.
  1. +4 −4 SUAppcast.m
View
8 SUAppcast.m
@@ -40,10 +40,10 @@ - (void)feedDidFinishLoading:(RSS *)aFeed
BOOL success = YES;
while ((current = [enumerator nextObject]))
{
- SUAppcastItem *item = [[[SUAppcastItem alloc] initWithDictionary:current] autorelease];
+ SUAppcastItem *item = [[SUAppcastItem alloc] initWithDictionary:current];
if (item)
{
- [(NSMutableArray *)tempItems addObject:item];
+ [(NSMutableArray *)tempItems addObject:[item autorelease]];
}
else
{
@@ -51,6 +51,8 @@ - (void)feedDidFinishLoading:(RSS *)aFeed
break;
}
}
+ [feed release];
+ feed = nil;
if (success)
{
items = [tempItems copy]; // Make the items list immutable.
@@ -62,8 +64,6 @@ - (void)feedDidFinishLoading:(RSS *)aFeed
{
[self reportError:[NSError errorWithDomain:SUSparkleErrorDomain code:SUAppcastParseError userInfo:[NSDictionary dictionaryWithObjectsAndKeys:SULocalizedString(@"An error occurred while parsing the update feed.", nil), NSLocalizedDescriptionKey, nil]]];
}
- [feed release];
- feed = nil;
}
- (void)feed:(RSS *)aFeed didFailWithError:(NSError *)error
Please sign in to comment.
Something went wrong with that request. Please try again.