summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Changelog-Trunk.txt2
-rw-r--r--src/map/mail.c13
2 files changed, 10 insertions, 5 deletions
diff --git a/Changelog-Trunk.txt b/Changelog-Trunk.txt
index 1fa18948f..2286d261a 100644
--- a/Changelog-Trunk.txt
+++ b/Changelog-Trunk.txt
@@ -1,5 +1,7 @@
Date Added
+2010/11/22
+ * mail_deliveryfail no longer attempts to log (since r12910) and give items (since r11855), when there is no item attached to the mail (bugreport:3239). [Ai4rei]
2010/11/21
* Added msinttypes (rev. 26, http://msinttypes.googlecode.com/svn/trunk/) portability framework for Visual C++ compilers (related bugreport:4059). [Ai4rei]
* Added 64-bit variants of the socket and buffer I/O macros. [Ai4rei]
diff --git a/src/map/mail.c b/src/map/mail.c
index c79381c66..f0869185a 100644
--- a/src/map/mail.c
+++ b/src/map/mail.c
@@ -175,12 +175,15 @@ void mail_deliveryfail(struct map_session_data *sd, struct mail_message *msg)
nullpo_retv(sd);
nullpo_retv(msg);
- // Item recieve (due to failure)
- if(log_config.enable_logs&0x2000)
- log_pick_pc(sd, "E", msg->item.nameid, msg->item.amount, &msg->item);
+ if( msg->item.amount > 0 )
+ {
+ // Item recieve (due to failure)
+ if(log_config.enable_logs&0x2000)
+ log_pick_pc(sd, "E", msg->item.nameid, msg->item.amount, &msg->item);
+
+ pc_additem(sd, &msg->item, msg->item.amount);
+ }
- pc_additem(sd, &msg->item, msg->item.amount);
-
if( msg->zeny > 0 )
{
//Zeny recieve (due to failure)