Skip to content

Commit a456426

Browse files
committed
Don't duplicate initial lines on reconnect.
1 parent 7151e69 commit a456426

File tree

1 file changed

+5
-1
lines changed

1 file changed

+5
-1
lines changed

src/main/java/org/kitteh/irc/client/library/defaults/DefaultClient.java

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -215,6 +215,7 @@ protected void processElement(@NonNull String element) {
215215
private MessageSendingQueue messageSendingScheduled;
216216
private final Object messageSendingLock = new Object();
217217
private boolean isSending = false;
218+
private String lastSentUser;
218219

219220
private String name;
220221
private InetSocketAddress bindAddress;
@@ -761,6 +762,9 @@ public void connect() {
761762
}
762763

763764
this.connection = this.networkHandler.connect(this);
765+
if (this.lastSentUser != null && this.messageSendingImmediate.contains(this.lastSentUser)) {
766+
return;
767+
}
764768
this.processor.queue("");
765769

766770
// If we have WebIRC information, send it before everything.
@@ -779,7 +783,7 @@ public void connect() {
779783
}
780784

781785
// Initial USER and NICK messages. Let's just assume we want +iw (send 8)
782-
this.sendRawLineImmediately("USER " + this.userString + " 8 * :" + this.realName);
786+
this.sendRawLineImmediately(this.lastSentUser = "USER " + this.userString + " 8 * :" + this.realName);
783787
this.sendNickChange(this.goalNick);
784788
}
785789

0 commit comments

Comments
 (0)