Commit Diff


commit - c65343e719b3fda2fa4d80284e1527437fb5f673
commit + a5b5a6a99a3be2c982e0b4583add7b8946e43589
blob - 3dcab0381bb154faa2de4b5d7263e773cfb698c8
blob + 6e733586332b62f1d2809ce69f8aa4ebe3f063a2
--- src/ngircd/irc-login.c
+++ src/ngircd/irc-login.c
@@ -14,7 +14,7 @@
 
 #include "portab.h"
 
-static char UNUSED id[] = "$Id: irc-login.c,v 1.48 2005/08/28 11:40:13 alex Exp $";
+static char UNUSED id[] = "$Id: irc-login.c,v 1.49 2005/09/01 10:51:24 alex Exp $";
 
 #include "imp.h"
 #include <assert.h>
@@ -520,9 +520,10 @@ IRC_PONG(CLIENT *Client, REQUEST *Req)
 			return IRC_WriteStrClient(Client, ERR_NOSUCHSERVER_MSG,
 					Client_ID(Client), Req->argv[0]);
 
-		if (target != Client_ThisServer()) {
+		from = Client_Search(Req->prefix);
+
+		if (target != Client_ThisServer() && target != from) {
 			/* Ok, we have to forward the message. */
-			from = Client_Search(Req->prefix);
 			if (!from)
 				return IRC_WriteStrClient(Client,
 						ERR_NOSUCHSERVER_MSG,