diff options
| author | leak <leak@bitmx.net> | 2012-03-25 16:22:24 +0200 |
|---|---|---|
| committer | leak <leak@bitmx.net> | 2012-03-25 16:25:06 +0200 |
| commit | c6cbe4c77c5fcd4d296f31d471b4806ebe3d099d (patch) | |
| tree | e36e04784374d754c85a06fec5a1e259593fccbb /src/server/game/Handlers/MailHandler.cpp | |
| parent | 56fac5e1afc0596c32dc349d5bc0218fd8a0b13d (diff) | |
Core/DBLayer: Convert PAppend() queries to prepared statements No.1
Diffstat (limited to 'src/server/game/Handlers/MailHandler.cpp')
| -rwxr-xr-x | src/server/game/Handlers/MailHandler.cpp | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/src/server/game/Handlers/MailHandler.cpp b/src/server/game/Handlers/MailHandler.cpp index 117824bfb62..7a8d19ee038 100755 --- a/src/server/game/Handlers/MailHandler.cpp +++ b/src/server/game/Handlers/MailHandler.cpp @@ -374,8 +374,15 @@ void WorldSession::HandleMailReturnToSender(WorldPacket & recv_data) //we can return mail now //so firstly delete the old one SQLTransaction trans = CharacterDatabase.BeginTransaction(); - trans->PAppend("DELETE FROM mail WHERE id = '%u'", mailId); // needed? - trans->PAppend("DELETE FROM mail_items WHERE mail_id = '%u'", mailId); + + PreparedStatement* stmt = CharacterDatabase.GetPreparedStatement(CHAR_DEL_MAIL); + stmt->setUInt32(0, mailId); + trans->Append(stmt); + + stmt = CharacterDatabase.GetPreparedStatement(CHAR_DEL_MAIL_ITEM_BY_ID); + stmt->setUInt32(0, mailId); + trans->Append(stmt); + player->RemoveMail(mailId); // only return mail if the player exists (and delete if not existing) |
