TryCatch tail functions

This commit is contained in:
zontreck 2024-06-05 22:01:01 -07:00
parent 2a5774bd6d
commit d885485684
5 changed files with 22 additions and 192 deletions

View file

@ -16,12 +16,12 @@ class PacketServer {
print("Server now listening on port ${port}");
await for (var sock in socket!) {
S2CResponse response = S2CResponse();
print(
"New connection from ${sock.remoteAddress.address}:${sock.remotePort}");
try {
sock.listen((data) async {
S2CResponse response = S2CResponse();
try {
CompoundTag tag = await NbtIo.readFromStream(data);
StringBuilder builder = StringBuilder();
@ -33,8 +33,8 @@ class PacketServer {
request.decodeTag(tag);
PacketResponse reply = await request.handleServerPacket();
// Server uses NBT to communicate
// Server uses NBT to communicate
builder = StringBuilder();
Tag.writeStringifiedNamedTag(reply.replyDataTag, builder, 0);
@ -45,17 +45,10 @@ class PacketServer {
.put("error", StringTag.valueOf("Malformed request packet"));
print(
"Something went wrong, sending malformed request response\n${stack}\n\n${E}\n\n");
sock.add(
await NbtIo.writeToStream(response.encodeTag() as CompoundTag));
"Something went wrong. Malformed request? \n\n${E}\n\n${stack}\n\n\n\n");
} finally {
await sock.flush();
sock.close();
if (!shouldRestart) {
await socket!.close();
}
}
}, onDone: () {
sock.close();