title: Warning: Attempt to present <UINavigationController while a presentation is in progress
body: <p>While trying to present the contact editor VC I get an error message of </p>
  
  <p><code>Warning: Attempt to present &lt;UINavigationController: 0x15fe273f0&gt; on &lt;UINavigationController: 0x15fe0e730&gt; while a presentation is in progress!</code></p>
  
  <p>I believe this is because my <code>UIImagePickerController</code> is still active.</p>
  
  <p>Here is my <code>didFinish</code> method </p>
  
  <pre><code>- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info {
  
      UIImage *image = info[UIImagePickerControllerOriginalImage];
  animated:YES];
      [picker dismissViewControllerAnimated:YES completion:NULL];
      [self scanWithImage:image];
  
  }
  </code></pre>
  
  <p>As you can see the second message should dismiss the VC but it does not, and it stays up until the end of the execution of the application.</p>
  
  <p><code>scanWithImage:</code> eventually calls <code>showNewPersonViewController</code> here is that method:</p>
  
  <pre><code>-(void)showNewPersonViewController
  {
      ABNewPersonViewController *picker = [[ABNewPersonViewController alloc] init];
      picker.displayedPerson = _person;
      picker.newPersonViewDelegate = self;
  
      UINavigationController *navigation = [[UINavigationController alloc] initWithRootViewController:picker];
      // Change status bar back to black due to white contact creation.
      [UIApplication sharedApplication].statusBarStyle = UIStatusBarStyleDefault;
  
      [self presentViewController:navigation animated:YES completion:nil];
  }
  </code></pre>
  
  <p>On the last line in that method I get the error message, then the app finishes its execution and returns to the main VC.</p>
  
  <p>How can I avoid this and properly display the contact creation VC?</p>