diff --git a/demo/src/main/java/net/minestom/demo/Main.java b/demo/src/main/java/net/minestom/demo/Main.java index 2bc7554c1..c776db29e 100644 --- a/demo/src/main/java/net/minestom/demo/Main.java +++ b/demo/src/main/java/net/minestom/demo/Main.java @@ -107,6 +107,7 @@ public class Main { OpenToLAN.open(new OpenToLANConfig().eventCallDelay(Duration.of(1, TimeUnit.DAY))); minecraftServer.start("0.0.0.0", 25565); +// minecraftServer.start(java.net.UnixDomainSocketAddress.of("minestom-demo.sock")); //Runtime.getRuntime().addShutdownHook(new Thread(MinecraftServer::stopCleanly)); } } diff --git a/src/main/java/net/minestom/server/network/socket/Worker.java b/src/main/java/net/minestom/server/network/socket/Worker.java index 48c3806bc..48909c2c0 100644 --- a/src/main/java/net/minestom/server/network/socket/Worker.java +++ b/src/main/java/net/minestom/server/network/socket/Worker.java @@ -10,6 +10,7 @@ import org.jctools.queues.MpscUnboundedXaddArrayQueue; import org.jetbrains.annotations.ApiStatus; import java.io.IOException; +import java.net.InetSocketAddress; import java.net.Socket; import java.nio.channels.SelectionKey; import java.nio.channels.Selector; @@ -109,11 +110,13 @@ public final class Worker extends MinestomThread { this.connectionMap.put(channel, new PlayerSocketConnection(this, channel, channel.getRemoteAddress())); channel.configureBlocking(false); channel.register(selector, SelectionKey.OP_READ); - Socket socket = channel.socket(); - socket.setSendBufferSize(Server.SOCKET_SEND_BUFFER_SIZE); - socket.setReceiveBufferSize(Server.SOCKET_RECEIVE_BUFFER_SIZE); - socket.setTcpNoDelay(Server.NO_DELAY); - socket.setSoTimeout(30 * 1000); // 30 seconds + if (channel.getLocalAddress() instanceof InetSocketAddress) { + Socket socket = channel.socket(); + socket.setSendBufferSize(Server.SOCKET_SEND_BUFFER_SIZE); + socket.setReceiveBufferSize(Server.SOCKET_RECEIVE_BUFFER_SIZE); + socket.setTcpNoDelay(Server.NO_DELAY); + socket.setSoTimeout(30 * 1000); // 30 seconds + } this.selector.wakeup(); }