Java apps crash under XMir trying to set a custom cursor

Bug #1232471 reported by Giuseppe Fierro
144
This bug affects 24 people
Affects Status Importance Assigned to Milestone
JOSM
Unknown
High
OpenJDK
New
Undecided
Unassigned
openjdk-8 (Ubuntu)
Confirmed
Undecided
Unassigned
xorg-server (Ubuntu)
Invalid
High
Unassigned

Bug Description

Java apps crash under XMir (cannot load system cursor)

ORIGINAL DESCRIPTION:
When i run XMir an Unity System Compositor, java based applications JetBrains PyCharm and IntelliJ (those i've tested) don't work correctly.
At this time i haven't tested Elicpse or NetBeans so i don't know if is general problem with OpenJDK.

Tags: cursor xmir
Revision history for this message
Giuseppe Fierro (gspe) wrote :

This is an error message that i get from IntelliJ running on XMir

createComponent() returns null for: class com.intellij.designer.palette.PaletteToolWindowManager

Revision history for this message
Giuseppe Fierro (gspe) wrote :

this is the errors that i get when i run IntelliJ from command line

Revision history for this message
Giuseppe Fierro (gspe) wrote :

This bug also affect Scilab ( i've tested 5.4.1)

scinotes()
           !--error 999
editor: java.lang.reflect.InvocationTargetException
in execstr instruction called by :
at line 14 of function editor called by :
8b0bd:141b85f70f0:-7fe5");editor();;if exists("%oldgcbo") then gcbo =
while executing a callback

Revision history for this message
Giuseppe Fierro (gspe) wrote :
Download full text (8.7 KiB)

Eclipse also doesn't works correctly, the

/opt/eclipse-cpp$ ./eclipse -consoleLog
!SESSION 2013-10-14 21:55:25.060 -----------------------------------------------
eclipse.buildId=4.3.0.M20130911-1000
java.version=1.7.0_25
java.vendor=Oracle Corporation
BootLoader constants: OS=linux, ARCH=x86_64, WS=gtk, NL=en_US
Framework arguments: -product org.eclipse.epp.package.cpp.product
Command-line arguments: -os linux -ws gtk -arch x86_64 -product org.eclipse.epp.package.cpp.product -consoleLog

!ENTRY org.eclipse.jface 2 0 2013-10-14 21:57:42.934
!MESSAGE Keybinding conflicts occurred. They may interfere with normal accelerator operation.
!SUBENTRY 1 org.eclipse.jface 2 0 2013-10-14 21:57:42.938
!MESSAGE A conflict occurred for ALT+CTRL+I:
Binding(ALT+CTRL+I,
 ParameterizedCommand(Command(org.eclipse.cdt.ui.edit.open.include.browser,Open Include Browser,
  Open an include browser on the selected element,
  Category(org.eclipse.ui.category.navigate,Navigate,null,true),
  org.eclipse.ui.internal.WorkbenchHandlerServiceHandler@401daa3f,
  ,,true),null),
 org.eclipse.ui.defaultAcceleratorConfiguration,
 org.eclipse.cdt.ui.cEditorScope,,,system)
Binding(ALT+CTRL+I,
 ParameterizedCommand(Command(org.eclipse.cdt.ui.edit.open.include.browser,Open Include Browser,
  Open an include browser on the selected element,
  Category(org.eclipse.ui.category.navigate,Navigate,null,true),
  org.eclipse.ui.internal.WorkbenchHandlerServiceHandler@401daa3f,
  ,,true),null),
 org.eclipse.ui.defaultAcceleratorConfiguration,
 org.eclipse.cdt.ui.cViewScope,,,system)
!SUBENTRY 1 org.eclipse.jface 2 0 2013-10-14 21:57:42.942
!MESSAGE A conflict occurred for ALT+SHIFT+R:
Binding(ALT+SHIFT+R,
 ParameterizedCommand(Command(org.eclipse.cdt.ui.edit.text.rename.element,Rename - Refactoring ,
  Rename the selected element,
  Category(org.eclipse.cdt.ui.category.refactoring,Refactor - C++,C/C++ Refactorings,true),
  org.eclipse.ui.internal.WorkbenchHandlerServiceHandler@5b942efb,
  ,,true),null),
 org.eclipse.ui.defaultAcceleratorConfiguration,
 org.eclipse.cdt.ui.cEditorScope,,,system)
Binding(ALT+SHIFT+R,
 ParameterizedCommand(Command(org.eclipse.cdt.ui.edit.text.rename.element,Rename - Refactoring ,
  Rename the selected element,
  Category(org.eclipse.cdt.ui.category.refactoring,Refactor - C++,C/C++ Refactorings,true),
  org.eclipse.ui.internal.WorkbenchHandlerServiceHandler@5b942efb,
  ,,true),null),
 org.eclipse.ui.defaultAcceleratorConfiguration,
 org.eclipse.cdt.ui.cViewScope,,,system)
!SUBENTRY 1 org.eclipse.jface 2 0 2013-10-14 21:57:42.948
!MESSAGE A conflict occurred for F3:
Binding(F3,
 ParameterizedCommand(Command(org.eclipse.cdt.ui.edit.opendecl,Open Declaration,
  Open an editor on the selected element's declaration(s),
  Category(org.eclipse.cdt.ui.category.source,Source,Source commands,true),
  org.eclipse.ui.internal.WorkbenchHandlerServiceHandler@5d988fb5,
  ,,true),null),
 org.eclipse.ui.defaultAcceleratorConfiguration,
 org.eclipse.cdt.ui.cEditorScope,,,system)
Binding(F3,
 ParameterizedCommand(Command(org.eclipse.cdt.ui.edit.opendecl,Open Declaration,
  Open an editor on the selected element's declaration(s),
  Category(org.eclipse.cdt.ui.category.source,So...

Read more...

Revision history for this message
Giuseppe Fierro (gspe) wrote :

muCommander doesn't start too.
http://www.mucommander.com/index.php#download

This is the error that i get.

java.lang.ExceptionInInitializerError
 at com.mucommander.ui.dnd.FileDragSourceListener.enableDrag(FileDragSourceListener.java:66)
 at com.mucommander.ui.main.FolderPanel.<init>(FolderPanel.java:250)
 at com.mucommander.ui.main.MainFrame.<init>(MainFrame.java:301)
 at com.mucommander.ui.main.WindowManager.createNewMainFrame(WindowManager.java:377)
 at com.mucommander.ui.main.WindowManager.createNewMainFrame(WindowManager.java:344)
 at com.mucommander.Launcher.main(Launcher.java:580)
Caused by: java.lang.RuntimeException: failed to load system cursor: DnD.Cursor.CopyDrop : cannot load system cursor: CopyDrop.32x32
 at java.awt.dnd.DragSource.load(DragSource.java:135)
 at java.awt.dnd.DragSource.<clinit>(DragSource.java:147)
 ... 6 more

Revision history for this message
bademux (bademux) wrote :

Have problem with AndroidStrudio v0.3.1

Revision history for this message
bademux (bademux) wrote :

Step to reproduce:
1. Download and install Intelij idea http://www.jetbrains.com/idea/download/ (AndroidStrudio\PyCharm are based on Intelij idea)
2. Create new project (for ex. simple java project) or import the existed one

Ref: https://answers.launchpad.net/ubuntu/+question/236451

Env:
JDK: 1.7.0_45
Java HotSpot(TM) 64-Bit Server VM (JDK: 1.7.0_45 )

My software:
 Ubuntu 13.10\XMir (2:1.14.3-3ubuntu2)

My hardware:
Monitor is connected over HDMI
CPU:
 Intel(R) Core(TM) i5-3450S CPU
# lshw -c video
  *-display
       description: VGA...

Changed in xmir:
status: New → Confirmed
description: updated
Revision history for this message
Emmanuel Castro (emmanuel-castro) wrote :

Very probably the same bug as https://bugs.launchpad.net/unity-mir/+bug/1250613 (Java applications are missing X11 resources - XQueryBestCursor return 0,0)

summary: - JetBrains PyCharm and IntelliJ don't work on XMir
+ Java apps crash under XMir [java.lang.RuntimeException: failed to load
+ system cursor: DnD.Cursor.CopyDrop : cannot load system cursor:
+ CopyDrop.32x32]
Changed in xmir:
importance: Undecided → High
Revision history for this message
Daniel van Vugt (vanvugt) wrote : Re: Java apps crash under XMir [java.lang.RuntimeException: failed to load system cursor: DnD.Cursor.CopyDrop : cannot load system cursor: CopyDrop.32x32]

Confirmed via numerous bug reports. Java is very unhappy under XMir.

This would be a bug in Java, where it is unable to deal with the Xorg software cursor. Which is a problem unrelated to Mir really. Mir just puts X in a (valid) mode where the bug is triggered.

Although, we could work around the Java bug by implementing full hardware cursor support in XMir...
https://bugs.launchpad.net/xmir/+bugs?field.tag=cursor

tags: added: cursor
description: updated
Revision history for this message
Andrew Hawkins (akai-kenshi) wrote :

Minecraft also crashes. Attached is the automatically generated crash report.

summary: - Java apps crash under XMir [java.lang.RuntimeException: failed to load
- system cursor: DnD.Cursor.CopyDrop : cannot load system cursor:
- CopyDrop.32x32]
+ Java apps crash under XMir trying to set a custom cursor
Revision history for this message
Derrick Hammer (pcfreak30) wrote :

So far all Jetbrains java-based products crash for me. I am running a remote desktop on a KVM virtual machine, and using the vnc with libvirt as well as nomachine software gives me this result. I have had some success somehow with Xvnc in the past.

Revision history for this message
Derrick Hammer (pcfreak30) wrote :

It seems you can workaround the whole issue by doing a x11 forwarding ssh session to yourself. Use "ssh -X localhost" then run the program. Not sure why this works, but I am not complaining!

affects: xmir → xorg-server (Ubuntu)
tags: added: xmir
Revision history for this message
Daniel van Vugt (vanvugt) wrote :

XMir 1.0 (the old Xorg extension) is now deprecated and is not being maintained or fixed. It is replaced by the new 'Xmir' binary (package 'xmir') introduced in Ubuntu 15.10 wily.

Is there any way to reproduce this bug without the old Xmir?

Changed in xorg-server (Ubuntu):
status: Confirmed → Incomplete
Revision history for this message
Daniel van Vugt (vanvugt) wrote :

Note: The new Xmir uses the hardware cursor (where available on desktop). So if this bug still exists at all, it would only be on mobile (Android Mir platform).

Revision history for this message
Daniel van Vugt (vanvugt) wrote :

Closed due to inactivity.

Changed in xorg-server (Ubuntu):
status: Incomplete → Invalid
Revision history for this message
Benoît (bendube1999) wrote :

I don't understand why this bug is closed. Many Java apps failed on Ubuntu (I was on 14.04LTS & now 16.04LTS) and the bug is always present.

I got the bug with Freemind 1.0.1 and Freeplane 1.3.15-3.

Theses are the last messages when starting Freeplane:

STDERR: at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
STDERR: at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
STDERR: at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)
STDERR: Caused by: java.lang.RuntimeException: failed to load system cursor: DnD.Cursor.CopyDrop : cannot load system cursor: CopyDrop.32x32
STDERR: at java.awt.dnd.DragSource.load(DragSource.java:135)
STDERR: at java.awt.dnd.DragSource.<clinit>(DragSource.java:148)

Revision history for this message
Daniel van Vugt (vanvugt) wrote :

The old XMir is not being supported or maintained as mentioned 11 months ago in comment #13.

Revision history for this message
Felix Natter (fnatter) wrote :
Download full text (4.1 KiB)

I also see this on Debian unstable, so it most probably not
an issue with a Ubuntu specific x server:

java.lang.RuntimeException: cannot load system cursor: CopyDrop.32x32
 at sun.awt.X11.XToolkit.lazilyLoadDesktopProperty(XToolkit.java:1541)
 at java.awt.Toolkit.getDesktopProperty(Toolkit.java:1803)
 at java.awt.dnd.DragSource.load(DragSource.java:131)
 at java.awt.dnd.DragSource.<clinit>(DragSource.java:148)
 at org.jajuk.ui.helpers.TableTransferHandler.<init>(Unknown Source)
 at org.jajuk.ui.helpers.PlaylistEditorTransferHandler.<init>(Unknown Source)
 at org.jajuk.ui.views.QueueView.initUI(Unknown Source)
 at org.jajuk.ui.perspectives.PerspectiveManager.setCurrentPerspective(Unknown Source)
 at org.jajuk.ui.perspectives.PerspectiveManager.init(Unknown Source)
 at org.jajuk.ui.windows.JajukMainWindow.initUI(Unknown Source)
 at org.jajuk.ui.windows.WindowStateDecorator.display(Unknown Source)
 at org.jajuk.services.startup.StartupGUIService$6.run(Unknown Source)
 at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:311)
 at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:756)
 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:80)
 at java.awt.EventQueue.dispatchEvent(EventQueue.java:726)
 at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
 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)
Caused by: java.awt.AWTException: Exception: class java.lang.IllegalArgumentException Width (0) and height (0) must be non-zero occurred while creating cursor CopyDrop.32x32
 at java.awt.Cursor.getSystemCustomCursor(Cursor.java:363)
 at sun.awt.X11.XToolkit.lazilyLoadDesktopProperty(XToolkit.java:1539)
 ... 25 more
Exception in thread "AWT-EventQueue-0" java.lang.ExceptionInInitializerError
 at org.jajuk.ui.helpers.TableTransferHandler.<init>(Unknown Source)
 at org.jajuk.ui.helpers.PlaylistEditorTransferHandler.<init>(Unknown Source)
 at org.jajuk.ui.views.QueueView.initUI(Unknown Source)
 at org.jajuk.ui.perspectives.PerspectiveManager.setCurrentPerspective(Unknown Source)
 at org.jajuk.ui.perspectives.PerspectiveManager.init(Unknown Source)
 at org.jajuk.ui.windows.JajukMainWindow.initUI(Unknown Source)
 at org.jajuk.ui.windows.WindowStateDecorator.display(Unknown Source)
 at org.jajuk.services.startup.StartupGUIService$6.run(Unknown Source)
 at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:311)
 at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:756)
 at java.awt.EventQueue.access$500(EventQueue.java:97)
 at java.awt.EventQueue$3.run(EventQueue.java:709)
 at java.awt.EventQueue$3.run(Even...

Read more...

Changed in xorg-server (Ubuntu):
status: Invalid → In Progress
Revision history for this message
Daniel van Vugt (vanvugt) wrote :

Thanks. That just confirms a bug on the Java side, but not Xmir:

Caused by: java.awt.AWTException: Exception: class java.lang.IllegalArgumentException Width (0) and height (0) must be non-zero occurred while creating cursor CopyDrop.32x32

I suggest you log a bug against the application that crashed, or the JRE etc.

Changed in xorg-server (Ubuntu):
status: In Progress → Invalid
Don-vip (vincent-privat)
Changed in josm:
importance: Unknown → High
Revision history for this message
Don-vip (vincent-privat) wrote :

Confirmed, this is an OpenJDK bug: https://bugs.openjdk.java.net/browse/JDK-8173853
Fixed in 8u152 and 9.

Revision history for this message
Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in openjdk-8 (Ubuntu):
status: New → Confirmed
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.