2015-09-10 22 views
9

Tôi đang chạy vào một số tai nạn EXC_BAD_ACCESS thực sự kỳ lạ đó là hoàn toàn tái sản xuất với người cuối cùng 2 Xcode 7 Beta phiên bản (bao gồm cả GM từ đêm qua):Swift 2.0 Random EXC_BAD_ACCESS

Khi chạy ứng dụng của tôi, AFNetworking tai nạn với một thông báo EXC_BAD_ACCESS phù AFURLConnectionOperation.m 154. chính xác hơn, đây là stacktrace:

thread #1: tid = 0x23b173, 0x000000010b89beaf CoreFoundation`___forwarding___ + 767, queue = 'com.apple.main-thread', stop reason = EXC_BREAKPOINT (code=EXC_I386_BPT, subcode=0x0) 
    frame #0: 0x000000010b89beaf CoreFoundation`___forwarding___ + 767 
    frame #1: 0x000000010b89bb28 CoreFoundation`__forwarding_prep_0___ + 120 
    * frame #2: 0x0000000105a4507e MyApp`-[AFURLConnectionOperation .cxx_destruct](self=0x00007fc4d873aa20, _cmd=(null)) + 494 at AFURLConnectionOperation.m:154 
    frame #3: 0x000000010af637bb libobjc.A.dylib`object_cxxDestructFromClass(objc_object*, objc_class*) + 127 
    frame #4: 0x000000010af6e390 libobjc.A.dylib`objc_destructInstance + 93 
    frame #5: 0x000000010b94e7c6 CoreFoundation`-[NSObject(NSObject) __dealloc_zombie] + 150 
    frame #6: 0x00000001087ee9df Foundation`-[NSOperation dealloc] + 89 
    frame #7: 0x0000000105a3dca2 MyApp`-[AFURLConnectionOperation dealloc](self=0x00007fc4d873aa20, _cmd="dealloc") + 162 at AFURLConnectionOperation.m:216 
    frame #8: 0x000000010af78afe libobjc.A.dylib`objc_object::sidetable_release(bool) + 232 
    frame #9: 0x0000000105a31dd1 MyApp`__destroy_helper_block_((null)=0x00007fc4d8b27000) + 65 at AFHTTPRequestOperation.m:0 
    frame #10: 0x000000010d1226b1 libsystem_blocks.dylib`_Block_release + 128 
    frame #11: 0x000000010d0a549b libdispatch.dylib`_dispatch_client_callout + 8 
    frame #12: 0x000000010d08d34b libdispatch.dylib`_dispatch_main_queue_callback_4CF + 1738 
    frame #13: 0x000000010b8a63e9 CoreFoundation`__CFRUNLOOP_IS_SERVICING_THE_MAIN_DISPATCH_QUEUE__ + 9 
    frame #14: 0x000000010b867939 CoreFoundation`__CFRunLoopRun + 2073 
    frame #15: 0x000000010b866e98 CoreFoundation`CFRunLoopRunSpecific + 488 
    frame #16: 0x000000010dd2cad2 GraphicsServices`GSEventRunModal + 161 
    frame #17: 0x00000001095c9676 UIKit`UIApplicationMain + 171 
    frame #18: 0x0000000105767d3f MyApp`main(argc=7, argv=0x00007fff5a541620) + 111 at main.m:33 
    frame #19: 0x000000010d0da92d libdyld.dylib`start + 1 

tôi đặt kích hoạt Zombie Objects trong chương trình của tôi và đã nhận lỗi sau

*** -[NSMutableURLRequest release]: message sent to deallocated instance 0x7fc4d8acc460 

Có ai trong số các bạn có ý tưởng điều gì gây ra sự cố không? Sử dụng Xcode 6 hoạt động như một sự quyến rũ nhưng tôi thực sự muốn sử dụng các tính năng mới của Swift ...

+0

Có thể nhà phát triển AFNetworking vẫn đang làm việc để API tương thích với Swift 2.0. Bản thân câu hỏi là một lý do khiến tôi giảm thiểu việc sử dụng API của bên thứ ba. – Kampai

+1

Bạn đang [không cô đơn] (https://github.com/AFNetworking/AFNetworking/issues/2937) bạn của tôi. –

+0

Vâng đó là của tôi;) –

Trả lời

1

Để trả lời câu hỏi của riêng tôi và để đây ở đây cho bất kỳ ai có thể đang chạy vào cùng một vấn đề:

Dường như trình biên dịch Swift 2.0 không thích đóng cửa được chuyển thông số inout. Tôi đã có một đóng cửa tại chỗ mà có thể được sử dụng để tùy chỉnh thêm yêu cầu của tôi mà lấy một đối tượng của loại NSMutableURLRequest như là một tham số inout. Sau khi thay đổi kết thúc này để chỉ cần trả lại yêu cầu và xóa inout mọi thứ hoạt động như mong đợi một lần nữa ...

+0

u có thể cho tôi biết những gì thực sự u đã làm. tôi cũng phải đối mặt với cùng một vấn đề –

Các vấn đề liên quan