title: Swift: unwrapped optionals in closure in AFNetworking call
body: <p>When I call certain methods that contain GET requests using the AFHTTPRequestOperation Manager, it sometimes improperly calls back to another succeed block/closure from another GET request using the Operation Manager.</p>
  
  <p>This is the 3rd line in the error log below:</p>
  
  <pre><code>partial apply forwarder for reabstraction thunk helper from @callee_owned (@in (Swift.ImplicitlyUnwrappedOptional&lt;ObjectiveC.AFHTTPRequestOperation&gt;,  
  Swift.ImplicitlyUnwrappedOptional&lt;Swift.AnyObject&gt;)) -&gt; (@out ()) to @callee_owned (@owned Swift.ImplicitlyUnwrappedOptional&lt;ObjectiveC.AFHTTPRequestOperation&gt;,  
  @owned Swift.ImplicitlyUnwrappedOptional&lt;Swift.AnyObject&gt;) -&gt; (@unowned ()) (AppDelegate.swift:615)
  </code></pre>
  
  <p>And the 2nd line:</p>
  
  <pre><code>reabstraction thunk helper from @callee_owned (@owned Swift.ImplicitlyUnwrappedOptional&lt;ObjectiveC.AFHTTPRequestOperation&gt;,  
  @owned Swift.ImplicitlyUnwrappedOptional&lt;Swift.AnyObject&gt;) -&gt; (@unowned ()) to @callee_owned (@in (Swift.ImplicitlyUnwrappedOptional&lt;ObjectiveC.AFHTTPRequestOperation&gt;,  
  Swift.ImplicitlyUnwrappedOptional&lt;Swift.AnyObject&gt;)) -&gt; (@out ()) with unmangled suffix "_constprop0" (GroupsDataSource.swift:365)
  </code></pre>
  
  <p>Here is the error log I get.</p>
  
  <pre><code>Crashed: com.apple.main-thread
  EXC_BREAKPOINT UNKNOWN at 0x0000000100147e48
  
  Thread : Crashed: com.apple.main-thread
  0  Kickit                         0x0000000100147e48 Kickit.GroupsDataSource.(logoutForce (Kickit.GroupsDataSource) -&gt; () -&gt; ()).(closure #1) (GroupsDataSource.swift:809)
  1  Kickit                         0x00000001001474dc Kickit.GroupsDataSource.(logoutForce (Kickit.GroupsDataSource) -&gt; () -&gt; ()).(closure #1) (GroupsDataSource.swift:823)
  2  Kickit                         0x0000000100143074 reabstraction thunk helper from @callee_owned (@owned Swift.ImplicitlyUnwrappedOptional&lt;ObjectiveC.AFHTTPRequestOperation&gt;, @owned Swift.ImplicitlyUnwrappedOptional&lt;Swift.AnyObject&gt;) -&gt; (@unowned ()) to @callee_owned (@in (Swift.ImplicitlyUnwrappedOptional&lt;ObjectiveC.AFHTTPRequestOperation&gt;, Swift.ImplicitlyUnwrappedOptional&lt;Swift.AnyObject&gt;)) -&gt; (@out ()) with unmangled suffix "_constprop0" (GroupsDataSource.swift:365)
  3  Kickit                         0x0000000100193934 partial apply forwarder for reabstraction thunk helper from @callee_owned (@in (Swift.ImplicitlyUnwrappedOptional&lt;ObjectiveC.AFHTTPRequestOperation&gt;, Swift.ImplicitlyUnwrappedOptional&lt;Swift.AnyObject&gt;)) -&gt; (@out ()) to @callee_owned (@owned Swift.ImplicitlyUnwrappedOptional&lt;ObjectiveC.AFHTTPRequestOperation&gt;, @owned Swift.ImplicitlyUnwrappedOptional&lt;Swift.AnyObject&gt;) -&gt; (@unowned ()) (AppDelegate.swift:615)
  4  libdispatch.dylib              0x00000001970253ac _dispatch_call_block_and_release + 24
  5  libdispatch.dylib              0x000000019702536c _dispatch_client_callout + 16
  6  libdispatch.dylib              0x0000000197029980 _dispatch_main_queue_callback_4CF + 932
  7  CoreFoundation                 0x0000000186241fa4 __CFRUNLOOP_IS_SERVICING_THE_MAIN_DISPATCH_QUEUE__ + 12
  8  CoreFoundation                 0x000000018624004c __CFRunLoopRun + 1492
  9  CoreFoundation                 0x000000018616d0a4 CFRunLoopRunSpecific + 396
  10 GraphicsServices               0x000000018f30f5a4 GSEventRunModal + 168
  11 UIKit                          0x000000018aaa23c0 UIApplicationMain + 1488
  12 Kickit                         0x0000000100193ca4 main (AppDelegate.swift:15)
  13 libdyld.dylib                  0x000000019704ea08 start + 4
  </code></pre>
  
  <p>The success block here is AppDelegate: 615. GroupsDataSource: 365 and GroupsDataSource: 809 are similarly structured.</p>
  
  <pre><code>let manager = AFHTTPRequestOperationManager()
  
  var user_id : Int = NSUserDefaults.standardUserDefaults().objectForKey("user_id") as Int
  
  if (justSeenEventIDs.count &gt; 0){
      manager.GET(serverURL+"users/seen_events.json",
          parameters: ["user_id" : userID()!, "event_ids" : justSeenEventIDs],
          success: { (operation: AFHTTPRequestOperation!,responseObject: AnyObject!) -&gt; Void in
  
              println("JSON: " + responseObject.description)
              if (responseObject.isKindOfClass(NSDictionary)){
  
  
              }
  
  
          },
          failure: { (operation: AFHTTPRequestOperation!,error: NSError!) -&gt; Void in
              println("Error: " + error.localizedDescription + " code: " + "\(error.code)")
          })
      }
  }
  </code></pre>