BUG DESCRIPTION:
----------------
Plot functions like plot(), plot2d() produce an empty blank window containing no chart nor UI widgets such as "rotate" and "zoom" buttons.
I noticed a java exception is thrown right after plot() is issued; error log follows.
Due to known issues with open source Intel drivers on Linux, I pass the environment variable LIBGL_ALWAYS_SOFTWARE=1 on the command line as suggested here: http://bugzilla.scilab.org/show_bug.cgi?id=12041#c17 . This option has no effect on the chart window, which remains non-functional, and doesn't prevent the java exception.
ERROR LOG:
----------
LIBGL_ALWAYS_SOFTWARE=1 scilab
Fontconfig warning: "/etc/fonts/conf.d/65-droid-sans-fonts.conf", line 103: Having multiple values in <test> isn't supported and may not work as expected
Fontconfig warning: "/etc/fonts/conf.d/65-droid-sans-fonts.conf", line 138: Having multiple values in <test> isn't supported and may not work as expected
Xlib: extension "RANDR" missing on display ":0".
Exception in thread "AWT-EventQueue-0" com.jogamp.opengl.GLException: Caught GLException: FBObject Init.isFB GL Error 0x501 of FBO[name r/w 1/1, init false, bound false, size 610x460, samples 0/0, modified true/true, depth null, stencil null, colorbuffer attachments: 0/8, with 0 textures: [null, null, null, null, null, null, null, null], msaa[null, hasSink false, dirty true], state NOT A FBO, obj 0x164807d]
at com.jogamp.opengl.awt.GLJPanel$OffscreenBackend.initialize(GLJPanel.java:1795)
at com.jogamp.opengl.awt.GLJPanel.initializeBackendImpl(GLJPanel.java:1377)
at com.jogamp.opengl.awt.GLJPanel.paintComponent(GLJPanel.java:549)
at javax.swing.JComponent.paint(JComponent.java:1046)
at javax.swing.JComponent.paintChildren(JComponent.java:879)
at javax.swing.JComponent.paint(JComponent.java:1055)
at javax.swing.JComponent.paintChildren(JComponent.java:879)
at javax.swing.JComponent.paint(JComponent.java:1055)
at javax.swing.JLayeredPane.paint(JLayeredPane.java:585)
at javax.swing.JComponent.paintChildren(JComponent.java:879)
at javax.swing.JComponent.paint(JComponent.java:1055)
at javax.swing.JViewport.paint(JViewport.java:731)
at javax.swing.JComponent.paintChildren(JComponent.java:879)
at javax.swing.JComponent.paint(JComponent.java:1055)
at javax.swing.JComponent.paintToOffscreen(JComponent.java:5212)
at javax.swing.BufferStrategyPaintManager.paint(BufferStrategyPaintManager.java:295)
at javax.swing.RepaintManager.paint(RepaintManager.java:1249)
at javax.swing.JComponent._paintImmediately(JComponent.java:5160)
at javax.swing.JComponent.paintImmediately(JComponent.java:4971)
at javax.swing.RepaintManager$3.run(RepaintManager.java:808)
at javax.swing.RepaintManager$3.run(RepaintManager.java:796)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
at javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:796)
at javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:769)
at javax.swing.RepaintManager.prePaintDirtyRegions(RepaintManager.java:718)
at javax.swing.RepaintManager.access$1100(RepaintManager.java:62)
at javax.swing.RepaintManager$ProcessingRunnable.run(RepaintManager.java:1677)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:312)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:738)
at java.awt.EventQueue.access$300(EventQueue.java:103)
at java.awt.EventQueue$3.run(EventQueue.java:699)
at java.awt.EventQueue$3.run(EventQueue.java:697)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:708)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:242)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:161)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:150)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:146)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:138)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:91)
Caused by: com.jogamp.opengl.GLException: FBObject Init.isFB GL Error 0x501 of FBO[name r/w 1/1, init false, bound false, size 610x460, samples 0/0, modified true/true, depth null, stencil null, colorbuffer attachments: 0/8, with 0 textures: [null, null, null, null, null, null, null, null], msaa[null, hasSink false, dirty true], state NOT A FBO, obj 0x164807d]
at com.jogamp.opengl.FBObject.checkNoError(FBObject.java:1318)
at com.jogamp.opengl.FBObject.init(FBObject.java:1064)
at jogamp.opengl.GLFBODrawableImpl.setupFBO(GLFBODrawableImpl.java:115)
at jogamp.opengl.GLFBODrawableImpl.initialize(GLFBODrawableImpl.java:224)
at jogamp.opengl.GLFBODrawableImpl.associateContext(GLFBODrawableImpl.java:397)
at jogamp.opengl.GLContextImpl.associateDrawable(GLContextImpl.java:849)
at jogamp.opengl.GLContextImpl.makeCurrent(GLContextImpl.java:712)
at jogamp.opengl.GLContextImpl.makeCurrent(GLContextImpl.java:586)
at com.jogamp.opengl.awt.GLJPanel$OffscreenBackend.initialize(GLJPanel.java:1731)
... 41 more
[log cut here]
HOW TO REPRODUCE THE BUG:
-------------------------
OTHER INFORMATION:
------------------
$ scilab -version
Scilab version "5.5.2.1427793548"
scilab-5.5.2
$ glxinfo | grep rendering
direct rendering: Yes
$ java -version
java version "1.7.0_75"
OpenJDK Runtime Environment (IcedTea 2.5.4) (7u75-2.5.4-2)
OpenJDK Server VM (build 24.75-b04, mixed mode)
OS: Debian 'stable'
Xinerame X Window display without RANDR