Opened on 09/20/2016 at 06:46:29 AM

Closed on 09/22/2016 at 06:46:38 AM

Last modified on 09/22/2016 at 01:35:38 PM

#4446 closed defect (fixed)

[HA crash] retain failure in request rule iteration

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

Description

Environment

Any iOS
Adblock Browser 1.5.0 Appstore release

How to reproduce

Unknown

Observed behaviour

Crash
https://rink.hockeyapp.net/manage/apps/310687/app_versions/26/crash_reasons/136207243
here
https://github.com/kitt-browser/kitt-core/blob/master/src/WebRequest/WebRequestEventDispatcher.m#L164

Expected behaviour

No crash

Attachments (0)

Change History (5)

comment:1 Changed on 09/20/2016 at 07:07:38 AM by pavelz

Crashes in execution of Cocoa function [NSArray filteredArrayUsingPredicate] while trying to work with array element through internal method [NSBlockPredicate evaluateWithObject]. Crashed is protocol handler worker thread. Most probable explanation is an array element being nil, which should not be possible unless the array is a subject of a race condition.

It is observed that functions addRequestRule and removeRequestRuleForCallbackId are NOT synchronized like the rest of functions accessing _requestRules array.

comment:2 Changed on 09/22/2016 at 06:44:59 AM by pavelz

comment:3 Changed on 09/22/2016 at 06:46:38 AM by pavelz

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

comment:4 Changed on 09/22/2016 at 01:34:05 PM by mario

  • Milestone set to Adblock-Browser-for-iOS-1.5.1

Added to Milestone 1.5.1

comment:5 Changed on 09/22/2016 at 01:35:38 PM by mario

  • Priority changed from Unknown to P2

Adjusted priority

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.