From e9812f17ed8052a2ee4d3b1c7af5c4cd810929ca Mon Sep 17 00:00:00 2001 From: 6543 <6543@obermui.de> Date: Sun, 20 Oct 2019 22:32:25 +0200 Subject: [PATCH] protect function with exeption --- src/com/company/Version.java | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/com/company/Version.java b/src/com/company/Version.java index a5d45c5..19368e5 100644 --- a/src/com/company/Version.java +++ b/src/com/company/Version.java @@ -26,7 +26,7 @@ public enum Version { Matcher m ; if (!pattern_stable_release.matcher(min).find() || !pattern_stable_release.matcher(last).find()) { - throw new Error("VersionCheck: wrong format for min or last version given"); + throw new IllegalArgumentException("VersionCheck: wrong format for min or last version given"); } m = pattern_stable_release.matcher(value); @@ -74,7 +74,7 @@ public enum Version { switch (range_check) { case 2: - throw new Error("Minimum Version higher than Last Version"); + throw new IllegalArgumentException("Minimum Version higher than Last Version"); case 1: //min == last switch (min_check) { case 0: @@ -101,6 +101,9 @@ public enum Version { * 2 = more */ public static int compare(String A, String B) { + //throw new IllegalArgumentException + if((!A.matches("[0-9]+(\\.[0-9]+)*")) || (!B.matches("[0-9]+(\\.[0-9]+)*"))) throw new IllegalArgumentException("Invalid version format"); + if (A.contains(".") || B.contains(".")) { // example 2 vs 1.3 if (!(A.contains(".") && B.contains("."))) {