aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorShauren <shauren.trinity@gmail.com>2024-03-01 11:29:09 +0100
committerShauren <shauren.trinity@gmail.com>2025-04-13 18:07:21 +0200
commit53f0579ccaa55a42a8721cf26f003718c421d8ce (patch)
treed4a5fe8512513ab826ebca305f0db1464c0d13d4
parent27b759ef6a91c5a54dcb175b3844a0e8d13a7911 (diff)
Core/Database: Silence deprecation warning on mysql_stmt_bind_param
(cherry picked from commit 5c44ac178798689a4cd31e59bcfeeeecaafa371e)
-rw-r--r--src/server/database/Database/MySQLConnection.cpp23
1 files changed, 21 insertions, 2 deletions
diff --git a/src/server/database/Database/MySQLConnection.cpp b/src/server/database/Database/MySQLConnection.cpp
index 9460892256f..ff541281036 100644
--- a/src/server/database/Database/MySQLConnection.cpp
+++ b/src/server/database/Database/MySQLConnection.cpp
@@ -213,6 +213,25 @@ bool MySQLConnection::Execute(char const* sql)
return true;
}
+static auto mysql_bind_param_no_deprecated(MYSQL_STMT* stmt, MYSQL_BIND* bnd)
+{
+#if TRINITY_COMPILER == TRINITY_COMPILER_GNU
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
+#else
+#pragma warning(push)
+#pragma warning(disable: 4996)
+#endif
+
+ return mysql_stmt_bind_param(stmt, bnd);
+
+#if TRINITY_COMPILER == TRINITY_COMPILER_GNU
+#pragma GCC diagnostic pop
+#else
+#pragma warning(pop)
+#endif
+}
+
bool MySQLConnection::Execute(PreparedStatementBase* stmt)
{
if (!m_Mysql)
@@ -230,7 +249,7 @@ bool MySQLConnection::Execute(PreparedStatementBase* stmt)
uint32 _s = getMSTime();
- if (mysql_stmt_bind_param(msql_STMT, msql_BIND))
+ if (mysql_bind_param_no_deprecated(msql_STMT, msql_BIND))
{
uint32 lErrno = mysql_errno(m_Mysql);
TC_LOG_ERROR("sql.sql", "SQL(p): {}\n [ERROR]: [{}] {}", m_mStmt->getQueryString(), lErrno, mysql_stmt_error(msql_STMT));
@@ -278,7 +297,7 @@ bool MySQLConnection::_Query(PreparedStatementBase* stmt, MySQLPreparedStatement
uint32 _s = getMSTime();
- if (mysql_stmt_bind_param(msql_STMT, msql_BIND))
+ if (mysql_bind_param_no_deprecated(msql_STMT, msql_BIND))
{
uint32 lErrno = mysql_errno(m_Mysql);
TC_LOG_ERROR("sql.sql", "SQL(p): {}\n [ERROR]: [{}] {}", m_mStmt->getQueryString(), lErrno, mysql_stmt_error(msql_STMT));