Skip to content

Commit 935cbad

Browse files
committed
Properly handle error from invalid wildcard string in matcher
1 parent baaa175 commit 935cbad

1 file changed

Lines changed: 6 additions & 1 deletion

File tree

src/main/java/org/mvplugins/multiverse/core/utils/matcher/WildcardStringMatcher.java

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
package org.mvplugins.multiverse.core.utils.matcher;
22

3+
import com.dumptruckman.minecraft.util.Logging;
4+
import io.vavr.control.Try;
35
import org.jetbrains.annotations.ApiStatus;
46

57
import java.util.regex.Pattern;
@@ -27,7 +29,10 @@ public class WildcardStringMatcher implements StringMatcher {
2729
@ApiStatus.AvailableSince("5.2")
2830
public WildcardStringMatcher(String wildcard) {
2931
this.wildcard = wildcard;
30-
this.pattern = Pattern.compile(("\\Q" + wildcard + "\\E").replace("*", "\\E.*\\Q"));
32+
this.pattern = Try.of(() -> Pattern.compile(("\\Q" + wildcard + "\\E").replace("*", "\\E.*\\Q")))
33+
.onFailure(ex -> Logging.warning("Failed to compile wildcard '%s': %s",
34+
wildcard, ex.getMessage()))
35+
.getOrNull();
3136
}
3237

3338
/**

0 commit comments

Comments
 (0)