Skip to content

Commit e1197d7

Browse files
Copilotriccardobl
andauthored
Avoid NPE catch in SH mode fallback parsing
Agent-Logs-Url: https://github.com/jMonkeyEngine/jmonkeyengine/sessions/e70ed475-af44-4c2b-9f29-f76d9a0422b8 Co-authored-by: riccardobl <4943530+riccardobl@users.noreply.github.com>
1 parent 8202147 commit e1197d7

2 files changed

Lines changed: 10 additions & 1 deletion

File tree

jme3-core/src/main/java/com/jme3/environment/EnvironmentProbeControl.java

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -372,9 +372,12 @@ public Spatial getSpatial() {
372372
}
373373

374374
static IBLGLEnvBakerLight.SphericalHarmonicsMode readSphericalHarmonicsMode(String modeName) {
375+
if (modeName == null) {
376+
return IBLGLEnvBakerLight.SphericalHarmonicsMode.FAST;
377+
}
375378
try {
376379
return IBLGLEnvBakerLight.SphericalHarmonicsMode.valueOf(modeName);
377-
} catch (IllegalArgumentException | NullPointerException ex) {
380+
} catch (IllegalArgumentException ex) {
378381
// Legacy AUTO and unknown values now fall back to FAST.
379382
return IBLGLEnvBakerLight.SphericalHarmonicsMode.FAST;
380383
}

jme3-core/src/test/java/com/jme3/environment/EnvironmentProbeControlTest.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -63,4 +63,10 @@ public void keepsQualitySphericalHarmonicsModeWhenReading() {
6363
EnvironmentProbeControl.readSphericalHarmonicsMode(
6464
IBLGLEnvBakerLight.SphericalHarmonicsMode.QUALITY.name()));
6565
}
66+
67+
@Test
68+
public void readsNullSphericalHarmonicsModeAsFast() {
69+
assertEquals(IBLGLEnvBakerLight.SphericalHarmonicsMode.FAST,
70+
EnvironmentProbeControl.readSphericalHarmonicsMode(null));
71+
}
6672
}

0 commit comments

Comments
 (0)