Skip to content

Commit a285f5f

Browse files
committed
stage2/ml9: remove boolean return type from RestartUI#waitForClose
1 parent 35136cb commit a285f5f

File tree

2 files changed

+11
-21
lines changed

2 files changed

+11
-21
lines changed

stage2/modlauncher9/src/main/java/gg/essential/loader/stage2/components/ForkedRestartUI.java

Lines changed: 6 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -35,15 +35,13 @@ public void show() {
3535
}
3636
}
3737

38-
public Boolean waitForClose() {
39-
if (this.jvm == null) return null;
38+
public void waitForClose() {
39+
if (this.jvm == null) return;
4040

4141
try {
42-
int verdict = this.jvm.process.getInputStream().read();
43-
return verdict == 1 ? Boolean.TRUE : verdict == 2 ? Boolean.FALSE : null;
44-
} catch (IOException e) {
42+
this.jvm.process.getInputStream().wait();
43+
} catch (InterruptedException e) {
4544
LOGGER.warn("Failed to wait for RestartUI to close:", e);
46-
return null;
4745
} finally {
4846
this.jvm.close();
4947
this.jvm = null;
@@ -58,23 +56,16 @@ public static void main(String[] args) throws IOException {
5856
mods.add(in.readUTF());
5957
}
6058

61-
Boolean verdict = null;
6259
try {
6360
RestartUI ui = new RestartUI(mods);
6461
ui.show();
6562

66-
verdict = ui.waitForClose();
63+
ui.waitForClose();
6764
} catch (Throwable t) {
6865
t.printStackTrace();
6966
}
7067

71-
if (verdict == Boolean.TRUE) {
72-
System.out.write(1);
73-
} else if (verdict == Boolean.FALSE) {
74-
System.out.write(2);
75-
} else {
76-
System.out.write(0);
77-
}
7868
System.out.flush();
69+
System.out.close();
7970
}
8071
}

stage2/modlauncher9/src/main/java/gg/essential/loader/stage2/components/RestartUI.java

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
import static gg.essential.loader.stage2.components.ButtonShadowBorder.Y_SHADOW;
1212

1313
public class RestartUI implements EssentialStyle {
14-
private final CompletableFuture<Boolean> closedFuture = new CompletableFuture<>();
14+
private final CompletableFuture<Void> closedFuture = new CompletableFuture<>();
1515

1616
private final JFrame frame = makeFrame(it -> closedFuture.complete(null));
1717

@@ -64,7 +64,7 @@ public void show() {
6464
final JPanel buttons = new JPanel();
6565
buttons.setOpaque(false);
6666
buttons.setLayout(new BoxLayout(buttons, BoxLayout.X_AXIS));
67-
buttons.add(makeButton("Quit Game", COLOR_PRIMARY_BUTTON, COLOR_BUTTON_HOVER, () -> closedFuture.complete(true)));
67+
buttons.add(makeButton("Quit Game", COLOR_PRIMARY_BUTTON, COLOR_BUTTON_HOVER, () -> closedFuture.complete(null)));
6868
content.add(buttons);
6969

7070
content.add(Box.createVerticalStrut(32 - Y_SHADOW));
@@ -78,10 +78,9 @@ public void show() {
7878
frame.setVisible(true);
7979
}
8080

81-
public Boolean waitForClose() {
82-
Boolean verdict = closedFuture.join();
81+
public void waitForClose() {
82+
closedFuture.join();
8383
close();
84-
return verdict;
8584
}
8685

8786
public void close() {
@@ -91,6 +90,6 @@ public void close() {
9190
public static void main(String[] args) {
9291
RestartUI ui = new RestartUI(List.of("Skytils"));
9392
ui.show();
94-
System.out.println(ui.waitForClose());
93+
ui.waitForClose();
9594
}
9695
}

0 commit comments

Comments
 (0)