Viewing Issue Advanced Details

ID 0003747 Category [DMDirc] Plugin System Severity minor
Reproducibility always Date Submitted 2010-02-07 21:07 Last Update 2010-03-06 21:32
Reporter Error Reporter Assigned To Greboid View Status public
Priority normal Status closed Resolution fixed
Platform Fixed in Version Target Version 0.6.3
Product Version Product Build 0.6.3b1-7-gec9d9ce
Summary 0003747: java.lang.ClassFormatError: Truncated class file — plugins.PluginClassLoader.loadClass(PluginClassLoader.java:162)
Description
java.lang.ClassFormatError: Truncated class file
java.lang.ClassLoader.defineClass1(Native Method)
java.lang.ClassLoader.defineClass(Unknown Source)
java.lang.ClassLoader.defineClass(Unknown Source)
com.dmdirc.plugins.PluginClassLoader.loadClass(PluginClassLoader.java:162)
com.dmdirc.plugins.PluginClassLoader.loadClass(PluginClassLoader.java:77)
com.dmdirc.plugins.PluginInfo.loadClass(PluginInfo.java:931)
com.dmdirc.plugins.PluginInfo.loadPlugin(PluginInfo.java:866)
com.dmdirc.plugins.PluginInfo.activateServices(PluginInfo.java:748)
com.dmdirc.plugins.Service.activate(Service.java:143)
com.dmdirc.plugins.PluginManager.getServiceProvider(PluginManager.java:134)
com.dmdirc.ui.input.InputHandler.setStyle(InputHandler.java:180)
com.dmdirc.ui.input.InputHandler.<init>(InputHandler.java:122)
com.dmdirc.addons.ui_swing.components.SwingInputHandler.<init>(SwingInputHandler.java:58)
com.dmdirc.addons.ui_swing.components.frames.ServerFrame.<init>(ServerFrame.java:73)
com.dmdirc.addons.ui_swing.SwingController$2.run(SwingController.java:206)
com.dmdirc.addons.ui_swing.UIUtilities.invokeAndWait(UIUtilities.java:197)
com.dmdirc.addons.ui_swing.SwingController.getServer(SwingController.java:201)
com.dmdirc.Server.<init>(Server.java:179)
com.dmdirc.ServerManager.joinDevChat(ServerManager.java:280)
com.dmdirc.addons.ui_swing.components.MenuBar.actionPerformed(MenuBar.java:268)
javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
javax.swing.DefaultButtonModel.setPressed(Unknown Source)
javax.swing.AbstractButton.doClick(Unknown Source)
javax.swing.plaf.basic.BasicMenuItemUI.doClick(Unknown Source)
javax.swing.plaf.basic.BasicMenuItemUI$Handler.menuDragMouseReleased(Unknown Source)
javax.swing.JMenuItem.fireMenuDragMouseReleased(Unknown Source)
javax.swing.JMenuItem.processMenuDragMouseEvent(Unknown Source)
javax.swing.JMenuItem.processMouseEvent(Unknown Source)
javax.swing.MenuSelectionManager.processMouseEvent(Unknown Source)
javax.swing.plaf.basic.BasicPopupMenuUI$MouseGrabber.eventDispatched(Unknown Source)
java.awt.Toolkit$SelectiveAWTEventListener.eventDispatched(Unknown Source)
java.awt.Toolkit$ToolkitEventMulticaster.eventDispatched(Unknown Source)
java.awt.Toolkit.notifyAWTEventListeners(Unknown Source)
java.awt.Component.dispatchEventImpl(Unknown Source)
java.awt.Container.dispatchEventImpl(Unknown Source)
java.awt.Component.dispatchEvent(Unknown Source)
java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
java.awt.Container.dispatchEventImpl(Unknown Source)
java.awt.Window.dispatchEventImpl(Unknown Source)
java.awt.Component.dispatchEvent(Unknown Source)
java.awt.EventQueue.dispatchEvent(Unknown Source)
com.dmdirc.addons.ui_swing.DMDircEventQueue.dispatchEvent(DMDircEventQueue.java:79)
java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
java.awt.EventDispatchThread.pumpEvents(Unknown Source)
java.awt.EventDispatchThread.pumpEvents(Unknown Source)
java.awt.EventDispatchThread.run(Unknown Source)
Needs unit test no
Upstream Bug URL

Relationships

Notes

(0009783)
MD87 (administrator)
2010-02-08 09:19

You need to catch LinkageError there, I guess

A patchset (1) related to this change has been added to gerrit by Shane Mc Cormack

I guess this fixes issue 3747

Change-Id: I35fc3860776796b5d925a9bd176ec3e7a0ca89ca
authorShane Mc Cormack <shane@dmdirc.com>2010-02-08 22:52:12 (GMT)
committer Gregory Holmes <greg@dmdirc.com>2010-02-08 23:16:28 (GMT)
commit9b93c05954458d82e0a2e2aa0d7233ef12e18c05 (patch) (side-by-side diff)
I guess this fixes issue 3747
Change-Id: I35fc3860776796b5d925a9bd176ec3e7a0ca89ca Reviewed-on: http://gerrit.dmdirc.com/872 Reviewed-by: Gregory Holmes <greg@dmdirc.com> Automatic-Compile: Gregory Holmes <greg@dmdirc.com>
-rw-r--r--src/com/dmdirc/parser/irc/IRCParser.java2
1 files changed, 1 insertions, 1 deletions
Click to Expand/Collapse
diff src/com/dmdirc/parser/irc/IRCParser.java
@@ -1321,7 +1321,7 @@ public class IRCParser implements SecureParser, Runnable {
final StringBuilder builder = new StringBuilder(chanPrefix.size());
- for (Character prefix : chanPrefix) {
+ for (Character prefix : new LinkedList<Character>(chanPrefix)) {
builder.append(prefix);
}
(0009913)
Greboid (administrator)
2010-02-18 20:14

Comitted against the wrong issue

A patchset (1) related to this change has been added to gerrit by Gregory Holmes

Catch LinkageError not NoClassDefError when loading plugin classes

Fixes issue 3747

Change-Id: I483f37b7742acbf8156cef8d70da8501e4282e28
authorGregory Holmes <greg@dmdirc.com>2010-02-27 20:29:30 (GMT)
committer Chris Smith <chris@dmdirc.com>2010-02-27 20:36:35 (GMT)
commita88a52af5b8a2e26566ee0e2f6f7e1960551cc50 (patch) (side-by-side diff)
Catch LinkageError not NoClassDefError when loading plugin classes
Fixes issue 3747 Change-Id: I483f37b7742acbf8156cef8d70da8501e4282e28 Reviewed-on: http://gerrit.dmdirc.com/930 Reviewed-by: Chris Smith <chris@dmdirc.com> Automatic-Compile: DMDirc Local Commits <dmdirc@googlemail.com>
-rw-r--r--src/com/dmdirc/plugins/PluginClassLoader.java2
1 files changed, 1 insertions, 1 deletions
Click to Expand/Collapse
diff src/com/dmdirc/plugins/PluginClassLoader.java
@@ -161,7 +161,7 @@ public class PluginClassLoader extends ClassLoader {
} else {
loadedClass = defineClass(name, data, 0, data.length);
}
- } catch (NoClassDefFoundError e) {
+ } catch (LinkageError e) {
throw new ClassNotFoundException(e.getMessage(), e);
}

Issue History

Date Modified Username Field Change
2010-02-07 21:07 Error Reporter New Issue
2010-02-07 21:07 Error Reporter Status new => assigned
2010-02-07 21:07 Error Reporter Assigned To => Dataforce
2010-02-08 09:19 MD87 Note Added: 0009783
2010-02-08 09:19 MD87 View Status private => public
2010-02-08 22:52 Version Control Checkin
2010-02-08 22:52 Version Control Note Added: 0009800
2010-02-08 22:52 Version Control Status assigned => fix pending
2010-02-08 23:17 Dataforce Checkin
2010-02-08 23:17 Dataforce Note Added: 0009801
2010-02-08 23:17 Dataforce Status fix pending => resolved
2010-02-08 23:17 Dataforce Resolution open => fixed
2010-02-18 20:14 Greboid Note Added: 0009913
2010-02-18 20:14 Greboid Status resolved => assigned
2010-02-18 20:14 Greboid Resolution fixed => reopened
2010-02-27 20:30 Greboid Assigned To Dataforce => Greboid
2010-02-27 20:30 Version Control Checkin
2010-02-27 20:30 Version Control Note Added: 0010003
2010-02-27 20:30 Version Control Status assigned => fix pending
2010-02-27 20:37 Greboid Checkin
2010-02-27 20:37 Greboid Note Added: 0010005
2010-02-27 20:37 Greboid Status fix pending => resolved
2010-02-27 20:37 Greboid Resolution reopened => fixed
2010-03-06 21:32 Greboid Status resolved => closed