Skip to content

Commit 419c6fe

Browse files
committed
Disable BurningWave initialization by default #1305
BurningWave is using Unsafe to break the module system introduced with Java 9, in order to allow WindowBuilder to access the internal Swing fields and methods. The implementation has already been adapted in the past so that this dependency can be disabled, by setting the "wbp.burningwave.enabled" system property to "false". But for the sake of backwards compatibility, this property was initialized with "true". With this change, this property now needs to be explicitly enabled. Closes #1305
1 parent eb09fe5 commit 419c6fe

File tree

4 files changed

+17
-4
lines changed

4 files changed

+17
-4
lines changed

.github/workflows/maven.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,11 +23,11 @@ jobs:
2323
fail-fast: false
2424
matrix:
2525
os: [ubuntu-latest, windows-latest]
26-
java: [ 21, 24 ]
26+
java: [ 21, 25 ]
2727
include:
2828
- java: 21
2929
target: 2024-06
30-
- java: 24
30+
- java: 25
3131
target: master
3232
runs-on: ${{ matrix.os }}
3333
name: OS ${{ matrix.os }} Java ${{ matrix.java }} ${{ matrix.target }} compile

org.eclipse.wb.core/src/org/eclipse/wb/internal/core/EnvironmentUtils.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -232,6 +232,6 @@ public static boolean isGefPalette() {
232232
private static final String WBP_BURNINGWAVE = "wbp.burningwave.enabled";
233233

234234
public static boolean isBurningWaveEnabled() {
235-
return Boolean.valueOf(System.getProperty(WBP_BURNINGWAVE, Boolean.TRUE.toString()));
235+
return Boolean.valueOf(System.getProperty(WBP_BURNINGWAVE, Boolean.FALSE.toString()));
236236
}
237237
}

org.eclipse.wb.doc.user/html-src/whatsnew/v122.asciidoc

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,19 @@ endif::[]
44

55
= What's New - v1.22.0
66

7+
== General
8+
9+
- Integrity by default
10+
11+
WindowBuilder uses BurningWave to access the internal fields of the Swing
12+
components. In previous versions, this functionality was enabled by default
13+
but could be disabled by setting the `wbp.burningwave.enabled` system property
14+
to `false`. This property is now disabled by default and needs to be
15+
explicitly enabled.
16+
17+
Users are encouraged to explicitly open the required modules using e.g.
18+
`--add-opens java.desktop/javax.swing=ALL-UNNAMED`.
19+
720
== Swing
821

922
- Deprecated support for Applet/JApplet

org.eclipse.wb.tests/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@
2222
<packaging>eclipse-test-plugin</packaging>
2323

2424
<properties>
25-
<uitest.vmparams>-Dwbp.burningwave.enabled=false -Dorg.eclipse.swtbot.search.timeout=60000</uitest.vmparams>
25+
<uitest.vmparams>-Dorg.eclipse.swtbot.search.timeout=60000</uitest.vmparams>
2626
</properties>
2727

2828
<profiles>

0 commit comments

Comments
 (0)