From 4e5122db5d040ea555d267c81f6089e9a83740a9 Mon Sep 17 00:00:00 2001 From: Jonas Herzig Date: Fri, 8 May 2020 11:30:06 +0200 Subject: [PATCH] Close packet output stream before saving replay Aside from being best practice, this is necessary for the recording CRC to be written to the replay file (cause that only happens on close). Also potentially fixes https://github.com/ReplayMod/ReplayMod/issues/144 though that should already be covered by ZipReplayFile tracking and closing all of its `OutputStream`s before saving. --- .../java/com/replaymod/recording/packet/PacketListener.java | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/main/java/com/replaymod/recording/packet/PacketListener.java b/src/main/java/com/replaymod/recording/packet/PacketListener.java index 720e2814..6cc12bdf 100644 --- a/src/main/java/com/replaymod/recording/packet/PacketListener.java +++ b/src/main/java/com/replaymod/recording/packet/PacketListener.java @@ -233,6 +233,11 @@ public class PacketListener extends ChannelInboundHandlerAdapter { } catch (InterruptedException e) { logger.error("Waiting for save service termination:", e); } + try { + packetOutputStream.close(); + } catch (IOException e) { + logger.error("Failed to close packet output stream:", e); + } synchronized (replayFile) { try {