6262import java .nio .file .Files ;
6363import java .nio .file .Path ;
6464import java .time .Instant ;
65- import java .util .*;
65+ import java .util .ArrayList ;
66+ import java .util .Arrays ;
67+ import java .util .Comparator ;
68+ import java .util .HashMap ;
69+ import java .util .HashSet ;
70+ import java .util .List ;
71+ import java .util .Map ;
72+ import java .util .Set ;
6673import java .util .logging .Level ;
6774import java .util .stream .Stream ;
6875
@@ -348,10 +355,10 @@ public LaunchOptions getLaunchOptions(String version, JavaVersion javaVersion, F
348355 .setJavaArguments (StringUtils .tokenize (vs .getJavaArgs ()))
349356 .setMaxMemory ((int ) (getAllocatedMemory (
350357 vs .getMaxMemory () * 1024L * 1024L ,
351- MemoryUtils .getFreeDeviceMemory (FCLPath .CONTEXT ),
358+ MemoryUtils .getFreeDeviceMemory (FCLPath .CONTEXT ) * 1024L * 1024L ,
352359 vs .isAutoMemory ()
353360 ) / 1024 / 1024 ))
354- .setMinMemory (vs .getMinMemory ())
361+ .setMinMemory (vs .getMaxMemory ())
355362 .setUUid (vs .getUuid ())
356363 .setWidth ((int ) (AndroidUtils .getScreenWidth (FCLApplication .getCurrentActivity ()) * vs .getScaleFactor () / 100.0 ))
357364 .setHeight ((int ) (AndroidUtils .getScreenHeight (FCLApplication .getCurrentActivity ()) * vs .getScaleFactor () / 100.0 ))
@@ -374,8 +381,12 @@ public LaunchOptions getLaunchOptions(String version, JavaVersion javaVersion, F
374381 }
375382 }
376383
377- if (vs .isAutoMemory () && builder .getJavaArguments ().stream ().anyMatch (it -> it .startsWith ("-Xmx" )))
384+ if (vs .isAutoMemory () && builder .getJavaArguments ().stream ().anyMatch (it -> it .startsWith ("-Xmx" ))) {
378385 builder .setMaxMemory (null );
386+ builder .setMinMemory (null );
387+ }
388+ if (vs .isAutoMemory () && builder .getJavaArguments ().stream ().anyMatch (it -> it .startsWith ("-Xms" )))
389+ builder .setMinMemory (null );
379390
380391 return builder .create ();
381392 }
0 commit comments