Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 289077

Summary: [PI] missing Cairo library can crash app
Product: [Eclipse Project] Platform Reporter: Grant Gayed <grant_gayed>
Component: SWTAssignee: Platform-SWT-Inbox <platform-swt-inbox>
Status: RESOLVED WONTFIX QA Contact: Bogdan Gheorghe <gheorghe>
Severity: normal    
Priority: P3 CC: remy.suen
Version: 3.5Keywords: triaged
Target Milestone: ---   
Hardware: Sun   
OS: Solaris-GTK   
Whiteboard:

Description Grant Gayed CLA 2009-09-10 10:08:57 EDT
- run the GraphicsExample on Solaris-SPARC
- it doesn't find the native cairo library, so it shows initial dialog "...not found.  Some examples will not display.", which is fine
- most of the examples don't display anything, as expected
- however the Polygons - Star Polygon page causes the app to close with the exception below
- if a client app does something similar to what this tab does we shouldn't make them crash just because cairo was not found

Exception in thread "main" org.eclipse.swt.SWTException: Unable to load graphics library [Cairo is required] (java.lang.NoClassDefFoundError)
	at org.eclipse.swt.SWT.error(SWT.java:3884)
	at org.eclipse.swt.graphics.Device.checkCairo(Device.java:176)
	at org.eclipse.swt.graphics.GC.initCairo(GC.java:2821)
	at org.eclipse.swt.graphics.GC.setFillRule(GC.java:3378)
	at org.eclipse.swt.examples.graphics.StarPolyTab.paint(StarPolyTab.java:63)
	at org.eclipse.swt.examples.graphics.GraphicsExample$3.handleEvent(GraphicsExample.java:200)
	at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1176)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1200)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1185)
	at org.eclipse.swt.widgets.Control.gtk_expose_event(Control.java:2779)
	at org.eclipse.swt.widgets.Composite.gtk_expose_event(Composite.java:670)
	at org.eclipse.swt.widgets.Canvas.gtk_expose_event(Canvas.java:170)
	at org.eclipse.swt.widgets.Widget.windowProc(Widget.java:1566)
	at org.eclipse.swt.widgets.Control.windowProc(Control.java:4587)
	at org.eclipse.swt.widgets.Display.windowProc(Display.java:4191)
	at org.eclipse.swt.internal.gtk.OS._gtk_main_do_event(Native Method)
	at org.eclipse.swt.internal.gtk.OS.gtk_main_do_event(OS.java:7588)
	at org.eclipse.swt.widgets.Display.eventProc(Display.java:1185)
	at org.eclipse.swt.internal.gtk.OS._g_main_context_iteration(Native Method)
	at org.eclipse.swt.internal.gtk.OS.g_main_context_iteration(OS.java:1860)
	at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3110)
	at org.eclipse.swt.examples.graphics.GraphicsExample.main(GraphicsExample.java:643)
Caused by: java.lang.NoClassDefFoundError
	at java.lang.Class.forName0(Native Method)
	at java.lang.Class.forName(Class.java:164)
	at org.eclipse.swt.graphics.Device.checkCairo(Device.java:173)
	... 21 more
Comment 1 Lakshmi P Shanmugam CLA 2017-06-20 02:39:00 EDT
Solaris is no longer a supported platform.