From f36a1d9ac4c853b2aa5acdd92ba8f1820bf4d85b Mon Sep 17 00:00:00 2001 From: Laurens Westerlaken Date: Tue, 21 Jan 2025 11:36:53 +0100 Subject: [PATCH] Fix index out of bounds --- .../src/main/java/org/openrewrite/java/tree/J.java | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/rewrite-java/src/main/java/org/openrewrite/java/tree/J.java b/rewrite-java/src/main/java/org/openrewrite/java/tree/J.java index 592e839a3e3..621358d0d55 100644 --- a/rewrite-java/src/main/java/org/openrewrite/java/tree/J.java +++ b/rewrite-java/src/main/java/org/openrewrite/java/tree/J.java @@ -5122,7 +5122,14 @@ final class SwitchExpression implements J, Expression, TypedTree { public J visitBlock(Block block, AtomicReference javaType) { if (!block.getStatements().isEmpty()) { Case caze = (Case) block.getStatements().get(0); - javaType.set(caze.getExpressions().get(0).getType()); + for (J j : caze.getCaseLabels()) { + if (j instanceof TypedTree) { + if (((TypedTree) j).getType() != null) { + javaType.set(((TypedTree) j).getType()); + break; + } + } + } } return block; }