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

NullPointerException : this.buffer is null on closing a concordance window #172

Open
Ofghanirre opened this issue Feb 8, 2023 · 2 comments

Comments

@Ofghanirre
Copy link

A detailed summary of the issue goes here.

What steps will reproduce the problem?

  1. On closing a concordance windows
  2. SomeTime, a java error will appear, it seems to be related to a buffer operation.

Hypothesis trigger 1 :

  1. Locate Pattern
  2. Build concordance
  3. Keep the concordance window open
  4. ReLocate a Pattern
  5. Do not build concordance
  6. Close the pending window

It did triggered once a java error

Hypothesis trigger 2 :

  1. Locate Pattern (regex)
  2. Build concordance
  3. Keep the concordance window open
  4. ReLocate a Pattern with graph
  5. Do not build concordance
  6. Close the pending concordance window

It did triggered multiple java errors, sometime with stackstrace, sometime without...

What is the expected output?

Nothing it should just delete the window

What do you see instead?

This is the most complete stackTrace seen during the execution... Some time I only get a mere java.lang.NullPointerException message

java.lang.NullPointerException: Cannot invoke "java.nio.MappedByteBuffer.get(int)" because "this.buffer" is null
at fr.umlv.unitex.concord.ConcordanceAsListModel.getElementReallyAt(Unknown Source)
at fr.umlv.unitex.concord.ConcordanceAsListModel.getElementAt(Unknown Source)
at java.desktop/javax.swing.plaf.basic.BasicListUI.updateLayoutState(BasicListUI.java:1443)
at java.desktop/javax.swing.plaf.basic.BasicListUI.maybeUpdateLayoutState(BasicListUI.java:1394)
at java.desktop/javax.swing.plaf.basic.BasicListUI.getCellBounds(BasicListUI.java:1032)
at java.desktop/javax.swing.plaf.basic.BasicListUI$Handler.repaintCellFocus(BasicListUI.java:2999)
at java.desktop/javax.swing.plaf.basic.BasicListUI$Handler.focusLost(BasicListUI.java:3015)
at java.desktop/java.awt.Component.processFocusEvent(Component.java:6512)
at java.desktop/java.awt.Component.processEvent(Component.java:6376)
at java.desktop/java.awt.Container.processEvent(Container.java:2266)
at java.desktop/java.awt.Component.dispatchEventImpl(Component.java:4995)
at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2324)
at java.desktop/java.awt.Component.dispatchEvent(Component.java:4827)
at java.desktop/java.awt.KeyboardFocusManager.redispatchEvent(KeyboardFocusManager.java:1952)
at java.desktop/java.awt.DefaultKeyboardFocusManager.typeAheadAssertions(DefaultKeyboardFocusManager.java:1070)
at java.desktop/java.awt.DefaultKeyboardFocusManager.dispatchEvent(DefaultKeyboardFocusManager.java:738)
at java.desktop/java.awt.Component.dispatchEventImpl(Component.java:4876)
at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2324)
at java.desktop/java.awt.Component.dispatchEvent(Component.java:4827)
at java.desktop/sun.awt.SunToolkit$1.run(SunToolkit.java:484)
at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:318)
at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:773)
at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:720)
at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:714)
at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86)
at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:742)
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)

More info

I'm using Unitex on UGE's local session, in unitex 3.3

  • Unitex/GramLab IDE version: 3.3.7
  • UnitexToolLogger version: 3.3.7
  • Did this work before?: [x] yes [ ] no
  • Forum thread:
  • Log file (.ulp): unitex_log_00000012.zip
@martinec
Copy link
Member

martinec commented May 4, 2023

Thanks for your report. This is a known bug that can be quite annoying. I have marked the issue as good-first-issue, and any help would be greatly appreciated. If you or anyone else would like to contribute, please feel free to do so.

@eric-laporte
Copy link
Member

Here is another situation where this bug occurs:

  1. Locate Pattern
  2. Build concordance
  3. Click on an occurrence in the concordance, the occurrence gets highlighted in the text window
  4. Click on the title bar of the concordance
  5. Close the concordance window

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

No branches or pull requests

3 participants