From e81e47e9c59e0fdd6ceb0398b0d88ce0dce7b379 Mon Sep 17 00:00:00 2001 From: Arthur Ice Date: Sun, 6 Jul 2014 11:44:59 -0700 Subject: [PATCH] Built utility function ClearAllRaidDetails --- common/database.cpp | 31 ++++++++++++++++++++++--------- common/database.h | 1 + 2 files changed, 23 insertions(+), 9 deletions(-) diff --git a/common/database.cpp b/common/database.cpp index 809b3c2f9..536e781d5 100644 --- a/common/database.cpp +++ b/common/database.cpp @@ -2018,16 +2018,29 @@ void Database::ClearAllRaids(void) std::cout << "Unable to clear raids: " << results.ErrorMessage() << std::endl; } +void Database::ClearAllRaidDetails(void) +{ + char *query = nullptr; + + if (!RunQuery(query, MakeAnyLenString(&query, "delete from raid_details"), errbuf)) + printf("Unable to clear raid details: %s\n",errbuf); + safe_delete_array(query); + return; +} + void Database::ClearRaidDetails(uint32 rid) { - char errbuf[MYSQL_ERRMSG_SIZE]; - char *query = 0; - if(rid == 0) { //clear all raids - if (!RunQuery(query, MakeAnyLenString(&query, "delete from raid_details"), errbuf)) - printf("Unable to clear raid details: %s\n",errbuf); - } else { //clear a specific group - if (!RunQuery(query, MakeAnyLenString(&query, "delete from raid_details where raidid = %lu", (unsigned long)rid), errbuf)) - printf("Unable to clear raid details: %s\n",errbuf); - } + char *query = nullptr; + + if(rid == 0) + { + //clear all raids + ClearAllRaidDetails(); + return; + } + + //clear a specific group + if (!RunQuery(query, MakeAnyLenString(&query, "delete from raid_details where raidid = %lu", (unsigned long)rid), errbuf)) + printf("Unable to clear raid details: %s\n",errbuf); safe_delete_array(query); } diff --git a/common/database.h b/common/database.h index ebcbc4439..c7adc7666 100644 --- a/common/database.h +++ b/common/database.h @@ -276,6 +276,7 @@ private: * Raid, utility methods. */ void ClearAllRaids(); + void ClearAllRaidDetails(); }; bool FetchRowMap(MYSQL_RES *result, std::map &rowmap);