title: Background performFetchWithCompletionHandler using Blocks causes crash
body: <p>I have an app that successfully fetches and displays RSS Feeds that I'd like to add background fetch.  I receive:  Thread 1 EXC_BAD_ACCESS (code=1, Address=0x10) where indicated below.</p>
  
  <p>In app delegate:</p>
  
  <pre><code>- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
      //setup background fetch
  [application setMinimumBackgroundFetchInterval: UIApplicationBackgroundFetchIntervalMinimum];
  
  return YES;
  </code></pre>
  
  <p>}</p>
  
  <pre><code>        //background fetch new RSS Feeds
  -(void)application:(UIApplication *)application performFetchWithCompletionHandler:(void (^)(UIBackgroundFetchResult))completionHandler
  {
      NSLog(@"performFetchWithCompletionHandler");
      UIStoryboard *mainStoryboard = [UIStoryboard storyboardWithName:@"Main" bundle:nil];
      MasterViewController *navigationController = [mainStoryboard instantiateViewControllerWithIdentifier:@"MasterView"];
      MasterViewController *viewController = navigationController;
  
      [viewController fetchNewDataWithCompletionHandler:^(UIBackgroundFetchResult result) {
          completionHandler(result);
      }];
  }
  </code></pre>
  
  <p>In my main ViewController:</p>
  
  <pre><code>@property (nonatomic, copy) void (^completionHandler)(BOOL);
  - (void) fetchNewDataWithCompletionHandler: (void (^)(UIBackgroundFetchResult))completionHandler;
  - (void) startParsingWithCompletionHandler:(void (^)(BOOL))completionHandler;
  
  -(void)fetchNewDataWithCompletionHandler:(void (^)(UIBackgroundFetchResult))completionHandler{
  
  self.completionHandler = UIBackgroundFetchResultNewData; //completionHandler;
  [self startParsingWithCompletionHandler:^(BOOL success){
  
      if (success) {
          completionHandler(UIBackgroundFetchResultNewData);
          NSLog(@"completionHandler");
      }
      else{
          NSLog(@"error");
      }
  }];
  </code></pre>
  
  <p>}</p>
  
  <pre><code>    - (void) storyIsDone//called when parser completed one rss feed
  {
      numberOfCompletedStories ++;
      if (numberOfCompletedStories == self.rssFeedAddresses.count)
      {
              //if all the feeds are done cancel time-out timer
          [NSObject cancelPreviousPerformRequestsWithTarget: self selector: @selector(stopParsing) object: nil];
          [self.activityIndicator stopAnimating];
          storysAreLoading = NO;
          [self.refreshControl endRefreshing];
          [[NSNotificationCenter defaultCenter] addObserver: self selector: @selector(reloadRSSfeeds) name: @"ReloadFeeds" object: nil];
          canRefresh = YES;
          NSLog(@"call back");
          self.completionHandler (YES);//crash here:  Thread 1 EXC_BAD_ACCESS (code=1, Address=0x10)
      }//else not yet complete
  }
  </code></pre>
  
  <p>The output I receive is:</p>
  
  <p>performFetchWithCompletionHandler</p>
  
  <p>call back</p>