Skip to content

Commit 9d213e4

Browse files
committed
Attempted fix at race condition
1 parent b2f4ca4 commit 9d213e4

3 files changed

Lines changed: 18 additions & 21 deletions

File tree

gradle.properties

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ yarn_mappings=1.20.1+build.10
99
loader_version=0.16.9
1010

1111
# Mod Properties
12-
mod_version=1.8.8
12+
mod_version=1.8.9
1313
maven_group=cc.reconnected
1414
archives_base_name=rcc-chatbox
1515

src/main/java/cc/reconnected/chatbox/RccChatbox.java

Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -94,6 +94,7 @@ public void onInitialize() {
9494
LOGGER.error("Failed to create rcc-chatbox data directory");
9595
}
9696
}
97+
ChatboxEvents.register(server);
9798
});
9899

99100
ServerLifecycleEvents.SERVER_STARTED.register(server -> {
@@ -108,13 +109,6 @@ public void onInitialize() {
108109
}
109110
});
110111

111-
ChatboxEvents.register();
112112

113-
if(isSolsticeLoaded()) {
114-
SolsticeEvents.register();
115-
}
116-
if(isRccDiscordLoaded()) {
117-
DiscordEvents.register();
118-
}
119113
}
120114
}

src/main/java/cc/reconnected/chatbox/listeners/ChatboxEvents.java

Lines changed: 16 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,22 @@ public class ChatboxEvents {
3737

3838
private static MinecraftServer mcServer;
3939

40-
public static void register() {
40+
public static void register(MinecraftServer serverStarting) {
41+
mcServer = serverStarting;
42+
var initWss = new WsServer(new InetSocketAddress(RccChatbox.CONFIG.hostname, RccChatbox.CONFIG.port));
43+
44+
var wssThread = new Thread(initWss::start);
45+
wssThread.start();
46+
47+
RccChatbox.getInstance().wss(initWss);
48+
49+
if(RccChatbox.isRccDiscordLoaded()) {
50+
DiscordEvents.register();
51+
}
52+
if(RccChatbox.isSolsticeLoaded()) {
53+
SolsticeEvents.register();
54+
}
55+
4156
ClientPacketsHandler.register();
4257
ClientConnectionEvents.CONNECT.register((conn, license, isGuest) -> {
4358
var playerData = PlayerMeta.getPlayer(license.userId());
@@ -61,18 +76,6 @@ public static void register() {
6176
conn.send(packetJson);
6277
});
6378

64-
ServerLifecycleEvents.SERVER_STARTING.register(server ->
65-
mcServer = server);
66-
67-
ServerLifecycleEvents.SERVER_STARTED.register(server -> {
68-
var wss = new WsServer(new InetSocketAddress(RccChatbox.CONFIG.hostname, RccChatbox.CONFIG.port));
69-
70-
var wssThread = new Thread(wss::start);
71-
wssThread.start();
72-
73-
RccChatbox.getInstance().wss(wss);
74-
});
75-
7679
ServerLifecycleEvents.SERVER_STOPPING.register(server -> {
7780
if (RccChatbox.getInstance().wss() != null) {
7881
try {

0 commit comments

Comments
 (0)