Opened on 08/10/2015 at 11:08:58 AM

Closed on 08/11/2015 at 01:58:23 PM

#2877 closed defect (fixed)

Element Hiding Helper causes tab to crash when selecting some elements

Reported by: trev Assignee: trev
Priority: P1 Milestone: Element-Hiding-Helper-1.3.3
Module: Extensions-for-Adblock-Plus Keywords: e10s
Cc: Blocked By:
Blocking: Platform: Unknown / Cross platform
Ready: yes Confidential: no
Tester: Unknown Verified working: no
Review URL(s):

https://codereview.adblockplus.org/29323439/

Description

Environment

Adblock Plus 2.6.10.3969, Element Hiding Helper 1.3.2.497, Firefox 42.0a1 (2015-08-09 nightly), Mac OS X 10.10.

How to reproduce

  1. Go to https://mail.ru/
  2. Click ABP icon and choose "Select an element to hide"
  3. Select one of the news links and press Enter

Observed behaviour

The tab crashes. Crash report shows the following stack trace:

  • mozalloc_abort(char const*)
  • Abort
  • NS_DebugBreak
  • mozilla::ipc::MessageChannel::OnChannelErrorFromLink()

That last stack frame points to http://hg.mozilla.org/mozilla-central/annotate/91de9c670800/ipc/glue/MessageChannel.cpp#l1762 indicating that there was some kind of IPC channel error.

This isn't a regression, old Firefox nightlies crash as well.

Expected behaviour

There should be no crash.

Attachments (0)

Change History (5)

comment:1 Changed on 08/10/2015 at 11:51:01 AM by trev

The problem seems to be the size of the data structure we create for these nodes.

comment:2 Changed on 08/10/2015 at 12:54:06 PM by trev

  • Keywords e10s added

comment:3 Changed on 08/10/2015 at 09:21:39 PM by trev

In fact, the data structure we create refers to the same nodes multiple times so the stringified size grows exponentially with the number of nodes involved. In this particular case JSON.stringify() returns ~250 MB of data. We shouldn't stringify the data structure at all but let the browser create a structured clone of it.

comment:4 Changed on 08/10/2015 at 09:23:07 PM by trev

  • Review URL(s) modified (diff)
  • Status changed from new to reviewing

comment:5 Changed on 08/11/2015 at 01:58:23 PM by trev

  • Milestone set to Element-Hiding-Helper-1.3.3
  • Resolution set to fixed
  • Status changed from reviewing 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 trev.
 
Note: See TracTickets for help on using tickets.