diff options
Diffstat (limited to 'altoslib/AltosLib.java')
| -rw-r--r-- | altoslib/AltosLib.java | 25 | 
1 files changed, 25 insertions, 0 deletions
diff --git a/altoslib/AltosLib.java b/altoslib/AltosLib.java index c2ec0e3b..eb188d6b 100644 --- a/altoslib/AltosLib.java +++ b/altoslib/AltosLib.java @@ -215,6 +215,31 @@ public class AltosLib {  								 telemetry));  	} +	private static int[] split_version(String version) { +		String[] tokens = version.split("\\."); +		int[] ret = new int[tokens.length]; +		for (int i = 0; i < tokens.length; i++) +			ret[i] = Integer.parseInt(tokens[i]); +		return ret; +	} + +	public static int compare_version(String version_a, String version_b) { +		int[] a = split_version(version_a); +		int[] b = split_version(version_b); + +		for (int i = 0; i < Math.min(a.length, b.length); i++) { +			if (a[i] < b[i]) +				return -1; +			if (a[i] > b[i]) +				return 1; +		} +		if (a.length < b.length) +			return -1; +		if (a.length > b.length) +			return 1; +		return 0; +	} +  	private static String[] state_to_string = {  		"startup",  		"idle",  | 
