Jelajahi Sumber

* Fixed players could add themselves to their friendslist through their clones or WPE (bugreport:4909).

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@14835 54d463be-8e91-2dee-dedb-b68131a5f0ec
ai4rei 14 tahun lalu
induk
melakukan
8325f3518f
2 mengubah file dengan 11 tambahan dan 0 penghapusan
  1. 1 0
      Changelog-Trunk.txt
  2. 10 0
      src/map/clif.c

+ 1 - 0
Changelog-Trunk.txt

@@ -1,6 +1,7 @@
 Date	Added
 
 2011/05/29
+	* Fixed players could add themselves to their friendslist through their clones or WPE (bugreport:4909). [Ai4rei]
 	* Fixed bonus 'bHPDrainValue' on left hand would work as right hand bonus, when specified with 'bonus' rather than 'bonus2' (bugreport:4939, since r6221). [Ai4rei]
 2011/05/23
 	* Changed enumerating defines into enumerations (related topic:264007). [Ai4rei]

+ 10 - 0
src/map/clif.c

@@ -11989,6 +11989,11 @@ void clif_parse_FriendsListAdd(int fd, struct map_session_data *sd)
 
 	f_sd = map_nick2sd((char*)RFIFOP(fd,2));
 
+	if( sd->bl.id == f_sd->bl.id )
+	{// adding oneself as friend
+		return;
+	}
+
 	// Friend doesn't exist (no player with this name)
 	if (f_sd == NULL) {
 		clif_displaymessage(fd, msg_txt(3));
@@ -12037,6 +12042,11 @@ void clif_parse_FriendsListReply(int fd, struct map_session_data *sd)
 	char_id = RFIFOL(fd,6);
 	reply = RFIFOB(fd,10);
 
+	if( sd->bl.id == account_id )
+	{// adding oneself as friend
+		return;
+	}
+
 	f_sd = map_id2sd(account_id); //The account id is the same as the bl.id of players.
 	if (f_sd == NULL)
 		return;