]> git.saurik.com Git - cydia.git/commitdiff
Add insane workaround for source range bug.
authorJay Freeman (saurik) <saurik@saurik.com>
Fri, 25 Mar 2011 15:35:51 +0000 (08:35 -0700)
committerJay Freeman (saurik) <saurik@saurik.com>
Fri, 25 Mar 2011 15:35:51 +0000 (08:35 -0700)
MobileCydia.mm

index 48aaef996aad576e108e040ab564bce1bdf0a6e7..5e5cf65186160b51be263e49eb000ab05a56a14d 100644 (file)
@@ -8601,7 +8601,8 @@ static void HomeControllerReachabilityCallback(SCNetworkReachabilityRef reachabi
     if ([database_ era] != era_)
         return nil;
 
-    return [sources_ objectAtIndex:[indexPath row]];
+    NSUInteger index([indexPath row]);
+    return index < [sources_ count] ? [sources_ objectAtIndex:index] : nil;
 } }
 
 - (UITableViewCell *) tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
@@ -8617,6 +8618,7 @@ static void HomeControllerReachabilityCallback(SCNetworkReachabilityRef reachabi
 
 - (void) tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
     Source *source = [self sourceAtIndexPath:indexPath];
+    if (source == nil) return;
 
     SourceController *controller = [[[SourceController alloc]
         initWithDatabase:database_
@@ -8636,6 +8638,8 @@ static void HomeControllerReachabilityCallback(SCNetworkReachabilityRef reachabi
 - (void) tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath {
     if (editingStyle ==  UITableViewCellEditingStyleDelete) {
         Source *source = [self sourceAtIndexPath:indexPath];
+        if (source == nil) return;
+
         [Sources_ removeObjectForKey:[source key]];
         [delegate_ _saveConfig];
         [delegate_ reloadDataWithInvocation:nil];