This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.

Bug 219276

Summary: 3rd party Chrome extensions modifies DOM and breaks DOM breakpoints
Product: javascript Reporter: Vladimir Riha <vriha>
Component: DebuggerAssignee: Martin Entlicher <mentlicher>
Status: NEW ---    
Severity: normal CC: dkonecny, vriha
Priority: P4    
Version: 7.3   
Hardware: PC   
OS: Linux   
Issue Type: DEFECT Exception Reporter:

Description Vladimir Riha 2012-10-01 14:43:43 UTC
I have installed extension called Flash Block (see [1]). This extension seems to modify DOM in a way that it inserts some <style> element between HEAD and BODY thus all DOM breakpoints references are wrong, path like

html[0]/body[1] 

is changed to

html[0]/body[2] so all breakpoints are set to "nonexisting" body element. I have no idea if this is anyway fixable as there could be other extensions that modifies DOM in other ways :/


If a brief look at [2] was correct, NetBeans plugin could have management permission and thus disable all other extensions. The problem is that if it crashes, the extensions would stay disabled. 




[1] https://chrome.google.com/webstore/detail/flashblock/gofhjkjmkpinhpoiabjplobcaignabnl
[2] http://developer.chrome.com/extensions/management.html
Comment 1 David Konecny 2012-10-29 01:45:48 UTC
Why body[2] if only some style was added?
Comment 2 Vladimir Riha 2012-10-29 06:57:10 UTC
The extra <style> is injected outside <head> and before <body>. Which is probably not by specification, but it works. But the problem is more general, this is just one example
Comment 3 Martin Entlicher 2013-01-08 10:20:07 UTC
This problem was mostly eliminated by using id attribute to locate the proper DOM element.
Comment 4 Vladimir Riha 2013-05-09 09:00:28 UTC
This is probably "fixed" now by having Browser DOM again. Since user cannot create DOM breakpoints via old Navigator, this could happen only if he/she creates DOM breakpoint "manually" which is IMO less common use case