Store converted to QueryDatabase

This commit is contained in:
Arthur Ice 2014-08-18 12:35:16 -07:00
parent fd8dc1214c
commit e360ba5209

View File

@ -156,32 +156,26 @@ bool PersistentTimer::Load(Database *db) {
bool PersistentTimer::Store(Database *db) { bool PersistentTimer::Store(Database *db) {
if(Expired(db, false)) //dont need to store expired timers. if(Expired(db, false)) //dont need to store expired timers.
return(true); return true;
char errbuf[MYSQL_ERRMSG_SIZE];
char *query = 0;
uint32 qlen = 0;
qlen = MakeAnyLenString(&query, "REPLACE INTO timers "
" (char_id,type,start,duration,enable) "
" VALUES(%lu,%u,%lu,%lu,%d)",
(unsigned long)_char_id, _type, (unsigned long)start_time, (unsigned long)timer_time, enabled?1:0);
std::string query = StringFormat("REPLACE INTO timers "
" (char_id, type, start, duration, enable) "
" VALUES (%lu, %u, %lu, %lu, %d)",
(unsigned long)_char_id, _type, (unsigned long)start_time,
(unsigned long)timer_time, enabled ? 1: 0);
#ifdef DEBUG_PTIMERS #ifdef DEBUG_PTIMERS
printf("Storing timer: char %lu of type %u: '%s'\n", (unsigned long)_char_id, _type, query); printf("Storing timer: char %lu of type %u: '%s'\n", (unsigned long)_char_id, _type, query.c_str());
#endif #endif
auto results = db->QueryDatabase(query);
if (!db->RunQuery(query, qlen, errbuf)) { if (!results.Success()) {
safe_delete_array(query);
#if EQDEBUG > 5 #if EQDEBUG > 5
LogFile->write(EQEMuLog::Error, "Error in PersistentTimer::Store, error: %s", errbuf); LogFile->write(EQEMuLog::Error, "Error in PersistentTimer::Store, error: %s", results.ErrorMessage().c_str());
#endif #endif
return(false); return false;
} }
safe_delete_array(query);
return(true); return true;
} }
bool PersistentTimer::Clear(Database *db) { bool PersistentTimer::Clear(Database *db) {