The following step will print a java.lang.StringIndexOutOfBoundsException to the terminal
1. Go to Preference window
2. Select Entry Preview
3. Enter ""!\"# to the preview text area
4. Click Test
Exception trace:
java.lang.StringIndexOutOfBoundsException: String index out of
range: 0
at java.lang.String.charAt(Unknown Source)
at net.sf.jabref.export.layout.LayoutHelper.parseField(
LayoutHelper.java:377)
at net.sf.jabref.export.layout.LayoutHelper.parse(Layou
tHelper.java:327)
at net.sf.jabref.export.layout.LayoutHelper.getLayoutFr
omText(LayoutHelper.java:77)
at net.sf.jabref.PreviewPanel.readLayout(PreviewPanel.j
ava:264)
at net.sf.jabref.PreviewPanel.setEntry(PreviewPanel.jav
a:280)
at net.sf.jabref.PreviewPanel.<init>(PreviewPanel.java:
75)
at net.sf.jabref.PreviewPrefsTab$3.actionPerformed(Prev
iewPrefsTab.java:142)
at javax.swing.AbstractButton.fireActionPerformed(Unkno
wn Source)
at javax.swing.AbstractButton$Handler.actionPerformed(U
nknown Source)
at javax.swing.DefaultButtonModel.fireActionPerformed(U
nknown Source)
at javax.swing.DefaultButtonModel.setPressed(Unknown So
urce)
at javax.swing.AbstractButton.doClick(Unknown Source)
at javax.swing.AbstractButton.doClick(Unknown Source)
at javax.swing.AbstractButton$AccessibleAbstractButton.
doAccessibleAction(Unknown Source)
at edu.umd.cs.guitar.event.JFCActionHandler$1.run(JFCAc
tionHandler.java:78)
at java.awt.event.InvocationEvent.dispatch(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)</init>
Properly catch and treat the exception without logging it in the console
Pull request made to GitHub by Ingvar - https://github.com/JabRef/jabref/pull/12