mirror of
https://github.com/AngelAuraMC/Amethyst-Android.git
synced 2025-09-13 14:51:51 -04:00
Swap the broken parser for a java argument
This commit is contained in:
parent
61388903bd
commit
f966a153fc
@ -296,6 +296,7 @@ public class JREUtils {
|
||||
//Add automatically generated args
|
||||
userArgs.add("-Xms" + LauncherPreferences.PREF_RAM_ALLOCATION + "M");
|
||||
userArgs.add("-Xmx" + LauncherPreferences.PREF_RAM_ALLOCATION + "M");
|
||||
userArgs.add(" -XX:+IgnoreUnrecognizedVMOptions ");
|
||||
if(LOCAL_RENDERER != null) userArgs.add("-Dorg.lwjgl.opengl.libname=" + graphicsLib);
|
||||
|
||||
userArgs.addAll(JVMArgs);
|
||||
@ -389,39 +390,7 @@ public class JREUtils {
|
||||
* @return Parsed args as an ArrayList
|
||||
*/
|
||||
public static ArrayList<String> parseJavaArguments(String args){
|
||||
ArrayList<String> parsedArguments = new ArrayList<>(0);
|
||||
args = args.trim().replace(" ", "");
|
||||
//For each prefixes, we separate args.
|
||||
for(String prefix : new String[]{"-XX:-","-XX:+", "-XX:","--","-"}){
|
||||
while (true){
|
||||
int start = args.indexOf(prefix);
|
||||
if(start == -1) break;
|
||||
//Get the end of the current argument
|
||||
int end = args.indexOf("-", start + prefix.length());
|
||||
if(end == -1) end = args.length();
|
||||
|
||||
//Extract it
|
||||
String parsedSubString = args.substring(start, end);
|
||||
args = args.replace(parsedSubString, "");
|
||||
|
||||
//Check if two args aren't bundled together by mistake
|
||||
if(parsedSubString.indexOf('=') == parsedSubString.lastIndexOf('=')) {
|
||||
int arraySize = parsedArguments.size();
|
||||
if(arraySize > 0){
|
||||
String lastString = parsedArguments.get(arraySize - 1);
|
||||
// Looking for list elements
|
||||
if(lastString.charAt(lastString.length() - 1) == ',' ||
|
||||
parsedSubString.contains(",")){
|
||||
parsedArguments.set(arraySize - 1, lastString + parsedSubString);
|
||||
continue;
|
||||
}
|
||||
}
|
||||
parsedArguments.add(parsedSubString);
|
||||
}
|
||||
else Log.w("JAVA ARGS PARSER", "Removed improper arguments: " + parsedSubString);
|
||||
}
|
||||
}
|
||||
return parsedArguments;
|
||||
return new ArrayList<>(Arrays.asList(args.split(" ")));
|
||||
}
|
||||
|
||||
/**
|
||||
|
Loading…
x
Reference in New Issue
Block a user