Failed requests when retried after coming from background causes crash (rare case)

Originator:r.amrutakrishna
Number:rdar://19649289 Date Originated:
Status:Open Resolved:
Product:iOS SDK Product Version:iOS 8.1.2
Classification:Crash Reproducible:Rare
 
Summary:
Failed requests when retried after coming from background causes crash in the DNS resolution of iOS framework code with Segmentation violation issue

StackTrace: 
[
        "#0  Ambulatory                          0X0043097B +[Logging signalHandler:]",
        "#1  Ambulatory                          0X0040DBF5 -[NSURL portByScheme]",
        "#2  libsystem_platform.dylib            0X3725687B _sigtramp()",
        "#3  libxpc.dylib                        0X37270013 xpc_string_get_string_ptr()",
        "#4  libsystem_network.dylib             0X3722D3CF <redacted>()",
        "#5  libsystem_network.dylib             0X3722D323 <redacted>()",
        "#6  libsystem_dnssd.dylib               0X371A989D <redacted>()",
        "#7  libsystem_dnssd.dylib               0X371A968F DNSServiceProcessResult()",
        "#8  libdispatch.dylib                   0X37107253 <redacted>()",
        "#9  libdispatch.dylib                   0X370F82ED <redacted>()",
        "#10 libdispatch.dylib                   0X370FE3EF <redacted>()",
        "#11 libdispatch.dylib                   0X370F8F85 <redacted>()",
        "#12 libdispatch.dylib                   0X370FFB9B <redacted>()",
        "#13 libdispatch.dylib                   0X37100CD7 <redacted>()",
        "#14 libsystem_pthread.dylib             0X37257E31 _pthread_wqthread()",
        "#15 libsystem_pthread.dylib             0X37257B84 start_wqthread()"
      ]

Steps to Reproduce:
Steps:
1. While service request is still being processed, app was sent to background. 
2. After several hours, user launched the app. Since the requests are still being processed prior to going background, those calls are being sent from the app and these calls received the timeout error. 
3. Then the App Crashed

Expected Results:
Even after the requests which are waiting in the background are processed when the app becomes active, segmentation violation shouldn't happen

Actual Results:
Requests being processed when the app goes to background when retried if the app becomes active causes segmentation violation in the DNSServiceProcessResult(as per stack trace)

Version:
iOS 8.1.2

Notes:


Configuration:
iPhone6,1

Comments


Please note: Reports posted here will not necessarily be seen by Apple. All problems should be submitted at bugreport.apple.com before they are posted here. Please only post information for Radars that you have filed yourself, and please do not include Apple confidential information in your posts. Thank you!