Christian Lenz created NETBEANS-2430: ----------------------------------------
Summary: IllegalStateException inside a file created using a textmate lexer Key: NETBEANS-2430 URL: https://issues.apache.org/jira/browse/NETBEANS-2430 Project: NetBeans Issue Type: Bug Components: editor - Lexer, editor - Painting & Printing, editor - Parsing & Indexing Affects Versions: 11.0 Environment: Product Version: Apache NetBeans IDE 11.0 (Build incubator-netbeans-release-404-on-20190319) Updates: Updates available to version NetBeans 8.2 Patch 2 Java: 11.0.2; Java HotSpot(TM) 64-Bit Server VM 11.0.2+9-LTS Runtime: Java(TM) SE Runtime Environment 11.0.2+9-LTS System: Windows 10 version 10.0 running on amd64; Cp1252; de_DE (nb) User directory: C:\Users\user\AppData\Roaming\NetBeans\11.0 Cache directory: C:\Users\user\AppData\Local\NetBeans\Cache\11.0 Reporter: Christian Lenz Assignee: Jan Lahoda Attachments: Example.cs I created a plugin where I added some languages via the textmate lexer to NetBeans. When I open one file of it (file attached) and I want to edit the file like adding new line, I got an illegalStateException: ``` java.lang.IllegalStateException: Invalid resume state! at org.netbeans.modules.textmate.lexer.TextmateLexer.<init>(TextmateLexer.java:49) at org.netbeans.modules.textmate.lexer.TextmateTokenId$LanguageHierarchyImpl.createLexer(TextmateTokenId.java:110) at org.netbeans.spi.lexer.LanguageHierarchy$Accessor.createLexer(LanguageHierarchy.java:353) at org.netbeans.lib.lexer.LexerInputOperation.<init>(LexerInputOperation.java:114) at org.netbeans.lib.lexer.TextLexerInputOperation.<init>(TextLexerInputOperation.java:51) at org.netbeans.lib.lexer.inc.IncTokenList.createLexerInputOperation(IncTokenList.java:276) at org.netbeans.lib.lexer.inc.IncTokenList.replaceTokens(IncTokenList.java:354) at org.netbeans.lib.lexer.inc.TokenListUpdater.updateRegular(TokenListUpdater.java:258) at org.netbeans.lib.lexer.inc.TokenHierarchyUpdate$UpdateItem.update(TokenHierarchyUpdate.java:325) at org.netbeans.lib.lexer.inc.TokenHierarchyUpdate.processLevelInfos(TokenHierarchyUpdate.java:200) at org.netbeans.lib.lexer.inc.TokenHierarchyUpdate.updateImpl(TokenHierarchyUpdate.java:171) at org.netbeans.lib.lexer.inc.TokenHierarchyUpdate.update(TokenHierarchyUpdate.java:109) at org.netbeans.lib.lexer.TokenHierarchyOperation.textModified(TokenHierarchyOperation.java:585) at org.netbeans.spi.lexer.TokenHierarchyControl.textModified(TokenHierarchyControl.java:71) at org.netbeans.lib.lexer.inc.DocumentInput.textModified(DocumentInput.java:128) at org.netbeans.lib.lexer.inc.DocumentInput.insertUpdate(DocumentInput.java:117) at org.netbeans.lib.editor.util.swing.PriorityDocumentListenerList.insertUpdate(PriorityDocumentListenerList.java:60) at java.desktop/javax.swing.text.AbstractDocument.fireInsertUpdate(AbstractDocument.java:203) at org.netbeans.editor.BaseDocument.fireInsertUpdate(BaseDocument.java:1647) at org.netbeans.editor.BaseDocument.handleInsertString(BaseDocument.java:822) at org.netbeans.editor.BaseDocument$FilterBypassImpl.insertString(BaseDocument.java:2643) at java.desktop/javax.swing.text.DocumentFilter.insertString(DocumentFilter.java:100) at org.openide.text.CloneableEditorSupport$DocFilter.insertString(CloneableEditorSupport.java:2344) at org.netbeans.editor.BaseDocument.insertString(BaseDocument.java:741) at org.netbeans.editor.BaseKit$InsertBreakAction.performLineBreakInsertion(BaseKit.java:1586) at org.netbeans.editor.BaseKit$InsertBreakAction.access$400(BaseKit.java:1415) at org.netbeans.editor.BaseKit$InsertBreakAction$2.run(BaseKit.java:1505) at org.netbeans.editor.GuardedDocument.runAtomicAsUser(GuardedDocument.java:333) at org.netbeans.editor.BaseKit$InsertBreakAction.actionPerformed(BaseKit.java:1496) at org.netbeans.editor.BaseAction.actionPerformed(BaseAction.java:322) at java.desktop/javax.swing.SwingUtilities.notifyAction(SwingUtilities.java:1810) at java.desktop/javax.swing.JComponent.processKeyBinding(JComponent.java:2900) at java.desktop/javax.swing.JComponent.processKeyBindings(JComponent.java:2948) at java.desktop/javax.swing.JComponent.processKeyEvent(JComponent.java:2862) at java.desktop/java.awt.Component.processEvent(Component.java:6409) at java.desktop/java.awt.Container.processEvent(Container.java:2263) at java.desktop/java.awt.Component.dispatchEventImpl(Component.java:5008) at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2321) at java.desktop/java.awt.Component.dispatchEvent(Component.java:4840) at java.desktop/java.awt.KeyboardFocusManager.redispatchEvent(KeyboardFocusManager.java:1950) at java.desktop/java.awt.DefaultKeyboardFocusManager.dispatchKeyEvent(DefaultKeyboardFocusManager.java:871) at java.desktop/java.awt.DefaultKeyboardFocusManager.preDispatchKeyEvent(DefaultKeyboardFocusManager.java:1140) at java.desktop/java.awt.DefaultKeyboardFocusManager.typeAheadAssertions(DefaultKeyboardFocusManager.java:1010) at java.desktop/java.awt.DefaultKeyboardFocusManager.dispatchEvent(DefaultKeyboardFocusManager.java:836) at java.desktop/java.awt.Component.dispatchEventImpl(Component.java:4889) at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2321) at java.desktop/java.awt.Window.dispatchEventImpl(Window.java:2772) at java.desktop/java.awt.Component.dispatchEvent(Component.java:4840) at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:772) at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:721) at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:715) at java.base/java.security.AccessController.doPrivileged(Native Method) at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85) at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:95) at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:745) at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:743) at java.base/java.security.AccessController.doPrivileged(Native Method) at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85) at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:742) at org.netbeans.core.TimableEventQueue.dispatchEvent(TimableEventQueue.java:136) [catch] at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203) at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124) at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113) at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109) at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101) at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90) ``` Steps to reproduce: * Download and install this plugin: https://github.com/Chris2011/netbeans-textmate-test/releases/tag/1.0 * Restart IDE (Otherwise syntax highlighting is not added) * Open my attached file * Go to line 34 * Set the cursor to the end of the line * Hit enter * Nothing happens * Notification shows that an exception was thrown. -- This message was sent by Atlassian JIRA (v7.6.3#76005) --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@netbeans.apache.org For additional commands, e-mail: commits-h...@netbeans.apache.org For further information about the NetBeans mailing lists, visit: https://cwiki.apache.org/confluence/display/NETBEANS/Mailing+lists