Fix slimmed check

Previously this was bugged so that you could never force Java 17.
This commit is contained in:
Eilionoir Tunnicliff committed 2023-03-21 11:50:34 -04:00
1 parent 761fed09b1
commit 23aef2d1ca
4 files changed
+12 -13

No files matched your search

+9
View File
@@ -145,6 +145,7 @@ void loadPreferences(BOOL reset) {
setDefaultValueForPref(envPrefDict, @"renderer", @"auto");
setDefaultValueForPref(envPrefDict, @"fullscreen_airplay", @YES);
setDefaultValueForPref(envPrefDict, @"hardware_hide", @NO);
setDefaultValueForPref(prefDict, @"slimmed", @NO);
fillDefaultWarningDict();
setDefaultValueForPref(prefDict, @"force_unsupported_launch", @NO);
setDefaultValueForPref(prefDict, @"slideable_hotbar", @NO);
@@ -169,6 +170,14 @@ void loadPreferences(BOOL reset) {
prefDict[@"debugs"] = debugPrefDict;
prefDict[@"env_vars"] = envPrefDict;
prefDict[@"warnings"] = warnPrefDict;
NSString *ipajre = [NSString stringWithFormat:@"%s/jvm/java-17-openjdk", getenv("BUNDLE_PATH")];
NSString *sysjre = @"/usr/lib/jvm/java-17-openjdk";
if ((![fileManager fileExistsAtPath:ipajre]) && (![fileManager fileExistsAtPath:sysjre])) {
setPreference(@"slimmed", @YES);
} else {
setPreference(@"slimmed", @NO);
}
[prefDict writeToFile:prefPath atomically:YES];
}
+1 -1
View File
@@ -334,7 +334,7 @@ typedef void(^CreateView)(UITableViewCell *, NSString *, NSDictionary *);
@"icon": @"cube",
@"type": self.typeSwitch,
@"enableCondition": ^BOOL(){
return !getenv("SLIMMED") && whenNotInGame();
return (![getPreference(@"slimmed") boolValue]) && whenNotInGame();
},
// false: 8, true: 17
@"customSwitchValue": @[@"java-8-openjdk", @"java-17-openjdk"]
+2 -12
View File
@@ -306,14 +306,6 @@ void init_setupResolvConf() {
}
}
void init_setupSlimmed() {
NSString *ipajre = [NSString stringWithFormat:@"%s/jvm/java-17-openjdk", getenv("BUNDLE_PATH")];
NSString *sysjre = @"/usr/lib/jvm/java-17-openjdk";
if ((![fm fileExistsAtPath:ipajre]) && (![fm fileExistsAtPath:sysjre])) {
setenv("SLIMMED", "1", 1);
}
}
void init_setupHomeDirectory() {
setenv("HOME", [NSFileManager.defaultManager URLsForDirectory:NSDocumentDirectory inDomains:NSUserDomainMask]
.lastObject.path.stringByDeletingLastPathComponent.UTF8String, 1);
@@ -341,6 +333,8 @@ void init_setupHomeDirectory() {
}
int main(int argc, char *argv[]) {
setenv("BUNDLE_PATH", dirname(argv[0]), 1);
if (pJLI_Launch) {
return pJLI_Launch(argc, (const char **)argv,
0, NULL, // sizeof(const_jargs) / sizeof(char *), const_jargs,
@@ -363,12 +357,8 @@ int main(int argc, char *argv[]) {
}
init_checkForJailbreak();
init_setupSlimmed();
init_migrateDirIfNecessary();
setenv("BUNDLE_PATH", dirname(argv[0]), 1);
init_setupHomeDirectory();
init_redirectStdio();
init_logDeviceAndVer(argv[0]);
Binary file not shown.