Don't forward messags to sender peer

This commit is contained in:
MrLetsplay 2023-12-18 22:35:06 +01:00
parent ca5f0567e1
commit 30c81163ce
Signed by: mr
SSH Key Fingerprint: SHA256:92jBH80vpXyaZHjaIl47pjRq+Yt7XGTArqQg1V7hSqg

View File

@ -87,7 +87,11 @@ public class ShareWSServer extends WebSocketServer {
boolean isHost = getHost(getPeers(session)).equals(conn);
System.out.println("[" + user.siteID() + "] " + m);
switch(m.getType()) {
case CHANGE -> getPeers(session).forEach(peer -> send(peer, m));
case CHANGE -> {
getPeers(session).stream()
.filter(p -> p.<SessionUser>getAttachment().siteID() != user.siteID())
.forEach(peer -> send(peer, m));
}
case REQUEST_FULL_SYNC, REQUEST_CHECKSUM -> {
AddressableMessage msg = (AddressableMessage) m;
if(msg.siteID() != user.siteID()) {
@ -105,7 +109,9 @@ public class ShareWSServer extends WebSocketServer {
AddressableMessage msg = (AddressableMessage) m;
if(msg.siteID() == AddressableMessage.BROADCAST_SITE_ID) {
getPeers(session).forEach(peer -> send(peer, m));
getPeers(session).stream()
.filter(p -> p.<SessionUser>getAttachment().siteID() != user.siteID())
.forEach(peer -> send(peer, m));
}else {
WebSocket peer = getPeer(getPeers(session), msg.siteID());
if(peer != null) send(peer, m);