Bug 1429 - JOGL incompatible with SWT 4.20
Summary: JOGL incompatible with SWT 4.20
Status: UNCONFIRMED
Alias: None
Product: Jogl
Classification: JogAmp
Component: swt (show other bugs)
Version: 2.4.0
Hardware: All linux
: P4 normal
Assignee: Sven Gothel
URL:
Depends on:
Blocks:
 
Reported: 2022-06-22 13:04 CEST by Peter Chang
Modified: 2022-06-22 13:04 CEST (History)
0 users

See Also:
Type: DEFECT
SCM Refs:
Workaround: ---


Attachments
Diff to patch SWTAccessor (3.02 KB, patch)
2022-06-22 13:04 CEST, Peter Chang
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Peter Chang 2022-06-22 13:04:34 CEST
Created attachment 855 [details]
Diff to patch SWTAccessor

We updated the target platform to 2021-09 for our Eclipse RCP application that uses JOGL (via Jzy3d) and found an issue.

When JOGL's SWTAccessor class is loaded (for a NewtCanvasSWT or GLCanvas), it initializes some field to point to methods in SWT's internal classes. The recent release of SWT 4.20 separated some gtk methods off to gtk3 and gtk4 specific bindings. This breaks the initialization code when looking for gtk_widget_get_window.

A patch from https://github.com/sgothel/jogl/pull/108 to fix the issue is attached. This patch adds a check for a gtk3 subpackage and finds the relocated methods in there. Note, this new package was not exported until SWT 4.23 (aka 3.119.0 or v4950) so intervening versions will not work when using OSGi class loading.