Opened 15 years ago
Last modified 14 years ago
#5632 closed defect
crash during update of large dataset — at Version 2
| Reported by: | vpbroman | Owned by: | team |
|---|---|---|---|
| Priority: | normal | Milestone: | |
| Component: | Core | Version: | tested |
| Keywords: | Cc: |
Description (last modified by )
Josm crashed when editing a 152 Mb section of san diego, california
the first thing I did after opening the file was requesting
an update of all the data, which came in 12 sections,
during the fifth or sixth, the progress stopped and I got
the crash dialog inviting me to submit a bug report.
This is on Fedora 12 with current updates.
Repository Root: http://josm.openstreetmap.de/svn Build-Date: 2010-10-06 01:31:17 Last Changed Author: bastiK Revision: 3592 Repository UUID: 0c6e7542-c601-0410-84e7-c038aed88b3b URL: http://josm.openstreetmap.de/svn/trunk Last Changed Date: 2010-10-05 20:34:31 +0200 (Tue, 05 Oct 2010) Last Changed Rev: 3592 Identification: JOSM/1.5 (3592 en) Memory Usage: 317 MB / 508 MB (94 MB allocated, but free) Java version: 1.6.0_18, Sun Microsystems Inc., OpenJDK Client VM Operating system: Linux Dataset consistency test: No problems found Plugin: ImportImagePlugin (23305) Plugin: livegps (21706) Plugin: measurement (22547) Plugin: openvisible (21706) Plugin: osmarender (22765) Plugin: routing (22549) Plugin: slippymap (22848) Plugin: turnrestrictions (24125) Plugin: validator (23917) Plugin: wmsplugin (23904) java.lang.ClassCastException: javax.swing.JLabel cannot be cast to javax.swing.text.JTextComponent at javax.swing.text.html.EditableView.paint(EditableView.java:76) at javax.swing.text.BoxView.paintChild(BoxView.java:161) at javax.swing.text.BoxView.paint(BoxView.java:433) at javax.swing.text.BoxView.paintChild(BoxView.java:161) at javax.swing.text.BoxView.paint(BoxView.java:433) at javax.swing.text.ParagraphView.paint(ParagraphView.java:604) at javax.swing.text.html.ParagraphView.paint(ParagraphView.java:241) at javax.swing.text.BoxView.paintChild(BoxView.java:161) at javax.swing.text.BoxView.paint(BoxView.java:433) at javax.swing.text.html.BlockView.paint(BlockView.java:282) at javax.swing.text.BoxView.paintChild(BoxView.java:161) at javax.swing.text.BoxView.paint(BoxView.java:433) at javax.swing.text.html.BlockView.paint(BlockView.java:282) at javax.swing.plaf.basic.BasicHTML$Renderer.paint(BasicHTML.java:481) at javax.swing.plaf.synth.SynthGraphicsUtils.paintText(SynthGraphicsUtils.java:405) at javax.swing.plaf.synth.SynthLabelUI.paint(SynthLabelUI.java:181) at javax.swing.plaf.synth.SynthLabelUI.update(SynthLabelUI.java:162) at javax.swing.JComponent.paintComponent(JComponent.java:765) at javax.swing.JComponent.paint(JComponent.java:1029) at javax.swing.JComponent.paintChildren(JComponent.java:866) at javax.swing.JComponent.paint(JComponent.java:1038) at javax.swing.JComponent.paintChildren(JComponent.java:866) at javax.swing.JComponent.paint(JComponent.java:1038) at javax.swing.JComponent.paintChildren(JComponent.java:866) at javax.swing.JComponent.paint(JComponent.java:1038) at javax.swing.JComponent.paintChildren(JComponent.java:866) at javax.swing.JComponent.paint(JComponent.java:1038) at javax.swing.JComponent.paintChildren(JComponent.java:866) at javax.swing.JComponent.paint(JComponent.java:1038) at javax.swing.JComponent.paintChildren(JComponent.java:866) at javax.swing.JComponent.paint(JComponent.java:1038) at javax.swing.JLayeredPane.paint(JLayeredPane.java:581) at javax.swing.JComponent.paintChildren(JComponent.java:866) at javax.swing.JComponent.paintToOffscreen(JComponent.java:5145) at javax.swing.BufferStrategyPaintManager.paint(BufferStrategyPaintManager.java:302) at javax.swing.RepaintManager.paint(RepaintManager.java:1145) at javax.swing.JComponent.paint(JComponent.java:1015) at java.awt.GraphicsCallback$PaintCallback.run(GraphicsCallback.java:39) at sun.awt.SunGraphicsCallback.runOneComponent(SunGraphicsCallback.java:78) at sun.awt.SunGraphicsCallback.runComponents(SunGraphicsCallback.java:115) at java.awt.Container.paint(Container.java:1844) at javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:751) at javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:696) at javax.swing.RepaintManager.prePaintDirtyRegions(RepaintManager.java:676) at javax.swing.RepaintManager.access$700(RepaintManager.java:57) at javax.swing.RepaintManager$ProcessingRunnable.run(RepaintManager.java:1550) at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:226) at java.awt.EventQueue.dispatchEvent(EventQueue.java:602) at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:275) at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:200) at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:194) at java.awt.Dialog$1.run(Dialog.java:1072) at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:226) at java.awt.EventQueue.dispatchEvent(EventQueue.java:602) at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:275) at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:200) at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:194) at java.awt.Dialog$1.run(Dialog.java:1072) at java.awt.Dialog$3.run(Dialog.java:1126) at java.security.AccessController.doPrivileged(Native Method) at java.awt.Dialog.show(Dialog.java:1124) at java.awt.Component.show(Component.java:1464) at java.awt.Component.setVisible(Component.java:1416) at java.awt.Window.setVisible(Window.java:842) at java.awt.Dialog.setVisible(Dialog.java:1011) at org.openstreetmap.josm.gui.progress.PleaseWaitProgressMonitor$3.run(PleaseWaitProgressMonitor.java:83) at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:226) at java.awt.EventQueue.dispatchEvent(EventQueue.java:602) at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:275) at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:200) at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:190) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:185) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:177) at java.awt.EventDispatchThread.run(EventDispatchThread.java:138)
Change History (2)
comment:1 by , 15 years ago
| Resolution: | → irreproducible |
|---|---|
| Status: | new → closed |
comment:2 by , 14 years ago
| Description: | modified (diff) |
|---|---|
| Resolution: | irreproducible |
| Status: | closed → reopened |
Note:
See TracTickets
for help on using tickets.



there is a netbeans bug with this error, the fix was this:
changeset: 151796:29830b12c0f5 user: Tomas Stupka <tstupka@netbeans.org> date: Mon Nov 02 12:05:38 2009 +0100 summary: #175911 - ClassCastException: javax.swing.JLabel cannot be cast to javax.swing.text.JTextComponent diff -r ab81f0bfd03f -r 29830b12c0f5 bugtracking/src/org/netbeans/modules/bugtracking/ui/search/PopupItem.java --- a/bugtracking/src/org/netbeans/modules/bugtracking/ui/search/PopupItem.java Mon Nov 02 11:20:40 2009 +0100 +++ b/bugtracking/src/org/netbeans/modules/bugtracking/ui/search/PopupItem.java Mon Nov 02 12:05:38 2009 +0100 @@ -40,6 +40,7 @@ package org.netbeans.modules.bugtracking.ui.search; import org.netbeans.modules.bugtracking.spi.Issue; +import org.netbeans.modules.bugtracking.util.TextUtils; /** * @@ -71,6 +72,9 @@ if(text == null || text.trim().equals("")) return displayText; // NOI18N StringBuffer sb = new StringBuffer(); + text = TextUtils.escapeForHTMLLabel(text); + displayText = TextUtils.escapeForHTMLLabel(displayText); + String displayTextLower = displayText.toLowerCase(); String textLower = text.toLowerCase(); int idx = displayTextLower.indexOf(textLower);with
/** * Replaces problematic characters by escape sequences. * This method is designed for text that should appear * in HTML label. * * @param text text to process. * @return text with correct escape sequences. */ public static String escapeForHTMLLabel(String text) { StringBuilder sb = new StringBuilder(); for (int i=0; i<text.length(); i++) { char c = text.charAt(i); switch (c) { case '<': sb.append("<"); break; // NOI18N case '>': sb.append(">"); break; // NOI18N default: sb.append(c); } } return sb.toString(); }however I have no clue how this can happen at the 5th of 12 updates. Maybe the api returned unexpected data?