X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Fnet%2Fpterodactylus%2Fxdcc%2Fcore%2FCore.java;h=0cc829425ce2eca5805faf122448306ae2dee1f0;hb=7e12b9da7bb49b20e1dbc95de0d89b07d8cda0e4;hp=ac9ac4d4e90fc680f6bec5166c4d5d689a938336;hpb=1947e1e9be56833bed4eb9c2efe1f003566eb284;p=xudocci.git diff --git a/src/main/java/net/pterodactylus/xdcc/core/Core.java b/src/main/java/net/pterodactylus/xdcc/core/Core.java index ac9ac4d..0cc8294 100644 --- a/src/main/java/net/pterodactylus/xdcc/core/Core.java +++ b/src/main/java/net/pterodactylus/xdcc/core/Core.java @@ -546,8 +546,8 @@ public class Core extends AbstractExecutionThreadService { } eventBus.post(new GenericMessage( - format("Could not join %s/%s: %s", channelNotJoined.channel(), - network.get(), channelNotJoined.reason()))); + format("Could not join %s: %s", channelNotJoined.channel(), + channelNotJoined.reason()))); } /** @@ -599,9 +599,22 @@ public class Core extends AbstractExecutionThreadService { /* have we been kicked? */ if (nicknameMatchesConnection(kickedFromChannel.connection(), kickedFromChannel.kickee())) { + Optional channel = getChannel(network.get(), kickedFromChannel.channel()); + if (!channel.isPresent()) { + /* maybe it was an extra channel? */ + channel = getExtraChannel(network.get(), kickedFromChannel.channel()); + if (!channel.isPresent()) { + /* okay, whatever. */ + return; + } + + extraChannels.remove(channel); + } else { + channels.remove(channel.get()); + } eventBus.post(new GenericMessage(format( - "Kicked from %s/%s by %s: %s", - kickedFromChannel.channel(), network.get(), + "Kicked from %s by %s: %s", + kickedFromChannel.channel(), kickedFromChannel.kicker(), kickedFromChannel.reason().or("") ))); @@ -717,7 +730,7 @@ public class Core extends AbstractExecutionThreadService { return; } - eventBus.post(new GenericMessage(String.format("Notice from %s (%s): %s", privateNoticeReceived.reply().source().get(), network.get(), privateNoticeReceived.text()))); + eventBus.post(new GenericMessage(String.format("Notice from %s (%s): %s", privateNoticeReceived.source(), network.get(), privateNoticeReceived.text()))); } /**