mirror of
https://github.com/mangosfour/server.git
synced 2025-12-29 16:37:04 +00:00
[10692] Fixed wrongly use %d for guids in DB queries.
This can affect correct result in cases big guid values (out of range for possitive part of int32 range) at x86 platforms. Some other cases addded in addition to original patch fixes where %d wrongly/unsafe used for unsigned values. Signed-off-by: VladimirMangos <vladimir@getmangos.com>
This commit is contained in:
parent
10d3d3ce24
commit
ee8cc71e38
16 changed files with 46 additions and 43 deletions
|
|
@ -207,7 +207,7 @@ int Master::Run()
|
|||
{
|
||||
std::string builds = AcceptableClientBuildsListStr();
|
||||
LoginDatabase.escape_string(builds);
|
||||
LoginDatabase.PExecute("UPDATE realmlist SET realmflags = realmflags & ~(%u), population = 0, realmbuilds = '%s' WHERE id = '%d'", REALM_FLAG_OFFLINE, builds.c_str(), realmID);
|
||||
LoginDatabase.PExecute("UPDATE realmlist SET realmflags = realmflags & ~(%u), population = 0, realmbuilds = '%s' WHERE id = '%u'", REALM_FLAG_OFFLINE, builds.c_str(), realmID);
|
||||
}
|
||||
|
||||
ACE_Based::Thread* cliThread = NULL;
|
||||
|
|
@ -327,7 +327,7 @@ int Master::Run()
|
|||
}
|
||||
|
||||
///- Set server offline in realmlist
|
||||
LoginDatabase.PExecute("UPDATE realmlist SET realmflags = realmflags | %u WHERE id = '%d'", REALM_FLAG_OFFLINE, realmID);
|
||||
LoginDatabase.PExecute("UPDATE realmlist SET realmflags = realmflags | %u WHERE id = '%u'", REALM_FLAG_OFFLINE, realmID);
|
||||
|
||||
///- Remove signal handling before leaving
|
||||
_UnhookSignals();
|
||||
|
|
@ -529,7 +529,7 @@ void Master::clearOnlineAccounts()
|
|||
{
|
||||
// Cleanup online status for characters hosted at current realm
|
||||
/// \todo Only accounts with characters logged on *this* realm should have online status reset. Move the online column from 'account' to 'realmcharacters'?
|
||||
LoginDatabase.PExecute("UPDATE account SET active_realm_id = 0 WHERE active_realm_id = '%d'", realmID);
|
||||
LoginDatabase.PExecute("UPDATE account SET active_realm_id = 0 WHERE active_realm_id = '%u'", realmID);
|
||||
|
||||
CharacterDatabase.Execute("UPDATE characters SET online = 0 WHERE online<>0");
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue