Please read this before reporting a bug:
https://wiki.archlinux.org/title/Bug_reporting_guidelines
Do NOT report bugs when a package is just outdated, or it is in the AUR. Use the 'flag out of date' link on the package page, or the Mailing List.
REPEAT: Do NOT report bugs for outdated packages!
https://wiki.archlinux.org/title/Bug_reporting_guidelines
Do NOT report bugs when a package is just outdated, or it is in the AUR. Use the 'flag out of date' link on the package page, or the Mailing List.
REPEAT: Do NOT report bugs for outdated packages!
FS#67714 - java8-openjdk source package is incorrect
Attached to Project:
Arch Linux
Opened by Riccardo Paolo Bestetti (vmsh0) - Tuesday, 25 August 2020, 10:07 GMT
Last edited by Levente Polyak (anthraxx) - Wednesday, 26 August 2020, 08:38 GMT
Opened by Riccardo Paolo Bestetti (vmsh0) - Tuesday, 25 August 2020, 10:07 GMT
Last edited by Levente Polyak (anthraxx) - Wednesday, 26 August 2020, 08:38 GMT
|
DetailsDescription:
The source package for java8-openjdk (openjdk8-src) appears to contain the incorrect source code for the respective jre (jre8-openjdk). I noticed this while examining a stack trace. For example, I have the following stack trace: java.lang.NullPointerException at javax.swing.plaf.basic.BasicListUI.convertLocationToRow(BasicListUI.java:1111) at javax.swing.plaf.basic.BasicListUI.convertLocationToModel(BasicListUI.java:1174) at javax.swing.plaf.basic.BasicListUI.locationToIndex(BasicListUI.java:930) at javax.swing.JList.locationToIndex(JList.java:1596) at javax.swing.JList.dropLocationForPoint(JList.java:1270) at javax.swing.JList.dropLocationForPoint(JList.java:282) at javax.swing.TransferHandler$TransferSupport.setDNDVariables(TransferHandler.java:301) at javax.swing.TransferHandler$TransferSupport.access$500(TransferHandler.java:213) at javax.swing.TransferHandler$DropHandler.handleDrag(TransferHandler.java:1466) [...] And as an example, you can open the javax/swing/TransferHandle file and note that none of the three methods in the stack trace (TransferHandler$DropHandler.handleDrag, TransferHandler$TransferSupport.access$500, TransferHandler$TransferSupport.setDNDVariables) are where they are supposed to be. This is not simply a line number mismatch: for example, the TransferHandler$TransferSupport.access$500 method doesn't even appear in the source code. Additional info: * package version(s): latest (8.u262-1) Steps to reproduce: You can use the attached Java class to reproduce my stack trace. Compile and run it, and the try to drag one of the colored rectangles on the GUI around. |
This task depends upon
Closed by Levente Polyak (anthraxx)
Wednesday, 26 August 2020, 08:38 GMT
Reason for closing: Not a bug
Wednesday, 26 August 2020, 08:38 GMT
Reason for closing: Not a bug
scratch_2.java
# archlinux-java set java-8-openjdk
$ javac -version
javac 1.8.0_262
$ java -version
openjdk version "1.8.0_262"
OpenJDK Runtime Environment (build 1.8.0_262-b10)
OpenJDK 64-Bit Server VM (build 25.262-b10, mixed mode)
(I removed the "package" line from the scratch_2.java file for convenience)
$ javac scratch_2.java
$ java scratch_2
(interacted with the software as described, stack trace was printed)
Excerpt from stack trace:
at javax.swing.TransferHandler$TransferSupport.setDNDVariables(TransferHandler.java:301)
at javax.swing.TransferHandler$TransferSupport.access$500(TransferHandler.java:213)
at javax.swing.TransferHandler$DropHandler.handleDrag(TransferHandler.java:1466)
at javax.swing.TransferHandler$DropHandler.dragOver(TransferHandler.java:1496)
$ cp /lib/jvm/java-8-openjdk/src.zip .
$ unzip src.zip
$ vim javax/swing/TransferHandler.java
301gg => line 301 does _not_ contain TransferHandler$TransferSupport.setDNDVariables
213gg => line 213 this one looks ok, TransferSupport.access$500 should indeed point to the inner class
1466gg => line 1466 does _not_ contain TransferHandler$DropHandler.handleDrag
1496gg => line 1496 does _not_ contain TransferHandler$DropHandler.dragOver
You can see the line numbers are not very far away from what they should be (e.g. 1496 looks like it should be 1495, 1466 should probably be 1456). Java 8 was patched but the source code was taken from a different version?
@Levente Polyak: I took a quick look at the PKGBUILD. Yes, what is happening seems impossible. Could you try to reproduce on your system?
This is a bit embarassing. I guess the report can be closed :)