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.
Currently the incrementality is only used for top-level language of a mutable input. If a top-level token gets relexed its possible embedded section token list gets lost. Instead the embedded token list needs to be fixed by incremental algorithm.
I should have the fix ready during today hopefully before noon.
Fixed in trunk: Checking in src/org/netbeans/api/lexer/TokenChange.java; /cvs/lexer/src/org/netbeans/api/lexer/TokenChange.java,v <-- TokenChange.java new revision: 1.7; previous revision: 1.6 done Checking in src/org/netbeans/api/lexer/TokenHierarchyEvent.java; /cvs/lexer/src/org/netbeans/api/lexer/TokenHierarchyEvent.java,v <-- TokenHierarchyEvent.java new revision: 1.7; previous revision: 1.6 done Checking in src/org/netbeans/lib/lexer/inc/TokenListUpdater.java; /cvs/lexer/src/org/netbeans/lib/lexer/inc/TokenListUpdater.java,v <-- TokenListUpdater.java new revision: 1.7; previous revision: 1.6 done Checking in src/org/netbeans/lib/lexer/inc/TokenListChange.java; /cvs/lexer/src/org/netbeans/lib/lexer/inc/TokenListChange.java,v <-- TokenListChange.java new revision: 1.5; previous revision: 1.4 done Checking in src/org/netbeans/lib/lexer/inc/IncTokenList.java; /cvs/lexer/src/org/netbeans/lib/lexer/inc/IncTokenList.java,v <-- IncTokenList.java new revision: 1.7; previous revision: 1.6 done Checking in src/org/netbeans/lib/lexer/inc/TokenChangeInfo.java; /cvs/lexer/src/org/netbeans/lib/lexer/inc/TokenChangeInfo.java,v <-- TokenChangeInfo.java new revision: 1.4; previous revision: 1.3 done Checking in src/org/netbeans/lib/lexer/inc/TokenHierarchyEventInfo.java; /cvs/lexer/src/org/netbeans/lib/lexer/inc/TokenHierarchyEventInfo.java,v <-- TokenHierarchyEventInfo.java new revision: 1.3; previous revision: 1.2 done Checking in api/apichanges.xml; /cvs/lexer/api/apichanges.xml,v <-- apichanges.xml new revision: 1.15; previous revision: 1.14 done Checking in nbproject/project.properties; /cvs/lexer/nbproject/project.properties,v <-- project.properties new revision: 1.9; previous revision: 1.8 done Checking in src/org/netbeans/lib/lexer/TokenHierarchyOperation.java; /cvs/lexer/src/org/netbeans/lib/lexer/TokenHierarchyOperation.java,v <-- TokenHierarchyOperation.java new revision: 1.8; previous revision: 1.7 done Checking in src/org/netbeans/lib/lexer/EmbeddingContainer.java; /cvs/lexer/src/org/netbeans/lib/lexer/EmbeddingContainer.java,v <-- EmbeddingContainer.java new revision: 1.5; previous revision: 1.4 done Checking in src/org/netbeans/lib/lexer/EmbeddedTokenList.java; /cvs/lexer/src/org/netbeans/lib/lexer/EmbeddedTokenList.java,v <-- EmbeddedTokenList.java new revision: 1.4; previous revision: 1.3 done Checking in test/unit/src/org/netbeans/lib/lexer/test/LexerTestUtilities.java; /cvs/lexer/test/unit/src/org/netbeans/lib/lexer/test/LexerTestUtilities.java,v <-- LexerTestUtilities.java new revision: 1.10; previous revision: 1.9 done RCS file: /cvs/lexer/test/unit/src/org/netbeans/lib/lexer/inc/EmbeddingUpdateTest.java,v done Checking in test/unit/src/org/netbeans/lib/lexer/inc/EmbeddingUpdateTest.java; /cvs/lexer/test/unit/src/org/netbeans/lib/lexer/inc/EmbeddingUpdateTest.java,v <-- EmbeddingUpdateTest.java initial revision: 1.1
I still can reproduce this bug, it not occur always, it seems that it depends on content of html file. I attached a html file to reproduce this bug, if you remove <form> tag with content from attached file the bug will not occur anymore. I also increase priority as it is very annoying bug.
Created attachment 40323 [details] html file
There have been some problems reported as issue #99229 and issue #99946 that seem to be caused by incremental lexing of embedded tokens.
There was an error in the token list updater that caused more than one token to be relexed which prevented optimized updating of the embedded sections. It is now fixed. The token list modifications can now be logged by -J-Dorg.netbeans.lib.lexer.TokenHierarchyOperation.level=FINE including embedded sections changes (property mentioned in arch doc as well). Checking in src/org/netbeans/lib/lexer/inc/TokenListUpdater.java; /cvs/lexer/src/org/netbeans/lib/lexer/inc/TokenListUpdater.java,v <-- TokenListUpdater.java new revision: 1.9; previous revision: 1.8 done Checking in src/org/netbeans/lib/lexer/inc/TokenHierarchyEventInfo.java; /cvs/lexer/src/org/netbeans/lib/lexer/inc/TokenHierarchyEventInfo.java,v <-- TokenHierarchyEventInfo.java new revision: 1.4; previous revision: 1.3 done Checking in src/org/netbeans/lib/lexer/inc/TokenListChange.java; /cvs/lexer/src/org/netbeans/lib/lexer/inc/TokenListChange.java,v <-- TokenListChange.java new revision: 1.6; previous revision: 1.5 done Checking in src/org/netbeans/lib/lexer/token/AbstractToken.java; /cvs/lexer/src/org/netbeans/lib/lexer/token/AbstractToken.java,v <-- AbstractToken.java new revision: 1.6; previous revision: 1.5 done Checking in arch.xml; /cvs/lexer/arch.xml,v <-- arch.xml new revision: 1.10; previous revision: 1.9 done Checking in src/org/netbeans/lib/lexer/LexerUtilsConstants.java; /cvs/lexer/src/org/netbeans/lib/lexer/LexerUtilsConstants.java,v <-- LexerUtilsConstants.java new revision: 1.9; previous revision: 1.8 done Checking in src/org/netbeans/lib/lexer/EmbeddingContainer.java; /cvs/lexer/src/org/netbeans/lib/lexer/EmbeddingContainer.java,v <-- EmbeddingContainer.java new revision: 1.6; previous revision: 1.5 done Checking in src/org/netbeans/lib/lexer/TokenHierarchyOperation.java; /cvs/lexer/src/org/netbeans/lib/lexer/TokenHierarchyOperation.java,v <-- TokenHierarchyOperation.java new revision: 1.9; previous revision: 1.8 done Checking in src/org/netbeans/lib/lexer/EmbeddedTokenList.java; /cvs/lexer/src/org/netbeans/lib/lexer/EmbeddedTokenList.java,v <-- EmbeddedTokenList.java new revision: 1.5; previous revision: 1.4