title: NSIndexPath crash on iOS5
body: <p>My App worked fine up until iOS5.</p>
  
  <p>I have a grouped tableview with 2 sections. Each section has 1 selection, that is displayed with a UITableViewCellAccessoryCheckmark. </p>
  
  <p>My App crashed in iOS5 when I try to determine <code>if([lastIndexPath1 isEqual:indexPath])</code></p>
  
  <p>UPDATED: Entire relevant code below:</p>
  
  <p>lastIndexPath1 and lastIndexPath2 are both NSIndexPath objects that i have declared in the header. Number 1 keeps track of the last indexPath in section 0 and number 2 keeps track of section 1.</p>
  
  <pre><code>- (void)viewDidLoad
  {
  
  
  
   [super viewDidLoad];
      self.view.backgroundColor = [UIColor whiteColor];  
  
  //Initialize the array.
  listOfItems = [[NSMutableArray alloc] init];
  
  NSArray *fontName = [NSArray arrayWithObjects:@"Baskerville", @"Palatino", @"Times New Roman", @"Verdana", nil];
  NSDictionary *fontNameInDict = [NSDictionary dictionaryWithObject:fontName forKey:@"FontOptions"];
  
  NSArray *fontSize = [NSArray arrayWithObjects:@"Der var engang", @"Der var engang", @"Der var engang", @"Der var engang", @"Der var engang", @"Der var engang", @"Der var engang", @"Der var engang", @"Der var engang", @"Der var engang", @"Der var engang", @"Der var engang", nil];
  NSDictionary *fontSizeInDict = [NSDictionary dictionaryWithObject:fontSize forKey:@"FontOptions"];
  
  [listOfItems addObject:fontNameInDict];
  [listOfItems addObject:fontSizeInDict];
  
  
  }
  
  - (void)viewWillAppear:(BOOL)animated {
      [super viewWillAppear:animated];
  
  
       NSUserDefaults *prefs = [NSUserDefaults standardUserDefaults];
  
      //SET SKRIFTTYPE 
      NSString *neverOpendFonts1 = [prefs objectForKey:@"neverOpendFonts1"];  
  
      if (![neverOpendFonts1 isEqualToString:@"1"]) {
  
  
  
              lastIndexPath1 = [NSIndexPath indexPathForRow:1 inSection:0];
  
              UITableViewCell *newCell = [myTableView cellForRowAtIndexPath:lastIndexPath1]; 
  
              newCell.accessoryType = UITableViewCellAccessoryCheckmark; 
  
              NSString *lastIndexPathString1 = [NSString stringWithFormat:@"1"];
  
              [prefs setObject:lastIndexPathString1 forKey:@"lastIndexPath1"];
  
              NSString *fontName = [NSString stringWithFormat:@"Palatino"];
  
              [prefs setObject:fontName forKey:@"fontName"];
  
              neverOpendFonts1 = [NSString stringWithFormat:@"1"];
  
              [prefs setObject:neverOpendFonts1 forKey:@"neverOpendFonts1"];
  
              [prefs synchronize];
  
              NSLog(@"Har aldrig været åbnet - font options"); 
  
  
      }
  
      else
      {
          NSInteger row = [[prefs objectForKey:@"lastIndexPath1"] intValue];
  
          NSLog(@"FONT ROW: %i", row);
  
          lastIndexPath1 = [NSIndexPath indexPathForRow:row inSection:0];
  
          UITableViewCell *newCell = [myTableView cellForRowAtIndexPath:lastIndexPath1]; 
  
          newCell.accessoryType = UITableViewCellAccessoryCheckmark; 
  
      }
   //SET SKRIFT STØRRELSE
  
  
      NSString *neverOpendFonts2 = [prefs objectForKey:@"neverOpendFonts2"];  
  
      if (![neverOpendFonts2 isEqualToString:@"1"]) {
  
          if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad)
          {
  
          lastIndexPath2 = [NSIndexPath indexPathForRow:2 inSection:1];
  
          UITableViewCell *newCell2 = [myTableView cellForRowAtIndexPath:lastIndexPath2]; 
  
          newCell2.accessoryType = UITableViewCellAccessoryCheckmark; 
  
          NSString *lastIndexPathString2 = [NSString stringWithFormat:@"2"];
  
          [prefs setObject:lastIndexPathString2 forKey:@"lastIndexPath2"];
  
          NSString *fontSize = [NSString stringWithFormat:@"24.0"];  
  
          [prefs setObject:fontSize forKey:@"fontSize"];
  
          neverOpendFonts2 = [NSString stringWithFormat:@"1"];
  
          [prefs setObject:neverOpendFonts2 forKey:@"neverOpendFonts2"];
  
          [prefs synchronize];
  
          }
  
          else {
  
              lastIndexPath2 = [NSIndexPath indexPathForRow:0 inSection:1];
  
              UITableViewCell *newCell3 = [myTableView cellForRowAtIndexPath:lastIndexPath2]; 
  
              newCell3.accessoryType = UITableViewCellAccessoryCheckmark; 
  
              NSString *lastIndexPathString2 = [NSString stringWithFormat:@"0"];
  
              [prefs setObject:lastIndexPathString2 forKey:@"lastIndexPath2"];
  
              NSString *fontSize = [NSString stringWithFormat:@"16.0"];  
  
              [prefs setObject:fontSize forKey:@"fontSize"];
  
              neverOpendFonts2 = [NSString stringWithFormat:@"1"];
  
              [prefs setObject:neverOpendFonts2 forKey:@"neverOpendFonts2"];
  
              [prefs synchronize];
          }
  
      }
  
      else
      {
  
          NSInteger row2 = [[prefs objectForKey:@"lastIndexPath2"] intValue];
  
          NSLog(@"FONTSIZE ROW: %i", row2);
  
         lastIndexPath2 = [NSIndexPath indexPathForRow:row2 inSection:1];
  
          UITableViewCell *newCell2 = [myTableView cellForRowAtIndexPath:lastIndexPath2]; 
  
          newCell2.accessoryType = UITableViewCellAccessoryCheckmark; 
  
  
      }
  
      [myTableView reloadData];
  
  }
  
  - (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
      //Number of rows it should expect should be based on the section
      NSDictionary *dictionary = [listOfItems objectAtIndex:section];
      NSArray *array = [dictionary objectForKey:@"FontOptions"];
      return [array count];
  }
  
  - (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {
  
      return [listOfItems count];
  }
  
  - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
  
  
      static NSString *CellIdentifier = @"Cell";
  
      UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
      if (cell == nil) {
         // cell = [[[UITableViewCell alloc] initWithFrame:CGRectZero reuseIdentifier:CellIdentifier] autorelease];
          cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier] autorelease];
      }
  
      // Set up the cell...
  
      //First get the dictionary object
      NSDictionary *dictionary = [listOfItems objectAtIndex:indexPath.section];
      NSArray *array = [dictionary objectForKey:@"FontOptions"];
      NSString *cellValue = [array objectAtIndex:indexPath.row];
      cell.textLabel.text = cellValue;
  
  
      if (indexPath.section == 0)
      {
  
          if([lastIndexPath1 isEqual:indexPath])
          {
              cell.accessoryType = UITableViewCellAccessoryCheckmark;
          }
          else 
          {
              cell.accessoryType = UITableViewCellAccessoryNone;
          }
  
          switch (indexPath.row) {
              case 0:
              {
               cell.textLabel.font = [UIFont fontWithName:@"Baskerville" size:24];   
              }
                  break;
              case 1:
              {
                cell.textLabel.font = [UIFont fontWithName:@"Palatino" size:24];    
              }
                  break;
              case 2:
              {
                  cell.textLabel.font = [UIFont fontWithName:@"Times New Roman" size:24];  
              }
                  break;
              case 3:
              {
                 cell.textLabel.font = [UIFont fontWithName:@"Verdana" size:24];   
              }
                  break;
          }
  
      }
      if (indexPath.section == 1) {
  
  
          if([lastIndexPath2 isEqual:indexPath])
          {
              cell.accessoryType = UITableViewCellAccessoryCheckmark;
          }
          else 
          {
              cell.accessoryType = UITableViewCellAccessoryNone;
          }
  
          switch (indexPath.row) {
              case 0:
              {
                  cell.textLabel.font = [UIFont fontWithName:@"Palatino" size:16];   
              }
                  break;
              case 1:
              {
                  cell.textLabel.font = [UIFont fontWithName:@"Palatino" size:20];    
              }
                  break;
              case 2:
              {
                  cell.textLabel.font = [UIFont fontWithName:@"Palatino" size:24];  
              }
                  break;
              case 3:
              {
                  cell.textLabel.font = [UIFont fontWithName:@"Palatino" size:28];   
              }
                  break;
              case 4:
              {
                  cell.textLabel.font = [UIFont fontWithName:@"Palatino" size:32];   
              }
                  break;
              case 5:
              {
                  cell.textLabel.font = [UIFont fontWithName:@"Palatino" size:36];   
              }
                  break;
              case 6:
              {
                  cell.textLabel.font = [UIFont fontWithName:@"Palatino" size:40];   
              }
                  break;
              case 7:
              {
                  cell.textLabel.font = [UIFont fontWithName:@"Palatino" size:44];   
              }
                  break;
              case 8:
              {
                  cell.textLabel.font = [UIFont fontWithName:@"Palatino" size:48];   
              }
                  break;
              case 9:
              {
                  cell.textLabel.font = [UIFont fontWithName:@"Palatino" size:52];   
              }
                  break;
              case 10:
              {
                  cell.textLabel.font = [UIFont fontWithName:@"Palatino" size:56];   
              }
                  break;
              case 11:
              {
                  cell.textLabel.font = [UIFont fontWithName:@"Palatino" size:60];   
              }
                  break;
          }
  
  
          }
  
  
          return cell;
  }
  </code></pre>