From bb8438c09b0458533e5b34c1917e97838fce2504 Mon Sep 17 00:00:00 2001 From: Machiavelli Date: Sun, 12 Sep 2010 15:11:08 +0200 Subject: Core/DBLayer: Add GetCString method for PreparedResultSet (dynamic copy is responsibility of the high level code) --HG-- branch : trunk --- src/server/shared/Database/QueryResult.cpp | 8 ++++++++ src/server/shared/Database/QueryResult.h | 1 + 2 files changed, 9 insertions(+) (limited to 'src/server/shared/Database') diff --git a/src/server/shared/Database/QueryResult.cpp b/src/server/shared/Database/QueryResult.cpp index 9a0cf6293c6..18866e49fac 100644 --- a/src/server/shared/Database/QueryResult.cpp +++ b/src/server/shared/Database/QueryResult.cpp @@ -260,6 +260,14 @@ std::string PreparedResultSet::GetString(uint32 index) return std::string(static_cast(rbind->m_rBind[index].buffer), *rbind->m_rBind[index].length); } +const char* PreparedResultSet::GetCString(uint32 index) +{ + if (!CheckFieldIndex(index)) + return '\0'; + + return static_cast(rbind->m_rBind[index].buffer); +} + bool PreparedResultSet::NextRow() { if (row_position >= num_rows) diff --git a/src/server/shared/Database/QueryResult.h b/src/server/shared/Database/QueryResult.h index bb1a4684acc..805d31f3629 100755 --- a/src/server/shared/Database/QueryResult.h +++ b/src/server/shared/Database/QueryResult.h @@ -211,6 +211,7 @@ class PreparedResultSet int64 GetInt64(uint32 index); float GetFloat(uint32 index); std::string GetString(uint32 index); + const char* GetCString(uint32 index); bool NextRow(); -- cgit v1.2.3