Opened on 03/15/2014 at 08:18:09 PM

Closed on 03/18/2014 at 07:11:34 AM

Last modified on 04/13/2014 at 06:27:04 PM

#152 closed defect (fixed)

patterns.ini contents are being processed multiple times

Reported by: trev Assignee: trev
Priority: P1 Milestone: Adblock-Plus-2.6-for-Firefox
Module: Adblock-Plus-for-Firefox Keywords:
Cc: Blocked By:
Blocking: #117 Platform:
Ready: no Confidential: no
Tester: Verified working: no
Review URL(s):



Adblock Plus

Observed behaviour

Under some users report patterns.ini content being processed multiple times causing duplicate subscriptions and bogus filters.


This is a regression from #117. It seems to me that we considered reentrance in our code properly, it is unlikely to be the cause of the issue. However, XMLHttpRequest itself might not be reentrant - so if a new progress event fires before the previous one was handled it gets the same text once again. If that suspicion is confirmed the solution would be calling Utils.runAsync() in order to handle the data without blocking XMLHttpRequest.

Attachments (0)

Change History (6)

comment:1 Changed on 03/15/2014 at 08:56:35 PM by trev

I could reproduce this issue by adding more filter subscriptions (ChinaList in particular, that increased patterns.ini size significantly).

Last edited on 03/15/2014 at 08:58:31 PM by trev

comment:2 Changed on 03/16/2014 at 09:30:44 PM by trev

  • Owner set to trev
  • Status changed from new to assigned

comment:3 Changed on 03/16/2014 at 09:31:01 PM by trev

  • Status changed from assigned to reviewing

comment:4 Changed on 03/18/2014 at 07:11:34 AM by trev

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

comment:5 Changed on 03/18/2014 at 05:24:39 PM by trev

  • in_progress set to 0
  • Ready unset
  • Review URL(s) modified (diff)

comment:6 Changed on 04/13/2014 at 06:27:04 PM by trev

  • Milestone set to Adblock-Plus-for-Firefox-next

Add Comment

Modify Ticket

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