Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix: EtirorArea3: avoid npe when detecting carret position #1294

Open
wants to merge 4 commits into
base: master
Choose a base branch
from

Conversation

miurahr
Copy link
Member

@miurahr miurahr commented Mar 17, 2025

NPE is reported when using OmegaT 6.1 weekly when RTL languages.

Pull request type

Please mark github LABEL of the type of change your PR introduces:

  • Bug fix -> [bug]

Which ticket is resolved?

https://sourceforge.net/p/omegat/mailman/omegat-development/thread/bc__wDAb_8HhKI8874uzACXxlNkr1AsqREJeuM1f7MRE6sbjXIHjLerxgavXTTEOUFbSSBf3mn7Dxybdx9uqCx4Q-LWCvrd1xSvAlyN-M0c%3D%40northside.tokyo/#msg59161278

What does this PR change?

  • Check nullity of the return value of EditorArea3#getOmDocument
  • Improve javadoc
  • Improve error log

Other information

miurahr added 2 commits March 17, 2025 09:41
…anslation

Check nullity because EditorTextArea3#getOmDocument can return null.

Signed-off-by: Hiroshi Miura <[email protected]>
Replace printStackTrace with recording an error log.
And improve styles of javadoc blocks.

Signed-off-by: Hiroshi Miura <[email protected]>
@brandelune
Copy link
Contributor

brandelune commented Mar 17, 2025

I opened the project where the error was triggered yesterday. I hit "Next untranslated segment" and here is what came out:

another NPE in the different place at Document3 class: click to open detailed log ``` 10:49:31.667: Info: Clic sur l’entrée de menu « gotoNextUntranslatedMenuItem » (LOG_MENU_CLICK) 10:49:31.701: Erreur: Error execute method 10:49:31.702: Erreur: java.lang.reflect.InvocationTargetException 10:49:31.702: Erreur: at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 10:49:31.702: Erreur: at java.base/checks caret positions and it trips on "activeTranslationBeginM1" being null.jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 10:49:31.702: Erreur: at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 10:49:31.702: Erreur: at java.base/java.lang.reflect.Method.invoke(Method.java:566) 10:49:31.702: Erreur: at org.omegat.gui.main.BaseMainWindowMenu.invokeAction(BaseMainWindowMenu.java:718) 10:49:31.702: Erreur: at org.omegat.gui.main.BaseMainWindowMenu.actionPerformed(BaseMainWindowMenu.java:133) 10:49:31.702: Erreur: at java.desktop/javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1967) 10:49:31.702: Erreur: at java.desktop/javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2308) 10:49:31.702: Erreur: at java.desktop/javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:405) 10:49:31.702: Erreur: at java.desktop/javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:262) 10:49:31.702: Erreur: at java.desktop/javax.swing.AbstractButton.doClick(AbstractButton.java:369) 10:49:31.702: Erreur: at java.desktop/javax.swing.AbstractButton.doClick(AbstractButton.java:349) 10:49:31.702: Erreur: at java.desktop/javax.swing.plaf.basic.BasicMenuItemUI$Actions.actionPerformed(BasicMenuItemUI.java:975) 10:49:31.702: Erreur: at java.desktop/javax.swing.SwingUtilities.notifyAction(SwingUtilities.java:1810) 10:49:31.702: Erreur: at java.desktop/javax.swing.JComponent.processKeyBinding(JComponent.java:2900) 10:49:31.702: Erreur: at java.desktop/javax.swing.JMenuBar.processBindingForKeyStrokeRecursive(JMenuBar.java:699) 10:49:31.702: Erreur: at java.desktop/javax.swing.JMenuBar.processBindingForKeyStrokeRecursive(JMenuBar.java:706) 10:49:31.702: Erreur: at java.desktop/javax.swing.JMenuBar.processBindingForKeyStrokeRecursive(JMenuBar.java:706) 10:49:31.702: Erreur: at java.desktop/javax.swing.JMenuBar.processKeyBinding(JMenuBar.java:677) 10:49:31.702: Erreur: at java.desktop/javax.swing.KeyboardManager.fireBinding(KeyboardManager.java:311) 10:49:31.702: Erreur: at java.desktop/javax.swing.KeyboardManager.fireKeyboardAction(KeyboardManager.java:297) 10:49:31.702: Erreur: at java.desktop/javax.swing.JComponent.processKeyBindingsForAllComponents(JComponent.java:2993) 10:49:31.702: Erreur: at java.desktop/javax.swing.JComponent.processKeyBindings(JComponent.java:2985) 10:49:31.702: Erreur: at java.desktop/javax.swing.JComponent.processKeyEvent(JComponent.java:2862) 10:49:31.702: Erreur: at org.omegat.gui.editor.EditorTextArea3.processKeyEvent(EditorTextArea3.java:484) 10:49:31.702: Erreur: at java.desktop/java.awt.Component.processEvent(Component.java:6412) 10:49:31.702: Erreur: at java.desktop/java.awt.Container.processEvent(Container.java:2263) 10:49:31.702: Erreur: at java.desktop/java.awt.Component.dispatchEventImpl(Component.java:5011) 10:49:31.702: Erreur: at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2321) 10:49:31.702: Erreur: at java.desktop/java.awt.Component.dispatchEvent(Component.java:4843) 10:49:31.702: Erreur: at java.desktop/java.awt.KeyboardFocusManager.redispatchEvent(KeyboardFocusManager.java:1950) 10:49:31.702: Erreur: at java.desktop/java.awt.DefaultKeyboardFocusManager.dispatchKeyEvent(DefaultKeyboardFocusManager.java:870) 10:49:31.702: Erreur: at java.desktop/java.awt.DefaultKeyboardFocusManager.preDispatchKeyEvent(DefaultKeyboardFocusManager.java:1139) 10:49:31.702: Erreur: at java.desktop/java.awt.DefaultKeyboardFocusManager.typeAheadAssertions(DefaultKeyboardFocusManager.java:1009) 10:49:31.702: Erreur: at java.desktop/java.awt.DefaultKeyboardFocusManager.dispatchEvent(DefaultKeyboardFocusManager.java:835) 10:49:31.702: Erreur: at java.desktop/java.awt.Component.dispatchEventImpl(Component.java:4892) 10:49:31.702: Erreur: at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2321) 10:49:31.702: Erreur: at java.desktop/java.awt.Window.dispatchEventImpl(Window.java:2772) 10:49:31.702: Erreur: at java.desktop/java.awt.Component.dispatchEvent(Component.java:4843) 10:49:31.702: Erreur: at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:772) 10:49:31.702: Erreur: at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:721) 10:49:31.702: Erreur: at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:715) 10:49:31.702: Erreur: at java.base/java.security.AccessController.doPrivileged(Native Method) 10:49:31.702: Erreur: at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85) 10:49:31.702: Erreur: at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:95) 10:49:31.702: Erreur: at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:745) 10:49:31.702: Erreur: at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:743) 10:49:31.702: Erreur: at java.base/java.security.AccessController.doPrivileged(Native Method) 10:49:31.702: Erreur: at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85) 10:49:31.702: Erreur: at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:742) 10:49:31.702: Erreur: at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203) 10:49:31.702: Erreur: at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124) 10:49:31.702: Erreur: at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113) 10:49:31.702: Erreur: at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109) 10:49:31.702: Erreur: at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101) 10:49:31.702: Erreur: at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90) 10:49:31.702: Erreur: Caused by: java.lang.NullPointerException 10:49:31.702: Erreur: at org.omegat.gui.editor.Document3.getTranslationStart(Document3.java:126) 10:49:31.702: Erreur: at org.omegat.gui.editor.EditorTextArea3.isInActiveTranslation(EditorTextArea3.java:248) 10:49:31.702: Erreur: at org.omegat.gui.editor.EditorTextArea3.lambda$new$0(EditorTextArea3.java:181) 10:49:31.702: Erreur: at java.desktop/javax.swing.text.JTextComponent.fireCaretUpdate(JTextComponent.java:412) 10:49:31.702: Erreur: at java.desktop/javax.swing.text.JTextComponent$MutableCaretEvent.fire(JTextComponent.java:4489) 10:49:31.702: Erreur: at java.desktop/javax.swing.text.JTextComponent$MutableCaretEvent.stateChanged(JTextComponent.java:4511) 10:49:31.702: Erreur: at java.desktop/javax.swing.text.DefaultCaret.fireStateChanged(DefaultCaret.java:812) 10:49:31.702: Erreur: at java.desktop/javax.swing.text.DefaultCaret.changeCaretPosition(DefaultCaret.java:1283) 10:49:31.702: Erreur: at java.desktop/javax.swing.text.DefaultCaret.handleSetDot(DefaultCaret.java:1182) 10:49:31.702: Erreur: at java.desktop/javax.swing.text.DefaultCaret.setDot(DefaultCaret.java:1163) 10:49:31.702: Erreur: at java.desktop/javax.swing.text.DefaultCaret.setDot(DefaultCaret.java:1060) 10:49:31.702: Erreur: at java.desktop/javax.swing.text.DefaultCaret$Handler.propertyChange(DefaultCaret.java:1883) 10:49:31.702: Erreur: at java.desktop/java.beans.PropertyChangeSupport.fire(PropertyChangeSupport.java:341) 10:49:31.702: Erreur: at java.desktop/java.beans.PropertyChangeSupport.firePropertyChange(PropertyChangeSupport.java:333) 10:49:31.702: Erreur: at java.desktop/java.beans.PropertyChangeSupport.firePropertyChange(PropertyChangeSupport.java:266) 10:49:31.702: Erreur: at java.desktop/java.awt.Component.firePropertyChange(Component.java:8731) 10:49:31.702: Erreur: at java.desktop/javax.swing.text.JTextComponent.setDocument(JTextComponent.java:456) 10:49:31.702: Erreur: at org.omegat.gui.editor.EditorController.loadDocument(EditorController.java:714) 10:49:31.702: Erreur: at org.omegat.gui.editor.EditorController.iterateToEntry(EditorController.java:1311) 10:49:31.702: Erreur: at org.omegat.gui.editor.EditorController.nextTranslatedEntry(EditorController.java:1366) 10:49:31.702: Erreur: at org.omegat.gui.editor.EditorController.nextUntranslatedEntry(EditorController.java:1392) 10:49:31.702: Erreur: at org.omegat.gui.main.MainWindowMenuHandler.gotoNextUntranslatedMenuItemActionPerformed(MainWindowMenuHandler.java:560) 10:49:31.702: Erreur: ... 56 more 10:49:31.705: Erreur: Uncatched exception in thread [AWT-EventQueue-0] 10:49:31.705: Erreur: java.lang.IncompatibleClassChangeError: Error invoke method handler for main menu 10:49:31.705: Erreur: at org.omegat.gui.main.BaseMainWindowMenu.invokeAction(BaseMainWindowMenu.java:723) 10:49:31.705: Erreur: at org.omegat.gui.main.BaseMainWindowMenu.actionPerformed(BaseMainWindowMenu.java:133) 10:49:31.705: Erreur: at java.desktop/javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1967) 10:49:31.705: Erreur: at java.desktop/javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2308) 10:49:31.705: Erreur: at java.desktop/javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:405) 10:49:31.705: Erreur: at java.desktop/javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:262) 10:49:31.705: Erreur: at java.desktop/javax.swing.AbstractButton.doClick(AbstractButton.java:369) 10:49:31.705: Erreur: at java.desktop/javax.swing.AbstractButton.doClick(AbstractButton.java:349) 10:49:31.705: Erreur: at java.desktop/javax.swing.plaf.basic.BasicMenuItemUI$Actions.actionPerformed(BasicMenuItemUI.java:975) 10:49:31.705: Erreur: at java.desktop/javax.swing.SwingUtilities.notifyAction(SwingUtilities.java:1810) 10:49:31.705: Erreur: at java.desktop/javax.swing.JComponent.processKeyBinding(JComponent.java:2900) 10:49:31.705: Erreur: at java.desktop/javax.swing.JMenuBar.processBindingForKeyStrokeRecursive(JMenuBar.java:699) 10:49:31.705: Erreur: at java.desktop/javax.swing.JMenuBar.processBindingForKeyStrokeRecursive(JMenuBar.java:706) 10:49:31.705: Erreur: at java.desktop/javax.swing.JMenuBar.processBindingForKeyStrokeRecursive(JMenuBar.java:706) 10:49:31.705: Erreur: at java.desktop/javax.swing.JMenuBar.processKeyBinding(JMenuBar.java:677) 10:49:31.705: Erreur: at java.desktop/javax.swing.KeyboardManager.fireBinding(KeyboardManager.java:311) 10:49:31.705: Erreur: at java.desktop/javax.swing.KeyboardManager.fireKeyboardAction(KeyboardManager.java:297) 10:49:31.705: Erreur: at java.desktop/javax.swing.JComponent.processKeyBindingsForAllComponents(JComponent.java:2993) 10:49:31.705: Erreur: at java.desktop/javax.swing.JComponent.processKeyBindings(JComponent.java:2985) 10:49:31.705: Erreur: at java.desktop/javax.swing.JComponent.processKeyEvent(JComponent.java:2862) 10:49:31.705: Erreur: at org.omegat.gui.editor.EditorTextArea3.processKeyEvent(EditorTextArea3.java:484) 10:49:31.705: Erreur: at java.desktop/java.awt.Component.processEvent(Component.java:6412) 10:49:31.705: Erreur: at java.desktop/java.awt.Container.processEvent(Container.java:2263) 10:49:31.705: Erreur: at java.desktop/java.awt.Component.dispatchEventImpl(Component.java:5011) 10:49:31.705: Erreur: at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2321) 10:49:31.705: Erreur: at java.desktop/java.awt.Component.dispatchEvent(Component.java:4843) 10:49:31.705: Erreur: at java.desktop/java.awt.KeyboardFocusManager.redispatchEvent(KeyboardFocusManager.java:1950) 10:49:31.705: Erreur: at java.desktop/java.awt.DefaultKeyboardFocusManager.dispatchKeyEvent(DefaultKeyboardFocusManager.java:870) 10:49:31.705: Erreur: at java.desktop/java.awt.DefaultKeyboardFocusManager.preDispatchKeyEvent(DefaultKeyboardFocusManager.java:1139) 10:49:31.705: Erreur: at java.desktop/java.awt.DefaultKeyboardFocusManager.typeAheadAssertions(DefaultKeyboardFocusManager.java:1009) 10:49:31.705: Erreur: at java.desktop/java.awt.DefaultKeyboardFocusManager.dispatchEvent(DefaultKeyboardFocusManager.java:835) 10:49:31.705: Erreur: at java.desktop/java.awt.Component.dispatchEventImpl(Component.java:4892) 10:49:31.705: Erreur: at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2321) 10:49:31.705: Erreur: at java.desktop/java.awt.Window.dispatchEventImpl(Window.java:2772) 10:49:31.705: Erreur: at java.desktop/java.awt.Component.dispatchEvent(Component.java:4843) 10:49:31.705: Erreur: at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:772) 10:49:31.705: Erreur: at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:721) 10:49:31.705: Erreur: at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:715) 10:49:31.705: Erreur: at java.base/java.security.AccessController.doPrivileged(Native Method) 10:49:31.705: Erreur: at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85) 10:49:31.705: Erreur: at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:95) 10:49:31.705: Erreur: at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:745) 10:49:31.705: Erreur: at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:743) 10:49:31.705: Erreur: at java.base/java.security.AccessController.doPrivileged(Native Method) 10:49:31.705: Erreur: at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85) 10:49:31.705: Erreur: at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:742) 10:49:31.705: Erreur: at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203) 10:49:31.705: Erreur: at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124) 10:49:31.705: Erreur: at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113) 10:49:31.705: Erreur: at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109) 10:49:31.705: Erreur: at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101) 10:49:31.705: Erreur: at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90) 10:49:33.729: Erreur: Uncatched exception in thread [AWT-EventQueue-0] 10:49:33.730: Erreur: java.lang.NullPointerException 10:49:33.730: Erreur: at org.omegat.gui.editor.Document3.getTranslationStart(Document3.java:126) 10:49:33.730: Erreur: at org.omegat.gui.editor.EditorTextArea3.isInActiveTranslation(EditorTextArea3.java:248) 10:49:33.730: Erreur: at org.omegat.gui.editor.EditorTextArea3.lambda$new$0(EditorTextArea3.java:181) 10:49:33.730: Erreur: at java.desktop/javax.swing.text.JTextComponent.fireCaretUpdate(JTextComponent.java:412) 10:49:33.730: Erreur: at java.desktop/javax.swing.text.JTextComponent$MutableCaretEvent.fire(JTextComponent.java:4489) 10:49:33.730: Erreur: at java.desktop/javax.swing.text.JTextComponent$MutableCaretEvent.stateChanged(JTextComponent.java:4511) 10:49:33.730: Erreur: at java.desktop/javax.swing.text.DefaultCaret.fireStateChanged(DefaultCaret.java:812) 10:49:33.730: Erreur: at java.desktop/javax.swing.text.DefaultCaret.changeCaretPosition(DefaultCaret.java:1283) 10:49:33.730: Erreur: at java.desktop/javax.swing.text.DefaultCaret.handleSetDot(DefaultCaret.java:1182) 10:49:33.730: Erreur: at java.desktop/javax.swing.text.DefaultCaret.setDot(DefaultCaret.java:1163) 10:49:33.730: Erreur: at java.desktop/javax.swing.text.DefaultEditorKit$NextVisualPositionAction.actionPerformed(DefaultEditorKit.java:1729) 10:49:33.730: Erreur: at java.desktop/com.apple.laf.AquaKeyBindings$AquaMultilineAction.actionPerformed(AquaKeyBindings.java:591) 10:49:33.730: Erreur: at java.desktop/javax.swing.SwingUtilities.notifyAction(SwingUtilities.java:1810) 10:49:33.730: Erreur: at java.desktop/javax.swing.JComponent.processKeyBinding(JComponent.java:2900) 10:49:33.730: Erreur: at java.desktop/javax.swing.JComponent.processKeyBindings(JComponent.java:2948) 10:49:33.730: Erreur: at java.desktop/javax.swing.JComponent.processKeyEvent(JComponent.java:2862) 10:49:33.730: Erreur: at org.omegat.gui.editor.EditorTextArea3.processKeyEvent(EditorTextArea3.java:484) 10:49:33.730: Erreur: at java.desktop/java.awt.Component.processEvent(Component.java:6412) 10:49:33.730: Erreur: at java.desktop/java.awt.Container.processEvent(Container.java:2263) 10:49:33.730: Erreur: at java.desktop/java.awt.Component.dispatchEventImpl(Component.java:5011) 10:49:33.730: Erreur: at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2321) 10:49:33.730: Erreur: at java.desktop/java.awt.Component.dispatchEvent(Component.java:4843) 10:49:33.730: Erreur: at java.desktop/java.awt.KeyboardFocusManager.redispatchEvent(KeyboardFocusManager.java:1950) 10:49:33.730: Erreur: at java.desktop/java.awt.DefaultKeyboardFocusManager.dispatchKeyEvent(DefaultKeyboardFocusManager.java:870) 10:49:33.730: Erreur: at java.desktop/java.awt.DefaultKeyboardFocusManager.preDispatchKeyEvent(DefaultKeyboardFocusManager.java:1139) 10:49:33.730: Erreur: at java.desktop/java.awt.DefaultKeyboardFocusManager.typeAheadAssertions(DefaultKeyboardFocusManager.java:1009) 10:49:33.730: Erreur: at java.desktop/java.awt.DefaultKeyboardFocusManager.dispatchEvent(DefaultKeyboardFocusManager.java:835) 10:49:33.730: Erreur: at java.desktop/java.awt.Component.dispatchEventImpl(Component.java:4892) 10:49:33.730: Erreur: at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2321) 10:49:33.730: Erreur: at java.desktop/java.awt.Window.dispatchEventImpl(Window.java:2772) 10:49:33.730: Erreur: at java.desktop/java.awt.Component.dispatchEvent(Component.java:4843) 10:49:33.730: Erreur: at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:772) 10:49:33.730: Erreur: at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:721) 10:49:33.730: Erreur: at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:715) 10:49:33.730: Erreur: at java.base/java.security.AccessController.doPrivileged(Native Method) 10:49:33.730: Erreur: at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85) 10:49:33.730: Erreur: at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:95) 10:49:33.730: Erreur: at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:745) 10:49:33.730: Erreur: at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:743) 10:49:33.730: Erreur: at java.base/java.security.AccessController.doPrivileged(Native Method) 10:49:33.730: Erreur: at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85) 10:49:33.730: Erreur: at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:742) 10:49:33.730: Erreur: at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203) 10:49:33.730: Erreur: at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124) 10:49:33.730: Erreur: at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113) 10:49:33.730: Erreur: at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109) 10:49:33.730: Erreur: at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101) 10:49:33.730: Erreur: at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90) 10:49:34.082: Erreur: Uncatched exception in thread [AWT-EventQueue-0] 10:49:34.083: Erreur: java.lang.NullPointerException 10:49:34.083: Erreur: at org.omegat.gui.editor.Document3.getTranslationStart(Document3.java:126) 10:49:34.083: Erreur: at org.omegat.gui.editor.EditorTextArea3.isInActiveTranslation(EditorTextArea3.java:248) 10:49:34.083: Erreur: at org.omegat.gui.editor.EditorTextArea3.lambda$new$0(EditorTextArea3.java:181) 10:49:34.083: Erreur: at java.desktop/javax.swing.text.JTextComponent.fireCaretUpdate(JTextComponent.java:412) 10:49:34.083: Erreur: at java.desktop/javax.swing.text.JTextComponent$MutableCaretEvent.fire(JTextComponent.java:4489) 10:49:34.083: Erreur: at java.desktop/javax.swing.text.JTextComponent$MutableCaretEvent.stateChanged(JTextComponent.java:4511) 10:49:34.083: Erreur: at java.desktop/javax.swing.text.DefaultCaret.fireStateChanged(DefaultCaret.java:812) 10:49:34.083: Erreur: at java.desktop/javax.swing.text.DefaultCaret.changeCaretPosition(DefaultCaret.java:1283) 10:49:34.083: Erreur: at java.desktop/javax.swing.text.DefaultCaret.handleSetDot(DefaultCaret.java:1182) 10:49:34.083: Erreur: at java.desktop/javax.swing.text.DefaultCaret.setDot(DefaultCaret.java:1163) 10:49:34.083: Erreur: at java.desktop/javax.swing.text.DefaultEditorKit$NextVisualPositionAction.actionPerformed(DefaultEditorKit.java:1729) 10:49:34.083: Erreur: at java.desktop/com.apple.laf.AquaKeyBindings$AquaMultilineAction.actionPerformed(AquaKeyBindings.java:591) 10:49:34.083: Erreur: at java.desktop/javax.swing.SwingUtilities.notifyAction(SwingUtilities.java:1810) 10:49:34.083: Erreur: at java.desktop/javax.swing.JComponent.processKeyBinding(JComponent.java:2900) 10:49:34.083: Erreur: at java.desktop/javax.swing.JComponent.processKeyBindings(JComponent.java:2948) 10:49:34.083: Erreur: at java.desktop/javax.swing.JComponent.processKeyEvent(JComponent.java:2862) 10:49:34.083: Erreur: at org.omegat.gui.editor.EditorTextArea3.processKeyEvent(EditorTextArea3.java:484) 10:49:34.083: Erreur: at java.desktop/java.awt.Component.processEvent(Component.java:6412) 10:49:34.083: Erreur: at java.desktop/java.awt.Container.processEvent(Container.java:2263) 10:49:34.083: Erreur: at java.desktop/java.awt.Component.dispatchEventImpl(Component.java:5011) 10:49:34.083: Erreur: at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2321) 10:49:34.083: Erreur: at java.desktop/java.awt.Component.dispatchEvent(Component.java:4843) 10:49:34.083: Erreur: at java.desktop/java.awt.KeyboardFocusManager.redispatchEvent(KeyboardFocusManager.java:1950) 10:49:34.083: Erreur: at java.desktop/java.awt.DefaultKeyboardFocusManager.dispatchKeyEvent(DefaultKeyboardFocusManager.java:870) 10:49:34.083: Erreur: at java.desktop/java.awt.DefaultKeyboardFocusManager.preDispatchKeyEvent(DefaultKeyboardFocusManager.java:1139) 10:49:34.083: Erreur: at java.desktop/java.awt.DefaultKeyboardFocusManager.typeAheadAssertions(DefaultKeyboardFocusManager.java:1009) 10:49:34.083: Erreur: at java.desktop/java.awt.DefaultKeyboardFocusManager.dispatchEvent(DefaultKeyboardFocusManager.java:835) 10:49:34.083: Erreur: at java.desktop/java.awt.Component.dispatchEventImpl(Component.java:4892) 10:49:34.083: Erreur: at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2321) 10:49:34.083: Erreur: at java.desktop/java.awt.Window.dispatchEventImpl(Window.java:2772) 10:49:34.083: Erreur: at java.desktop/java.awt.Component.dispatchEvent(Component.java:4843) 10:49:34.083: Erreur: at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:772) 10:49:34.083: Erreur: at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:721) 10:49:34.083: Erreur: at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:715) 10:49:34.083: Erreur: at java.base/java.security.AccessController.doPrivileged(Native Method) 10:49:34.083: Erreur: at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85) 10:49:34.083: Erreur: at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:95) 10:49:34.083: Erreur: at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:745) 10:49:34.083: Erreur: at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:743) 10:49:34.083: Erreur: at java.base/java.security.AccessController.doPrivileged(Native Method) 10:49:34.083: Erreur: at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85) 10:49:34.083: Erreur: at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:742) 10:49:34.083: Erreur: at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203) 10:49:34.083: Erreur: at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124) 10:49:34.083: Erreur: at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113) 10:49:34.083: Erreur: at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109) 10:49:34.083: Erreur: at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101) 10:49:34.083: Erreur: at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90) 10:49:35.114: Erreur: Uncatched exception in thread [AWT-EventQueue-0] 10:49:35.115: Erreur: java.lang.NullPointerException 10:49:35.115: Erreur: at org.omegat.gui.editor.Document3.getTranslationStart(Document3.java:126) 10:49:35.115: Erreur: at org.omegat.gui.editor.EditorTextArea3.isInActiveTranslation(EditorTextArea3.java:248) 10:49:35.115: Erreur: at org.omegat.gui.editor.EditorTextArea3.lambda$new$0(EditorTextArea3.java:181) 10:49:35.115: Erreur: at java.desktop/javax.swing.text.JTextComponent.fireCaretUpdate(JTextComponent.java:412) 10:49:35.115: Erreur: at java.desktop/javax.swing.text.JTextComponent$MutableCaretEvent.fire(JTextComponent.java:4489) 10:49:35.115: Erreur: at java.desktop/javax.swing.text.JTextComponent$MutableCaretEvent.stateChanged(JTextComponent.java:4511) 10:49:35.115: Erreur: at java.desktop/javax.swing.text.DefaultCaret.fireStateChanged(DefaultCaret.java:812) 10:49:35.115: Erreur: at java.desktop/javax.swing.text.DefaultCaret.changeCaretPosition(DefaultCaret.java:1283) 10:49:35.115: Erreur: at java.desktop/javax.swing.text.DefaultCaret.handleSetDot(DefaultCaret.java:1182) 10:49:35.115: Erreur: at java.desktop/javax.swing.text.DefaultCaret.setDot(DefaultCaret.java:1163) 10:49:35.115: Erreur: at java.desktop/javax.swing.text.DefaultEditorKit$NextVisualPositionAction.actionPerformed(DefaultEditorKit.java:1729) 10:49:35.115: Erreur: at java.desktop/com.apple.laf.AquaKeyBindings$AquaMultilineAction.actionPerformed(AquaKeyBindings.java:591) 10:49:35.115: Erreur: at java.desktop/javax.swing.SwingUtilities.notifyAction(SwingUtilities.java:1810) 10:49:35.115: Erreur: at java.desktop/javax.swing.JComponent.processKeyBinding(JComponent.java:2900) 10:49:35.115: Erreur: at java.desktop/javax.swing.JComponent.processKeyBindings(JComponent.java:2948) 10:49:35.115: Erreur: at java.desktop/javax.swing.JComponent.processKeyEvent(JComponent.java:2862) 10:49:35.115: Erreur: at org.omegat.gui.editor.EditorTextArea3.processKeyEvent(EditorTextArea3.java:484) 10:49:35.115: Erreur: at java.desktop/java.awt.Component.processEvent(Component.java:6412) 10:49:35.115: Erreur: at java.desktop/java.awt.Container.processEvent(Container.java:2263) 10:49:35.115: Erreur: at java.desktop/java.awt.Component.dispatchEventImpl(Component.java:5011) 10:49:35.115: Erreur: at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2321) 10:49:35.115: Erreur: at java.desktop/java.awt.Component.dispatchEvent(Component.java:4843) 10:49:35.115: Erreur: at java.desktop/java.awt.KeyboardFocusManager.redispatchEvent(KeyboardFocusManager.java:1950) 10:49:35.115: Erreur: at java.desktop/java.awt.DefaultKeyboardFocusManager.dispatchKeyEvent(DefaultKeyboardFocusManager.java:870) 10:49:35.115: Erreur: at java.desktop/java.awt.DefaultKeyboardFocusManager.preDispatchKeyEvent(DefaultKeyboardFocusManager.java:1139) 10:49:35.115: Erreur: at java.desktop/java.awt.DefaultKeyboardFocusManager.typeAheadAssertions(DefaultKeyboardFocusManager.java:1009) 10:49:35.115: Erreur: at java.desktop/java.awt.DefaultKeyboardFocusManager.dispatchEvent(DefaultKeyboardFocusManager.java:835) 10:49:35.115: Erreur: at java.desktop/java.awt.Component.dispatchEventImpl(Component.java:4892) 10:49:35.115: Erreur: at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2321) 10:49:35.115: Erreur: at java.desktop/java.awt.Window.dispatchEventImpl(Window.java:2772) 10:49:35.115: Erreur: at java.desktop/java.awt.Component.dispatchEvent(Component.java:4843) 10:49:35.115: Erreur: at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:772) 10:49:35.115: Erreur: at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:721) 10:49:35.115: Erreur: at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:715) 10:49:35.115: Erreur: at java.base/java.security.AccessController.doPrivileged(Native Method) 10:49:35.115: Erreur: at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85) 10:49:35.115: Erreur: at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:95) 10:49:35.115: Erreur: at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:745) 10:49:35.115: Erreur: at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:743) 10:49:35.115: Erreur: at java.base/java.security.AccessController.doPrivileged(Native Method) 10:49:35.115: Erreur: at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85) 10:49:35.115: Erreur: at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:742) 10:49:35.115: Erreur: at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203) 10:49:35.115: Erreur: at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124) 10:49:35.115: Erreur: at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113) 10:49:35.115: Erreur: at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109) 10:49:35.115: Erreur: at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101) 10:49:35.115: Erreur: at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90) 10:49:35.346: Erreur: Uncatched exception in thread [AWT-EventQueue-0] 10:49:35.346: Erreur: java.lang.NullPointerException 10:49:35.346: Erreur: at org.omegat.gui.editor.Document3.getTranslationStart(Document3.java:126) 10:49:35.346: Erreur: at org.omegat.gui.editor.EditorTextArea3.isInActiveTranslation(EditorTextArea3.java:248) 10:49:35.346: Erreur: at org.omegat.gui.editor.EditorTextArea3.lambda$new$0(EditorTextArea3.java:181) 10:49:35.346: Erreur: at java.desktop/javax.swing.text.JTextComponent.fireCaretUpdate(JTextComponent.java:412) 10:49:35.346: Erreur: at java.desktop/javax.swing.text.JTextComponent$MutableCaretEvent.fire(JTextComponent.java:4489) 10:49:35.346: Erreur: at java.desktop/javax.swing.text.JTextComponent$MutableCaretEvent.stateChanged(JTextComponent.java:4511) 10:49:35.346: Erreur: at java.desktop/javax.swing.text.DefaultCaret.fireStateChanged(DefaultCaret.java:812) 10:49:35.346: Erreur: at java.desktop/javax.swing.text.DefaultCaret.changeCaretPosition(DefaultCaret.java:1283) 10:49:35.346: Erreur: at java.desktop/javax.swing.text.DefaultCaret.handleSetDot(DefaultCaret.java:1182) 10:49:35.347: Erreur: at java.desktop/javax.swing.text.DefaultCaret.setDot(DefaultCaret.java:1163) 10:49:35.347: Erreur: at java.desktop/javax.swing.text.DefaultEditorKit$NextVisualPositionAction.actionPerformed(DefaultEditorKit.java:1729) 10:49:35.347: Erreur: at java.desktop/com.apple.laf.AquaKeyBindings$AquaMultilineAction.actionPerformed(AquaKeyBindings.java:591) 10:49:35.347: Erreur: at java.desktop/javax.swing.SwingUtilities.notifyAction(SwingUtilities.java:1810) 10:49:35.347: Erreur: at java.desktop/javax.swing.JComponent.processKeyBinding(JComponent.java:2900) 10:49:35.347: Erreur: at java.desktop/javax.swing.JComponent.processKeyBindings(JComponent.java:2948) 10:49:35.347: Erreur: at java.desktop/javax.swing.JComponent.processKeyEvent(JComponent.java:2862) 10:49:35.347: Erreur: at org.omegat.gui.editor.EditorTextArea3.processKeyEvent(EditorTextArea3.java:484) 10:49:35.347: Erreur: at java.desktop/java.awt.Component.processEvent(Component.java:6412) 10:49:35.347: Erreur: at java.desktop/java.awt.Container.processEvent(Container.java:2263) 10:49:35.347: Erreur: at java.desktop/java.awt.Component.dispatchEventImpl(Component.java:5011) 10:49:35.347: Erreur: at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2321) 10:49:35.347: Erreur: at java.desktop/java.awt.Component.dispatchEvent(Component.java:4843) 10:49:35.347: Erreur: at java.desktop/java.awt.KeyboardFocusManager.redispatchEvent(KeyboardFocusManager.java:1950) 10:49:35.347: Erreur: at java.desktop/java.awt.DefaultKeyboardFocusManager.dispatchKeyEvent(DefaultKeyboardFocusManager.java:870) 10:49:35.347: Erreur: at java.desktop/java.awt.DefaultKeyboardFocusManager.preDispatchKeyEvent(DefaultKeyboardFocusManager.java:1139) 10:49:35.347: Erreur: at java.desktop/java.awt.DefaultKeyboardFocusManager.typeAheadAssertions(DefaultKeyboardFocusManager.java:1009) 10:49:35.347: Erreur: at java.desktop/java.awt.DefaultKeyboardFocusManager.dispatchEvent(DefaultKeyboardFocusManager.java:835) 10:49:35.347: Erreur: at java.desktop/java.awt.Component.dispatchEventImpl(Component.java:4892) 10:49:35.347: Erreur: at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2321) 10:49:35.347: Erreur: at java.desktop/java.awt.Window.dispatchEventImpl(Window.java:2772) 10:49:35.347: Erreur: at java.desktop/java.awt.Component.dispatchEvent(Component.java:4843) 10:49:35.347: Erreur: at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:772) 10:49:35.347: Erreur: at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:721) 10:49:35.347: Erreur: at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:715) 10:49:35.347: Erreur: at java.base/java.security.AccessController.doPrivileged(Native Method) 10:49:35.347: Erreur: at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85) 10:49:35.347: Erreur: at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:95) 10:49:35.347: Erreur: at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:745) 10:49:35.347: Erreur: at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:743) 10:49:35.347: Erreur: at java.base/java.security.AccessController.doPrivileged(Native Method) 10:49:35.347: Erreur: at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85) 10:49:35.347: Erreur: at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:742) 10:49:35.347: Erreur: at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203) 10:49:35.347: Erreur: at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124) 10:49:35.347: Erreur: at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113) 10:49:35.347: Erreur: at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109) 10:49:35.347: Erreur: at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101) 10:49:35.347: Erreur: at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90) 10:49:35.578: Erreur: Uncatched exception in thread [AWT-EventQueue-0] 10:49:35.578: Erreur: java.lang.NullPointerException 10:49:35.578: Erreur: at org.omegat.gui.editor.Document3.getTranslationStart(Document3.java:126) 10:49:35.578: Erreur: at org.omegat.gui.editor.EditorTextArea3.isInActiveTranslation(EditorTextArea3.java:248) 10:49:35.578: Erreur: at org.omegat.gui.editor.EditorTextArea3.lambda$new$0(EditorTextArea3.java:181) 10:49:35.578: Erreur: at java.desktop/javax.swing.text.JTextComponent.fireCaretUpdate(JTextComponent.java:412) 10:49:35.578: Erreur: at java.desktop/javax.swing.text.JTextComponent$MutableCaretEvent.fire(JTextComponent.java:4489) 10:49:35.578: Erreur: at java.desktop/javax.swing.text.JTextComponent$MutableCaretEvent.stateChanged(JTextComponent.java:4511) 10:49:35.578: Erreur: at java.desktop/javax.swing.text.DefaultCaret.fireStateChanged(DefaultCaret.java:812) 10:49:35.578: Erreur: at java.desktop/javax.swing.text.DefaultCaret.changeCaretPosition(DefaultCaret.java:1283) 10:49:35.578: Erreur: at java.desktop/javax.swing.text.DefaultCaret.handleSetDot(DefaultCaret.java:1182) 10:49:35.578: Erreur: at java.desktop/javax.swing.text.DefaultCaret.setDot(DefaultCaret.java:1163) 10:49:35.578: Erreur: at java.desktop/javax.swing.text.DefaultEditorKit$NextVisualPositionAction.actionPerformed(DefaultEditorKit.java:1729) 10:49:35.578: Erreur: at java.desktop/com.apple.laf.AquaKeyBindings$AquaMultilineAction.actionPerformed(AquaKeyBindings.java:591) 10:49:35.578: Erreur: at java.desktop/javax.swing.SwingUtilities.notifyAction(SwingUtilities.java:1810) 10:49:35.578: Erreur: at java.desktop/javax.swing.JComponent.processKeyBinding(JComponent.java:2900) 10:49:35.578: Erreur: at java.desktop/javax.swing.JComponent.processKeyBindings(JComponent.java:2948) 10:49:35.578: Erreur: at java.desktop/javax.swing.JComponent.processKeyEvent(JComponent.java:2862) 10:49:35.578: Erreur: at org.omegat.gui.editor.EditorTextArea3.processKeyEvent(EditorTextArea3.java:484) 10:49:35.578: Erreur: at java.desktop/java.awt.Component.processEvent(Component.java:6412) 10:49:35.578: Erreur: at java.desktop/java.awt.Container.processEvent(Container.java:2263) 10:49:35.578: Erreur: at java.desktop/java.awt.Component.dispatchEventImpl(Component.java:5011) 10:49:35.578: Erreur: at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2321) 10:49:35.578: Erreur: at java.desktop/java.awt.Component.dispatchEvent(Component.java:4843) 10:49:35.578: Erreur: at java.desktop/java.awt.KeyboardFocusManager.redispatchEvent(KeyboardFocusManager.java:1950) 10:49:35.578: Erreur: at java.desktop/java.awt.DefaultKeyboardFocusManager.dispatchKeyEvent(DefaultKeyboardFocusManager.java:870) 10:49:35.578: Erreur: at java.desktop/java.awt.DefaultKeyboardFocusManager.preDispatchKeyEvent(DefaultKeyboardFocusManager.java:1139) 10:49:35.578: Erreur: at java.desktop/java.awt.DefaultKeyboardFocusManager.typeAheadAssertions(DefaultKeyboardFocusManager.java:1009) 10:49:35.578: Erreur: at java.desktop/java.awt.DefaultKeyboardFocusManager.dispatchEvent(DefaultKeyboardFocusManager.java:835) 10:49:35.578: Erreur: at java.desktop/java.awt.Component.dispatchEventImpl(Component.java:4892) 10:49:35.578: Erreur: at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2321) 10:49:35.578: Erreur: at java.desktop/java.awt.Window.dispatchEventImpl(Window.java:2772) 10:49:35.578: Erreur: at java.desktop/java.awt.Component.dispatchEvent(Component.java:4843) 10:49:35.578: Erreur: at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:772) 10:49:35.578: Erreur: at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:721) 10:49:35.578: Erreur: at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:715) 10:49:35.578: Erreur: at java.base/java.security.AccessController.doPrivileged(Native Method) 10:49:35.578: Erreur: at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85) 10:49:35.578: Erreur: at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:95) 10:49:35.578: Erreur: at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:745) 10:49:35.578: Erreur: at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:743) 10:49:35.578: Erreur: at java.base/java.security.AccessController.doPrivileged(Native Method) 10:49:35.578: Erreur: at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85) 10:49:35.578: Erreur: at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:742) 10:49:35.578: Erreur: at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203) 10:49:35.578: Erreur: at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124) 10:49:35.578: Erreur: at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113) 10:49:35.578: Erreur: at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109) 10:49:35.578: Erreur: at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101) 10:49:35.578: Erreur: at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90) 10:49:36.050: Erreur: Uncatched exception in thread [AWT-EventQueue-0] 10:49:36.050: Erreur: java.lang.NullPointerException 10:49:36.050: Erreur: at org.omegat.gui.editor.Document3.getTranslationStart(Document3.java:126) 10:49:36.050: Erreur: at org.omegat.gui.editor.EditorTextArea3.isInActiveTranslation(EditorTextArea3.java:248) 10:49:36.050: Erreur: at org.omegat.gui.editor.EditorTextArea3.lambda$new$0(EditorTextArea3.java:181) 10:49:36.050: Erreur: at java.desktop/javax.swing.text.JTextComponent.fireCaretUpdate(JTextComponent.java:412) 10:49:36.050: Erreur: at java.desktop/javax.swing.text.JTextComponent$MutableCaretEvent.fire(JTextComponent.java:4489) 10:49:36.050: Erreur: at java.desktop/javax.swing.text.JTextComponent$MutableCaretEvent.stateChanged(JTextComponent.java:4511) 10:49:36.050: Erreur: at java.desktop/javax.swing.text.DefaultCaret.fireStateChanged(DefaultCaret.java:812) 10:49:36.050: Erreur: at java.desktop/javax.swing.text.DefaultCaret.changeCaretPosition(DefaultCaret.java:1283) 10:49:36.050: Erreur: at java.desktop/javax.swing.text.DefaultCaret.handleSetDot(DefaultCaret.java:1182) 10:49:36.050: Erreur: at java.desktop/javax.swing.text.DefaultCaret.setDot(DefaultCaret.java:1163) 10:49:36.050: Erreur: at java.desktop/javax.swing.text.DefaultEditorKit$NextVisualPositionAction.actionPerformed(DefaultEditorKit.java:1729) 10:49:36.050: Erreur: at java.desktop/com.apple.laf.AquaKeyBindings$AquaMultilineAction.actionPerformed(AquaKeyBindings.java:591) 10:49:36.050: Erreur: at java.desktop/javax.swing.SwingUtilities.notifyAction(SwingUtilities.java:1810) 10:49:36.050: Erreur: at java.desktop/javax.swing.JComponent.processKeyBinding(JComponent.java:2900) 10:49:36.050: Erreur: at java.desktop/javax.swing.JComponent.processKeyBindings(JComponent.java:2948) 10:49:36.050: Erreur: at java.desktop/javax.swing.JComponent.processKeyEvent(JComponent.java:2862) 10:49:36.050: Erreur: at org.omegat.gui.editor.EditorTextArea3.processKeyEvent(EditorTextArea3.java:484) 10:49:36.050: Erreur: at java.desktop/java.awt.Component.processEvent(Component.java:6412) 10:49:36.050: Erreur: at java.desktop/java.awt.Container.processEvent(Container.java:2263) 10:49:36.050: Erreur: at java.desktop/java.awt.Component.dispatchEventImpl(Component.java:5011) 10:49:36.050: Erreur: at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2321) 10:49:36.050: Erreur: at java.desktop/java.awt.Component.dispatchEvent(Component.java:4843) 10:49:36.050: Erreur: at java.desktop/java.awt.KeyboardFocusManager.redispatchEvent(KeyboardFocusManager.java:1950) 10:49:36.050: Erreur: at java.desktop/java.awt.DefaultKeyboardFocusManager.dispatchKeyEvent(DefaultKeyboardFocusManager.java:870) 10:49:36.050: Erreur: at java.desktop/java.awt.DefaultKeyboardFocusManager.preDispatchKeyEvent(DefaultKeyboardFocusManager.java:1139) 10:49:36.050: Erreur: at java.desktop/java.awt.DefaultKeyboardFocusManager.typeAheadAssertions(DefaultKeyboardFocusManager.java:1009) 10:49:36.050: Erreur: at java.desktop/java.awt.DefaultKeyboardFocusManager.dispatchEvent(DefaultKeyboardFocusManager.java:835) 10:49:36.050: Erreur: at java.desktop/java.awt.Component.dispatchEventImpl(Component.java:4892) 10:49:36.050: Erreur: at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2321) 10:49:36.050: Erreur: at java.desktop/java.awt.Window.dispatchEventImpl(Window.java:2772) 10:49:36.050: Erreur: at java.desktop/java.awt.Component.dispatchEvent(Component.java:4843) 10:49:36.051: Erreur: at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:772) 10:49:36.051: Erreur: at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:721) 10:49:36.051: Erreur: at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:715) 10:49:36.051: Erreur: at java.base/java.security.AccessController.doPrivileged(Native Method) 10:49:36.051: Erreur: at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85) 10:49:36.051: Erreur: at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:95) 10:49:36.051: Erreur: at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:745) 10:49:36.051: Erreur: at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:743) 10:49:36.051: Erreur: at java.base/java.security.AccessController.doPrivileged(Native Method) 10:49:36.051: Erreur: at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85) 10:49:36.051: Erreur: at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:742) 10:49:36.051: Erreur: at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203) 10:49:36.051: Erreur: at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124) 10:49:36.051: Erreur: at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113) 10:49:36.051: Erreur: at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109) 10:49:36.051: Erreur: at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101) 10:49:36.051: Erreur: at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90) 10:49:36.290: Erreur: Uncatched exception in thread [AWT-EventQueue-0] 10:49:36.290: Erreur: java.lang.NullPointerException 10:49:36.290: Erreur: at org.omegat.gui.editor.Document3.getTranslationStart(Document3.java:126) 10:49:36.290: Erreur: at org.omegat.gui.editor.EditorTextArea3.isInActiveTranslation(EditorTextArea3.java:248) 10:49:36.290: Erreur: at org.omegat.gui.editor.EditorTextArea3.lambda$new$0(EditorTextArea3.java:181) 10:49:36.290: Erreur: at java.desktop/javax.swing.text.JTextComponent.fireCaretUpdate(JTextComponent.java:412) 10:49:36.290: Erreur: at java.desktop/javax.swing.text.JTextComponent$MutableCaretEvent.fire(JTextComponent.java:4489) 10:49:36.290: Erreur: at java.desktop/javax.swing.text.JTextComponent$MutableCaretEvent.stateChanged(JTextComponent.java:4511) 10:49:36.290: Erreur: at java.desktop/javax.swing.text.DefaultCaret.fireStateChanged(DefaultCaret.java:812) 10:49:36.290: Erreur: at java.desktop/javax.swing.text.DefaultCaret.changeCaretPosition(DefaultCaret.java:1283) 10:49:36.290: Erreur: at java.desktop/javax.swing.text.DefaultCaret.handleSetDot(DefaultCaret.java:1182) 10:49:36.290: Erreur: at java.desktop/javax.swing.text.DefaultCaret.setDot(DefaultCaret.java:1163) 10:49:36.290: Erreur: at java.desktop/javax.swing.text.DefaultEditorKit$NextVisualPositionAction.actionPerformed(DefaultEditorKit.java:1729) 10:49:36.290: Erreur: at java.desktop/com.apple.laf.AquaKeyBindings$AquaMultilineAction.actionPerformed(AquaKeyBindings.java:591) 10:49:36.290: Erreur: at java.desktop/javax.swing.SwingUtilities.notifyAction(SwingUtilities.java:1810) 10:49:36.290: Erreur: at java.desktop/javax.swing.JComponent.processKeyBinding(JComponent.java:2900) 10:49:36.290: Erreur: at java.desktop/javax.swing.JComponent.processKeyBindings(JComponent.java:2948) 10:49:36.290: Erreur: at java.desktop/javax.swing.JComponent.processKeyEvent(JComponent.java:2862) 10:49:36.290: Erreur: at org.omegat.gui.editor.EditorTextArea3.processKeyEvent(EditorTextArea3.java:484) 10:49:36.290: Erreur: at java.desktop/java.awt.Component.processEvent(Component.java:6412) 10:49:36.290: Erreur: at java.desktop/java.awt.Container.processEvent(Container.java:2263) 10:49:36.290: Erreur: at java.desktop/java.awt.Component.dispatchEventImpl(Component.java:5011) 10:49:36.290: Erreur: at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2321) 10:49:36.290: Erreur: at java.desktop/java.awt.Component.dispatchEvent(Component.java:4843) 10:49:36.290: Erreur: at java.desktop/java.awt.KeyboardFocusManager.redispatchEvent(KeyboardFocusManager.java:1950) 10:49:36.290: Erreur: at java.desktop/java.awt.DefaultKeyboardFocusManager.dispatchKeyEvent(DefaultKeyboardFocusManager.java:870) 10:49:36.290: Erreur: at java.desktop/java.awt.DefaultKeyboardFocusManager.preDispatchKeyEvent(DefaultKeyboardFocusManager.java:1139) 10:49:36.290: Erreur: at java.desktop/java.awt.DefaultKeyboardFocusManager.typeAheadAssertions(DefaultKeyboardFocusManager.java:1009) 10:49:36.290: Erreur: at java.desktop/java.awt.DefaultKeyboardFocusManager.dispatchEvent(DefaultKeyboardFocusManager.java:835) 10:49:36.290: Erreur: at java.desktop/java.awt.Component.dispatchEventImpl(Component.java:4892) 10:49:36.290: Erreur: at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2321) 10:49:36.290: Erreur: at java.desktop/java.awt.Window.dispatchEventImpl(Window.java:2772) 10:49:36.290: Erreur: at java.desktop/java.awt.Component.dispatchEvent(Component.java:4843) 10:49:36.290: Erreur: at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:772) 10:49:36.290: Erreur: at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:721) 10:49:36.290: Erreur: at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:715) 10:49:36.290: Erreur: at java.base/java.security.AccessController.doPrivileged(Native Method) 10:49:36.290: Erreur: at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85) 10:49:36.290: Erreur: at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:95) 10:49:36.290: Erreur: at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:745) 10:49:36.290: Erreur: at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:743) 10:49:36.290: Erreur: at java.base/java.security.AccessController.doPrivileged(Native Method) 10:49:36.290: Erreur: at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85) 10:49:36.290: Erreur: at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:742) 10:49:36.290: Erreur: at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203) 10:49:36.290: Erreur: at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124) 10:49:36.290: Erreur: at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113) 10:49:36.290: Erreur: at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109) 10:49:36.290: Erreur: at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101) 10:49:36.290: Erreur: at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90) ```

@brandelune
Copy link
Contributor

brandelune commented Mar 17, 2025

When I manually enter an untranslated segment, enter a translation and hit "Reload", I get this:

10:52:09.704: Erreur: java.lang.NullPointerException 
10:52:09.704: Erreur: 	at org.omegat.gui.editor.Document3.getTranslationStart(Document3.java:126) 
another NPE in the different place at Document3.java#126: click to open detailed log ``` 10:52:09.704: Erreur: Uncatched exception in thread [AWT-EventQueue-0] 10:52:09.704: Erreur: java.lang.NullPointerException 10:52:09.704: Erreur: at org.omegat.gui.editor.Document3.getTranslationStart(Document3.java:126) 10:52:09.704: Erreur: at org.omegat.gui.editor.EditorTextArea3.isInActiveTranslation(EditorTextArea3.java:248) 10:52:09.704: Erreur: at org.omegat.gui.editor.EditorTextArea3.lambda$new$0(EditorTextArea3.java:181) 10:52:09.704: Erreur: at java.desktop/javax.swing.text.JTextComponent.fireCaretUpdate(JTextComponent.java:412) 10:52:09.704: Erreur: at java.desktop/javax.swing.text.JTextComponent$MutableCaretEvent.fire(JTextComponent.java:4489) 10:52:09.704: Erreur: at java.desktop/javax.swing.text.JTextComponent$MutableCaretEvent.stateChanged(JTextComponent.java:4511) 10:52:09.704: Erreur: at java.desktop/javax.swing.text.DefaultCaret.fireStateChanged(DefaultCaret.java:812) 10:52:09.704: Erreur: at java.desktop/javax.swing.text.DefaultCaret.changeCaretPosition(DefaultCaret.java:1283) 10:52:09.704: Erreur: at java.desktop/javax.swing.text.DefaultCaret.handleSetDot(DefaultCaret.java:1182) 10:52:09.704: Erreur: at java.desktop/javax.swing.text.DefaultCaret.setDot(DefaultCaret.java:1163) 10:52:09.704: Erreur: at java.desktop/javax.swing.text.DefaultCaret.setDot(DefaultCaret.java:1060) 10:52:09.704: Erreur: at java.desktop/javax.swing.text.DefaultCaret$Handler.propertyChange(DefaultCaret.java:1883) 10:52:09.704: Erreur: at java.desktop/java.beans.PropertyChangeSupport.fire(PropertyChangeSupport.java:341) 10:52:09.704: Erreur: at java.desktop/java.beans.PropertyChangeSupport.firePropertyChange(PropertyChangeSupport.java:333) 10:52:09.704: Erreur: at java.desktop/java.beans.PropertyChangeSupport.firePropertyChange(PropertyChangeSupport.java:266) 10:52:09.704: Erreur: at java.desktop/java.awt.Component.firePropertyChange(Component.java:8731) 10:52:09.704: Erreur: at java.desktop/javax.swing.text.JTextComponent.setDocument(JTextComponent.java:456) 10:52:09.704: Erreur: at org.omegat.gui.editor.EditorController.loadDocument(EditorController.java:714) 10:52:09.704: Erreur: at org.omegat.gui.editor.EditorController.lambda$updateState$7(EditorController.java:469) 10:52:09.704: Erreur: at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:313) 10:52:09.704: Erreur: at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:770) 10:52:09.704: Erreur: at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:721) 10:52:09.704: Erreur: at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:715) 10:52:09.704: Erreur: at java.base/java.security.AccessController.doPrivileged(Native Method) 10:52:09.704: Erreur: at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85) 10:52:09.704: Erreur: at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:740) 10:52:09.704: Erreur: at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203) 10:52:09.704: Erreur: at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124) 10:52:09.704: Erreur: at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:117) 10:52:09.704: Erreur: at java.desktop/java.awt.WaitDispatchSupport$2.run(WaitDispatchSupport.java:190) 10:52:09.704: Erreur: at java.desktop/java.awt.WaitDispatchSupport$4.run(WaitDispatchSupport.java:235) 10:52:09.704: Erreur: at java.desktop/java.awt.WaitDispatchSupport$4.run(WaitDispatchSupport.java:233) 10:52:09.704: Erreur: at java.base/java.security.AccessController.doPrivileged(Native Method) 10:52:09.704: Erreur: at java.desktop/java.awt.WaitDispatchSupport.enter(WaitDispatchSupport.java:233) 10:52:09.704: Erreur: at java.desktop/java.awt.Dialog.show(Dialog.java:1070) 10:52:09.704: Erreur: at java.desktop/javax.swing.JOptionPane.showOptionDialog(JOptionPane.java:874) 10:52:09.704: Erreur: at java.desktop/javax.swing.JOptionPane.showMessageDialog(JOptionPane.java:670) 10:52:09.704: Erreur: at java.desktop/javax.swing.JOptionPane.showMessageDialog(JOptionPane.java:641) 10:52:09.704: Erreur: at org.omegat.core.CoreEvents.log(CoreEvents.java:215) 10:52:09.704: Erreur: at org.omegat.core.CoreEvents.lambda$fireProjectChange$0(CoreEvents.java:123) 10:52:09.704: Erreur: at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:313) 10:52:09.704: Erreur: at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:770) 10:52:09.704: Erreur: at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:721) 10:52:09.704: Erreur: at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:715) 10:52:09.704: Erreur: at java.base/java.security.AccessController.doPrivileged(Native Method) 10:52:09.704: Erreur: at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85) 10:52:09.704: Erreur: at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:740) 10:52:09.704: Erreur: at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203) 10:52:09.704: Erreur: at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124) 10:52:09.704: Erreur: at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113) 10:52:09.704: Erreur: at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109) 10:52:09.704: Erreur: at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101) 10:52:09.704: Erreur: at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90) 10:52:10.315: Info: Évènement : activation d’une nouvelle entrée (LOG_INFO_EVENT_ENTRY_ACTIVATED)
</details>

@brandelune
Copy link
Contributor

But I do not get the change from LTR to RTL behavior that I had yesterday.

I can write normally in LTR after reload. So that part seems to be fixed.

@brandelune
Copy link
Contributor

brandelune commented Mar 17, 2025

In a different project, I get something similar on reloading a project:

10:58:26.851: Erreur: Uncatched exception in thread [AWT-EventQueue-0] 
10:58:26.852: Erreur: java.lang.NullPointerException 
10:58:26.852: Erreur: 	at org.omegat.gui.editor.Document3.getTranslationStart(Document3.java:126) 
10:58:26.852: Erreur: 	at org.omegat.gui.editor.EditorTextArea3.isInActiveTranslation(EditorTextArea3.java:248) 
10:58:26.852: Erreur: 	at org.omegat.gui.editor.EditorTextArea3.lambda$new$0(EditorTextArea3.java:181) 
furhter details ``` 10:58:26.851: Erreur: Uncatched exception in thread [AWT-EventQueue-0] 10:58:26.852: Erreur: java.lang.NullPointerException 10:58:26.852: Erreur: at org.omegat.gui.editor.Document3.getTranslationStart(Document3.java:126) 10:58:26.852: Erreur: at org.omegat.gui.editor.EditorTextArea3.isInActiveTranslation(EditorTextArea3.java:248) 10:58:26.852: Erreur: at org.omegat.gui.editor.EditorTextArea3.lambda$new$0(EditorTextArea3.java:181) 10:58:26.852: Erreur: at java.desktop/javax.swing.text.JTextComponent.fireCaretUpdate(JTextComponent.java:412) 10:58:26.852: Erreur: at java.desktop/javax.swing.text.JTextComponent$MutableCaretEvent.fire(JTextComponent.java:4489) 10:58:26.852: Erreur: at java.desktop/javax.swing.text.JTextComponent$MutableCaretEvent.stateChanged(JTextComponent.java:4511) 10:58:26.852: Erreur: at java.desktop/javax.swing.text.DefaultCaret.fireStateChanged(DefaultCaret.java:812) 10:58:26.852: Erreur: at java.desktop/javax.swing.text.DefaultCaret.changeCaretPosition(DefaultCaret.java:1283) 10:58:26.852: Erreur: at java.desktop/javax.swing.text.DefaultCaret.handleSetDot(DefaultCaret.java:1182) 10:58:26.852: Erreur: at java.desktop/javax.swing.text.DefaultCaret.setDot(DefaultCaret.java:1163) 10:58:26.852: Erreur: at java.desktop/javax.swing.text.DefaultCaret.setDot(DefaultCaret.java:1060) 10:58:26.852: Erreur: at java.desktop/javax.swing.text.DefaultCaret$Handler.propertyChange(DefaultCaret.java:1883) 10:58:26.852: Erreur: at java.desktop/java.beans.PropertyChangeSupport.fire(PropertyChangeSupport.java:341) 10:58:26.852: Erreur: at java.desktop/java.beans.PropertyChangeSupport.firePropertyChange(PropertyChangeSupport.java:333) 10:58:26.852: Erreur: at java.desktop/java.beans.PropertyChangeSupport.firePropertyChange(PropertyChangeSupport.java:266) 10:58:26.852: Erreur: at java.desktop/java.awt.Component.firePropertyChange(Component.java:8731) 10:58:26.852: Erreur: at java.desktop/javax.swing.text.JTextComponent.setDocument(JTextComponent.java:456) 10:58:26.852: Erreur: at org.omegat.gui.editor.EditorController.loadDocument(EditorController.java:714) 10:58:26.852: Erreur: at org.omegat.gui.editor.EditorController.lambda$updateState$7(EditorController.java:469) 10:58:26.852: Erreur: at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:313) 10:58:26.852: Erreur: at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:770) 10:58:26.852: Erreur: at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:721) 10:58:26.852: Erreur: at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:715) 10:58:26.852: Erreur: at java.base/java.security.AccessController.doPrivileged(Native Method) 10:58:26.852: Erreur: at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85) 10:58:26.852: Erreur: at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:740) 10:58:26.852: Erreur: at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203) 10:58:26.852: Erreur: at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124) 10:58:26.852: Erreur: at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:117) 10:58:26.852: Erreur: at java.desktop/java.awt.WaitDispatchSupport$2.run(WaitDispatchSupport.java:190) 10:58:26.852: Erreur: at java.desktop/java.awt.WaitDispatchSupport$4.run(WaitDispatchSupport.java:235) 10:58:26.852: Erreur: at java.desktop/java.awt.WaitDispatchSupport$4.run(WaitDispatchSupport.java:233) 10:58:26.852: Erreur: at java.base/java.security.AccessController.doPrivileged(Native Method) 10:58:26.852: Erreur: at java.desktop/java.awt.WaitDispatchSupport.enter(WaitDispatchSupport.java:233) 10:58:26.852: Erreur: at java.desktop/java.awt.Dialog.show(Dialog.java:1070) 10:58:26.852: Erreur: at java.desktop/javax.swing.JOptionPane.showOptionDialog(JOptionPane.java:874) 10:58:26.852: Erreur: at java.desktop/javax.swing.JOptionPane.showMessageDialog(JOptionPane.java:670) 10:58:26.852: Erreur: at java.desktop/javax.swing.JOptionPane.showMessageDialog(JOptionPane.java:641) 10:58:26.852: Erreur: at org.omegat.core.CoreEvents.log(CoreEvents.java:215) 10:58:26.852: Erreur: at org.omegat.core.CoreEvents.lambda$fireProjectChange$0(CoreEvents.java:123) 10:58:26.852: Erreur: at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:313) 10:58:26.852: Erreur: at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:770) 10:58:26.852: Erreur: at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:721) 10:58:26.852: Erreur: at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:715) 10:58:26.852: Erreur: at java.base/java.security.AccessController.doPrivileged(Native Method) 10:58:26.852: Erreur: at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85) 10:58:26.852: Erreur: at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:740) 10:58:26.852: Erreur: at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203) 10:58:26.852: Erreur: at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124) 10:58:26.852: Erreur: at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113) 10:58:26.852: Erreur: at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109) 10:58:26.852: Erreur: at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101) 10:58:26.852: Erreur: at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90) 10:58:27.235: Info: Évènement : activation d’une nouvelle entrée (LOG_INFO_EVENT_ENTRY_ACTIVATED) ```

@brandelune
Copy link
Contributor

It looks like I don’t have a reversal from LTR→RTL anymore, but the caret goes away anyway and messes the editing.

@brandelune
Copy link
Contributor

Basically, current 6.1 is not useable. We need to revert to something that works and then properly reimplement what created this. Can you tell me which commit I must revert back locally to be able to work ?

@miurahr
Copy link
Member Author

miurahr commented Mar 18, 2025

Mr. Project Manager, I know you are very frustrated, but please act calmly to resolve the issue.
The thread of Pull-Reqeust is to improve the change to fix the issue. Please contribute to enhancing the change productively. If you think it is valuable to add more log messages to investigate the problem, please put it on the issue tracker.

When the bug hits your environment, your project status may be unstable.

It is very strange if you open the project with the patch, the NPE seems to be happening in the same line from all of your posted logs. It is because I fragged the post as duplicated.

@miurahr
Copy link
Member Author

miurahr commented Mar 18, 2025

khagaroth suggest in the development maillist;

Cold bug #1280 have the same cause? It also references Document3 and checks caret positions and it trips on "activeTranslationBeginM1" being null.

I think it catches the issue.

The code we touch is to detect locale of the source and translation.
In previous version, before January, word detection function use system locale.

The bug seems to have been started in the Pull-Request
#1175

The PR added the test case and change the core EditorTextArea3.java

from

       addCaretListener(e -> {
            try {
                int start = EditorUtils.getWordStart(EditorTextArea3.this, e.getMark());
                int end = EditorUtils.getWordEnd(EditorTextArea3.this, e.getMark());

to

                // Detection of target string locale.
                // It uses a source or a target language as a processing locale.
                Locale locale = isInActiveTranslation(e.getMark()) ? targetLocale : sourceLocale;
                int start = EditorUtils.getWordStart(EditorTextArea3.this, e.getMark(), locale);
                int end = EditorUtils.getWordEnd(EditorTextArea3.this, e.getMark(), locale);   

At this time, the isInActiveTranslation method have a bug that it miss a null check even the variable nullable.
The patch here try to add null check.

After patch the method to check nullity, there seems also another place where method does not check null for the variable nullable. It is located in Document3 class variables

    /** Position of active translation in text. */
   Position activeTranslationBeginM1;
   Position activeTranslationEndP1;

Both also nullable, and a null check is missing in the methods in Document3 class.

Annotated several fields and methods as @nullable to enhance null-safety and code readability. Also, refined the method to verify edit mode before proceeding with translation checks, improving robustness against null values or invalid states.

Signed-off-by: Hiroshi Miura <[email protected]>
@miurahr
Copy link
Member Author

miurahr commented Mar 18, 2025

There are several missing null-checks in a code chunk that I did not touch in the previous PR.
The part of code where NPE happens in Document3.java has been lived since 2009 without a null check. I added checks in previous commit.

@brandelune
Copy link
Contributor

I tested with a project that I loaded, once OmegaT has finished loading, I reload and an NPE is generated.

Here is the relevant part of the log:

13:53:57.697: Info: Clic sur l’entrée de menu « projectReloadMenuItem » (LOG_MENU_CLICK) 
13:53:57.709: Info: Démarrage de l’enregistrement du projet (LOG_DATAENGINE_SAVE_START) 
13:53:57.717: Info: Évènement : activation d’une nouvelle entrée (LOG_INFO_EVENT_ENTRY_ACTIVATED) 
13:53:57.731: Info: Il n’est pas nécessaire d’enregistrer, puisqu’il n’y a pas eu de changements (LOG_DATAENGINE_SAVE_NONEED) 
13:53:57.745: Info: Évènement : modification du projet - « SAVE » (LOG_INFO_EVENT_PROJECT_CHANGE) 
13:53:57.745: Info: Fin de l’enregistrement du projet (LOG_DATAENGINE_SAVE_END) 
13:53:57.746: Info: Projet fermé (LOG_DATAENGINE_CLOSE) 
13:53:57.746: Info: Source tokenizer: org.omegat.tokenizer.LuceneEnglishTokenizer (SOURCE_TOKENIZER) 
13:53:57.746: Info: Évènement : modification du projet - « CLOSE » (LOG_INFO_EVENT_PROJECT_CHANGE) 
13:53:57.747: Info: Target tokenizer: org.omegat.tokenizer.LuceneFrenchTokenizer (TARGET_TOKENIZER) 
13:53:57.748: Info: Démarrage du chargement du projet (LOG_DATAENGINE_LOAD_START) 
13:53:57.755: Info: Lecture du fichier TMX /Users/suzume/Documents/DOUBLET/CLIENTS DIRECTS/KD K.K. DOUBLET/KD_25.03.13 → 03.14 (proposition de traduction)/Présentation « If I Must Die »/omegat/project_save.tmx (TMXR_INFO_READING_FILE) 
13:53:57.758: Info: Créé par : OmegaT (TMXR_INFO_CREATION_TOOL) 
13:53:57.759: Info: Version : 6.1.0_0_36cf5b66b (TMXR_INFO_CREATION_TOOL_VERSION) 
13:53:57.759: Info: Méthode de segmentation : sentence (TMXR_INFO_SEG_TYPE) 
13:53:57.759: Info: Langue source : en (TMXR_INFO_SOURCE_LANG) 
13:53:57.762: Info: Lecture du fichier TMX terminée (TMXR_INFO_READING_COMPLETE) 
13:53:57.766: Erreur: java.lang.NullPointerException 
13:53:57.766: Erreur: 	at java.base/java.nio.file.Files.provider(Files.java:101) 
13:53:57.766: Erreur: 	at java.base/java.nio.file.Files.newOutputStream(Files.java:220) 
13:53:57.766: Erreur: 	at java.base/java.nio.file.Files.write(Files.java:3490) 
13:53:57.766: Erreur: 	at java.base/java.nio.file.Files.write(Files.java:3541) 
13:53:57.766: Erreur: 	at org.omegat.core.spellchecker.AbstractSpellChecker.saveWordLists(AbstractSpellChecker.java:230) 
13:53:57.766: Erreur: 	at org.omegat.core.spellchecker.AbstractSpellChecker.destroy(AbstractSpellChecker.java:210) 
13:53:57.766: Erreur: 	at org.omegat.core.spellchecker.AbstractSpellChecker.lambda$new$0(AbstractSpellChecker.java:108) 
13:53:57.766: Erreur: 	at org.omegat.core.CoreEvents.lambda$fireProjectChange$0(CoreEvents.java:121) 
13:53:57.766: Erreur: 	at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:313) 
13:53:57.766: Erreur: 	at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:770) 
13:53:57.766: Erreur: 	at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:721) 
13:53:57.766: Erreur: 	at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:715) 
13:53:57.766: Erreur: 	at java.base/java.security.AccessController.doPrivileged(Native Method) 
13:53:57.766: Erreur: 	at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85) 
13:53:57.766: Erreur: 	at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:740) 
13:53:57.766: Erreur: 	at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203) 
13:53:57.766: Erreur: 	at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124) 
13:53:57.766: Erreur: 	at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113) 
13:53:57.766: Erreur: 	at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109) 
13:53:57.766: Erreur: 	at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101) 
13:53:57.766: Erreur: 	at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90) 
13:53:57.814: Info: Load project source files: 50 ms (CT_LOAD_SRC_FILES) 

When reload is completed, OmegaT does not respond to "insert source" or "replace with source", but the editing field can be used.

@Kazephil
Copy link
Contributor

Kazephil commented Mar 18, 2025

Slightly unrelated, but I no longer seem to be able to add review comments directly from the IDEA IDE (from a Linux system, if that matters). I get a message about the omegat-org organization enabling OAuth App access restrictions. (I haven't tried a different IDE yet, so it could just be a bug in the latest version of IDEA.)

Does anyone know of any change (maybe automatically imposed by GitHub) that would cause this?

I was able to download updates, read the pull request, and push my proposed change normally from the IDE, so it's not a general problem with access to GitHub.

@@ -2546,6 +2546,7 @@ PREFS_TITLE_COLORS=Colours

# EditorTextArea3
ETA_WARNING_TAB_ADVANCE=<html><i>Preferences</i> &gt; <i>General</i> &gt; <i>Use TAB to advance</i> is checked</html>
ETA_ERROR_BAD_LOCATION=Unexpected caret location detected
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Allow me to start by suggesting a minor edit here.

I'll need a little bit more time to actually build this branch and test it with a project.

@brandelune
Is it possible to share a (minimal) copy of the project that caused the issue?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Allow me to start by suggesting a minor edit here.

I'll need a little bit more time to actually build this branch and test it with a project.

@brandelune Is it possible to share a (minimal) copy of the project that caused the issue?

I tried with 3 totally different and unrelated projects and I think you can reliably reproduce the issue (load a project, wait until it is loaded, reload it) with any kind of project. If that’s not the case, I’ll send you one I worked with.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

To channel Alice, "curiouser and curiouser".

I gave the latest build a try on my work PC (Windows 11, either Professional or Enterprise), and got a dialog with an error message.
However, at home on my Linux system and my new Windows 11 (Home) system, I don't get an error message when I reload a project, but I do see the java.lang.NullPointerException error in the log. I also don't seem to be getting the same issues @brandelune did, but I have others. I'll need to do a little bit more testing (on all systems) to determine if they're related and fixed by this PR or not.

Stay tuned!

@miurahr
Copy link
Member Author

miurahr commented Mar 21, 2025

I tested with a project that I loaded, once OmegaT has finished loading, I reload and an NPE is generated.

Here is the relevant part of the log:

Thank you for the NPE report. I recored your log as BUGS#1288 and pushed the change as PR #1304

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants