Modify

Opened 5 weeks ago

Last modified 5 weeks ago

#17480 new defect

"java.lang.IllegalArgumentException: Invalid scanline stride" in PicLayer when loading a large image

Reported by: richlv Owned by: Larry0ua
Priority: normal Milestone:
Component: Plugin piclayer Version: tested
Keywords: exception javabug Cc:

Description

Attempting to load a 223MB PNG image:

URL:https://josm.openstreetmap.de/svn/trunk
Repository:UUID: 0c6e7542-c601-0410-84e7-c038aed88b3b
Last:Changed Date: 2019-03-03 00:16:03 +0100 (Sun, 03 Mar 2019)
Build-Date:2019-03-02 23:16:53
Revision:14824
Relative:URL: ^/trunk

Identification: JOSM/1.5 (14824 en) Linux openSUSE Tumbleweed
Memory Usage: 447 MB / 910 MB (98 MB allocated, but free)
Java version: 1.8.0_191-b12, Oracle Corporation, OpenJDK 64-Bit Server VM
Screen: :0.0 1680x1050
Maximum Screen Size: 1680x1050
Java package: java-1_8_0-openjdk:x86_64-1.8.0.191
VM arguments: [-Djava.net.useSystemProxies=true]
Dataset consistency test: No problems found

Plugins:
+ AddrInterpolation (34867)
+ ColumbusCSV (34867)
+ DxfImport (1013)
+ HouseNumberTaggingTool (34867)
+ InfoMode (34755)
+ Mapillary (1.5.18)
+ PicLayer (34867)
+ apache-commons (34506)
+ apache-http (34632)
+ ejml (34389)
+ geotools (34513)
+ graphview (34867)
+ jaxb (34678)
+ jna (34867)
+ jts (34524)
+ log4j (34527)
+ measurement (34867)
+ opendata (34911)
+ pbf (34867)
+ photo_geotagging (34867)
+ photoadjust (34867)
+ reverter (34867)
+ terracer (34867)
+ utilsplugin2 (34915)

Map paint styles:
- https://josm.openstreetmap.de/josmfile?page=Styles/Lane_and_Road_Attributes&zip=1

Last errors/warnings:
- W: No configuration settings found.  Using hardcoded default values for all pools.
- E: Handled by bug report queue: java.lang.IllegalArgumentException: Invalid scanline stride


=== REPORTED CRASH DATA ===
BugReportExceptionHandler#handleException:
No data collected.

Warning issued by: BugReportExceptionHandler#handleException

=== STACK TRACE ===
Thread: AWT-EventQueue-0 (14) of main
java.lang.IllegalArgumentException: Invalid scanline stride
	at java.awt.image.ComponentSampleModel.getBufferSize(ComponentSampleModel.java:274)
	at java.awt.image.ComponentSampleModel.verify(ComponentSampleModel.java:252)
	at java.awt.image.ComponentSampleModel.<init>(ComponentSampleModel.java:170)
	at java.awt.image.PixelInterleavedSampleModel.<init>(PixelInterleavedSampleModel.java:87)
	at java.awt.image.PixelInterleavedSampleModel.createCompatibleSampleModel(PixelInterleavedSampleModel.java:144)
	at javax.imageio.ImageTypeSpecifier.getSampleModel(ImageTypeSpecifier.java:1039)
	at javax.imageio.ImageTypeSpecifier.createBufferedImage(ImageTypeSpecifier.java:1072)
	at javax.imageio.ImageReader.getDestination(ImageReader.java:2892)
	at com.sun.imageio.plugins.png.PNGImageReader.readImage(PNGImageReader.java:1317)
	at com.sun.imageio.plugins.png.PNGImageReader.read(PNGImageReader.java:1614)
	at javax.imageio.ImageIO.read(ImageIO.java:1448)
	at javax.imageio.ImageIO.read(ImageIO.java:1308)
	at org.openstreetmap.josm.plugins.piclayer.layer.PicLayerFromFile.createImage(PicLayerFromFile.java:86)
	at org.openstreetmap.josm.plugins.piclayer.layer.PicLayerAbstract.initialize(PicLayerAbstract.java:156)
	at org.openstreetmap.josm.plugins.piclayer.actions.newlayer.NewLayerFromFileAction.addNewLayerFromFile(NewLayerFromFileAction.java:134)
	at org.openstreetmap.josm.plugins.piclayer.actions.newlayer.NewLayerFromFileAction.actionPerformed(NewLayerFromFileAction.java:125)
	at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2022)
	at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2348)
	at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
	at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
	at javax.swing.AbstractButton.doClick(AbstractButton.java:376)
	at javax.swing.plaf.basic.BasicMenuItemUI.doClick(BasicMenuItemUI.java:842)
	at javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(BasicMenuItemUI.java:886)
	at java.awt.Component.processMouseEvent(Component.java:6539)
	at javax.swing.JComponent.processMouseEvent(JComponent.java:3315)
	at java.awt.Component.processEvent(Component.java:6304)
	at java.awt.Container.processEvent(Container.java:2239)
	at java.awt.Component.dispatchEventImpl(Component.java:4889)
	at java.awt.Container.dispatchEventImpl(Container.java:2297)
	at java.awt.Component.dispatchEvent(Component.java:4711)
	at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4904)
	at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4535)
	at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4476)
	at java.awt.Container.dispatchEventImpl(Container.java:2283)
	at java.awt.Window.dispatchEventImpl(Window.java:2746)
	at java.awt.Component.dispatchEvent(Component.java:4711)
	at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:760)
	at java.awt.EventQueue.access$500(EventQueue.java:97)
	at java.awt.EventQueue$3.run(EventQueue.java:709)
	at java.awt.EventQueue$3.run(EventQueue.java:703)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:84)
	at java.awt.EventQueue$4.run(EventQueue.java:733)
	at java.awt.EventQueue$4.run(EventQueue.java:731)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
	at java.awt.EventQueue.dispatchEvent(EventQueue.java:730)
	at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:205)
	at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
	at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)

Attachments (0)

Change History (2)

comment:1 Changed 5 weeks ago by richlv

There were similar reports earlier:

  • #12544 - while it talks about splitting the image, that's only a workaround.
  • #15071 - talks about GeoTIFF being unsupported, not directly related.

https://github.com/haraldk/TwelveMonkeys/issues/398 talks about providing a better error message (in another project) instead of exception-ing.

Last edited 5 weeks ago by richlv (previous) (diff)

comment:2 Changed 5 weeks ago by Don-vip

Keywords: javabug added

Modify Ticket

Change Properties
Set your email in Preferences
Action
as new The owner will remain Larry0ua.
as The resolution will be set.
to The owner will be changed from Larry0ua to the specified user.
The owner will change to richlv
as duplicate The resolution will be set to duplicate.The specified ticket will be cross-referenced with this ticket
The owner will be changed from Larry0ua to anonymous.

Add Comment


E-mail address and name can be saved in the Preferences.

 
Note: See TracTickets for help on using tickets.