diff --git a/gradle.properties b/gradle.properties index a7a2111e..04eece3a 100644 --- a/gradle.properties +++ b/gradle.properties @@ -30,8 +30,8 @@ pr_version = 4.19.0-beta+3 ccl_version = 4.4.0.+ cbm_version = 3.3.0.+ network_lib_version = 1.0.3 -sedna_version = 1.0.62 -sedna_version_commit_ref = 5d8f6d6 +sedna_version = 1.0.61 +sedna_version_commit_ref = 68cb216 # Debug Options debug_embeddium = false diff --git a/src/main/java/li/cil/oc2/common/inet/StreamSessionImpl.java b/src/main/java/li/cil/oc2/common/inet/StreamSessionImpl.java index a77acc84..1d9e01f5 100644 --- a/src/main/java/li/cil/oc2/common/inet/StreamSessionImpl.java +++ b/src/main/java/li/cil/oc2/common/inet/StreamSessionImpl.java @@ -101,7 +101,11 @@ public class StreamSessionImpl extends SessionBase implements StreamSession { state = switch (state) { case ESTABLISHED -> TcpStates.FINISH; case CONNECT -> TcpStates.REJECT; - default -> throw new IllegalStateException(); + case FINISH, REJECT, EXPIRED -> state; // Already closing or closed + case ACCEPT -> { + LOGGER.warn("Closing session in ACCEPT state, forcing to REJECT"); + yield TcpStates.REJECT; + } }; }