3
0
Mirror von https://github.com/GeyserMC/Geyser.git synchronisiert 2024-07-30 17:18:10 +02:00

Loopback exemption fixes (#3261)

* Fix potential hang when checking loopback exemptions

* Remove single quotes from LoopbackExempt command
Dieser Commit ist enthalten in:
AJ Ferguson 2022-08-31 16:42:38 -04:00 committet von GitHub
Ursprung d9db035d95
Commit f8a84f9777
Es konnte kein GPG-Schlüssel zu dieser Signatur gefunden werden
GPG-Schlüssel-ID: 4AEE18F83AFDEB23

Datei anzeigen

@ -35,7 +35,7 @@ import java.nio.file.Paths;
public final class LoopbackUtil {
private static final String checkExemption = "CheckNetIsolation LoopbackExempt -s";
private static final String loopbackCommand = "CheckNetIsolation LoopbackExempt -a -n='Microsoft.MinecraftUWP_8wekyb3d8bbwe'";
private static final String loopbackCommand = "CheckNetIsolation LoopbackExempt -a -n=Microsoft.MinecraftUWP_8wekyb3d8bbwe";
/**
* This string needs to be checked in the event Minecraft is not installed - no Minecraft string will be present in the checkExemption command.
*/
@ -50,12 +50,12 @@ public final class LoopbackUtil {
if (os.equalsIgnoreCase("Windows 10") || os.equalsIgnoreCase("Windows 11")) {
try {
Process process = Runtime.getRuntime().exec(checkExemption);
process.waitFor();
InputStream is = process.getInputStream();
int data;
StringBuilder sb = new StringBuilder();
while (is.available() != 0) {
sb.append((char) is.read());
while ((data = is.read()) != -1) {
sb.append((char) data);
}
return !sb.toString().contains(minecraftApplication);