aboutsummaryrefslogtreecommitdiff
path: root/src/server/shared/Database/QueryResult.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/server/shared/Database/QueryResult.h')
-rwxr-xr-xsrc/server/shared/Database/QueryResult.h8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/server/shared/Database/QueryResult.h b/src/server/shared/Database/QueryResult.h
index 7a503869cb1..bb1a4684acc 100755
--- a/src/server/shared/Database/QueryResult.h
+++ b/src/server/shared/Database/QueryResult.h
@@ -101,15 +101,17 @@ class ResultBind
friend class PreparedResultSet;
public:
- ResultBind(MYSQL_STMT* stmt) : m_rBind(NULL), m_stmt(stmt), m_isNull(NULL), m_length(NULL), m_fieldCount(0) {}
+ ResultBind(MYSQL_STMT* stmt) : m_rBind(NULL), m_stmt(stmt), m_isNull(NULL), m_length(NULL), m_res(NULL), m_fieldCount(0) {}
~ResultBind()
{
+ if (m_res)
+ mysql_free_result(m_res); // metadata
+
if (!m_fieldCount)
return;
CleanUp(); // Clean up buffer
- mysql_stmt_free_result(m_stmt);
}
void BindResult(uint32& num_rows);
@@ -205,6 +207,8 @@ class PreparedResultSet
int16 GetInt16(uint32 index);
uint32 GetUInt32(uint32 index);
int32 GetInt32(uint32 index);
+ uint64 GetUInt64(uint32 index);
+ int64 GetInt64(uint32 index);
float GetFloat(uint32 index);
std::string GetString(uint32 index);