Opened on 01/18/2016 at 12:12:51 PM

Closed on 02/24/2016 at 07:52:59 AM

#3529 closed defect (fixed)

HA crash [ProtocolHandler startLoading]

Reported by: pavelz Assignee:
Priority: P1 Milestone: Adblock-Browser-for-iOS-1.3.0
Module: Adblock-Browser-for-iOS Keywords:
Cc: scheer Blocked By:
Blocking: Platform: Adblock Browser for iOS
Ready: no Confidential: no
Tester: Scheer Verified working: yes
Review URL(s):

Description (last modified by pavelz)

Environment

Adblock Browser 1.2.1
https://rink.hockeyapp.net/manage/apps/185237/app_versions/42/crash_reasons/99666833

Crash line
https://github.com/kitt-browser/kitt-core/blob/b4a11dca4f5df3d435d59cfffbcf863a6a438ba6/src/WebRequest/ProtocolHandler.m#L203

Remark for testers

The crash is a blind production report without known reproduction scenario. The fix was a best guess derived from the stacktrace. The crash is supposed to be happening under heavy load, possibly a combination of loading multiple heavy sites. Some requests then would start from a worker thread, not a designated thread, which made WebKit unhappy.

Attachments (3)

TestObject_Log_iPhone_6S_16GB_real_17-02-2016_09-14-52.txt (89.2 KB) - added by scheer on 02/17/2016 at 08:26:31 AM.
TestObject_Log_iPhone_5S_16GB_real_2_17-02-2016_09-24-21.txt (75.5 KB) - added by scheer on 02/17/2016 at 08:26:40 AM.
Raw Text Log.txt (56.5 KB) - added by scheer on 02/19/2016 at 07:14:35 AM.

Download all attachments as: .zip

Change History (16)

comment:1 Changed on 01/18/2016 at 12:19:16 PM by pavelz

comment:2 Changed on 01/19/2016 at 09:30:36 AM by pavelz

  • Description modified (diff)

comment:3 Changed on 01/19/2016 at 09:30:58 AM by pavelz

  • Summary changed from HA crash [JSInjectorReporter callJavaScriptCallbackWithProperties:] to HA crash [ProtocolHandler startLoading]

comment:4 Changed on 01/20/2016 at 01:25:37 PM by jand

  • Resolution set to fixed
  • Status changed from new to closed

comment:5 Changed on 02/10/2016 at 10:42:54 AM by pavelz

  • Description modified (diff)

Changed on 02/17/2016 at 08:26:31 AM by scheer

Changed on 02/17/2016 at 08:26:40 AM by scheer

comment:6 Changed on 02/17/2016 at 08:27:50 AM by scheer

  • Cc scheer added
  • Resolution fixed deleted
  • Status changed from closed to reopened
  • Tester changed from Unknown to Scheer

Done.

I attempted multiple site loading and refreshing whilst conducting this test. I was able to reproduce the crash by loading some content-heavy websites such as imgur.com, Reddit, MSN and yahoo and then also loading into nvidia.com. Upon refreshing some tabs and the trying to load a link (Country selection, news article) on the Nvidia page, I was presented with a crash. I reproduced this multiple times on the following devices (Attached are the logs):

ABP 1.3.0-qa (814)
iPhone 6 16GB - iOS 9.2
iPhone 5S 16GB - iOS 8.3

comment:7 Changed on 02/17/2016 at 09:54:30 AM by pavelz

@Scheer thanks for the report. Unfortunately we don't see the crashes in our system. The first one was not sent "because the limit of 25 for 109_AdblockBrowser logs has been reached" - which you probably figured out and cleared for the next, there the limit is reported fine. But we didn't get the next either. Have you started the app once more and allowed crash report submission?

comment:8 Changed on 02/17/2016 at 10:37:44 AM by scheer

@pavelz - Yes, on all but one occasion I allowed the app to send the crash report. The one that did not get through was due to Test object becoming unresponsive. Let me know if there is more information you would like.

comment:9 Changed on 02/19/2016 at 07:14:20 AM by scheer

After getting the permissions, I allowed 'always' on the crash report and followed the report through to the following link in Hockey App - https://rink.hockeyapp.net/manage/apps/185237/app_versions/42/crash_reasons/109391600

I have also attached the raw data file.

ABB 1.3.0-qa (814)
iPhone 5C 16 GB - iOS 9.2.1

Changed on 02/19/2016 at 07:14:35 AM by scheer

comment:10 Changed on 02/19/2016 at 07:30:47 AM by pavelz

@scheer i confirm the HA crash report being the same event as the attached raw text log. It also is a fresh event. However, both records claim that the device was iPad Air iOS 8.1.4 and HA adds that the app version was 1.2.1 (739). Do you have an idea how this strange difference from your testing environment described above could have happened? I have nothing against iPad Air, but testing version 1.2.1 makes no sense :) Furthermore the latest 1.3.0 build still does not work on iOS 8 due to #3655 so you could not test it anyway.

comment:11 Changed on 02/19/2016 at 08:18:21 AM by scheer

@pavelz - As discussed, the log was from another version, that dropped into the Crash dashboard on HA at the same time (a little before) and hence was the incorrect one. As we said, I will try this on a few more devices and then report back on the issue to see if I am truly able to reproduce it.

comment:12 Changed on 02/24/2016 at 07:52:45 AM by scheer

  • Verified working set
  • I was no longer able to reproduce this issue on a real device.

ABB 1.3.0-qa (824)
iPhone 6 Plus - iOS 9.2.1

comment:13 Changed on 02/24/2016 at 07:52:59 AM by scheer

  • Resolution set to fixed
  • Status changed from reopened to closed

Add Comment

Modify Ticket

Change Properties
Action
as closed .
The resolution will be deleted. Next status will be 'reopened'.
to The owner will be changed from (none).
 
Note: See TracTickets for help on using tickets.