[Libreoffice-commits] core.git: Branch 'libreoffice-6-3' - connectivity/source
Tamas Bunth (via logerrit)
logerrit at kemper.freedesktop.org
Fri Aug 2 15:14:14 UTC 2019
connectivity/source/drivers/mysqlc/mysqlc_prepared_resultset.cxx | 8 +++++++-
1 file changed, 7 insertions(+), 1 deletion(-)
New commits:
commit 7b2fa9b757f0860d82a7bea9efa503a50a6b70a0
Author: Tamas Bunth <tamas.bunth at collabora.co.uk>
AuthorDate: Tue Jul 30 15:05:35 2019 +0200
Commit: Xisco Faulí <xiscofauli at libreoffice.org>
CommitDate: Fri Aug 2 17:13:29 2019 +0200
mysqlc: Support reading blob as string
Change-Id: I1ef0c3817bc255e7f0c38aca73c475b19d5d7d9b
Reviewed-on: https://gerrit.libreoffice.org/76600
Tested-by: Jenkins
Reviewed-by: Tamás Bunth <btomi96 at gmail.com>
(cherry picked from commit cc4c20d08fca59819e121c0678d1e595a97c92c9)
Reviewed-on: https://gerrit.libreoffice.org/76746
Reviewed-by: Xisco Faulí <xiscofauli at libreoffice.org>
diff --git a/connectivity/source/drivers/mysqlc/mysqlc_prepared_resultset.cxx b/connectivity/source/drivers/mysqlc/mysqlc_prepared_resultset.cxx
index 6c4711f65c71..6146ff6a9816 100644
--- a/connectivity/source/drivers/mysqlc/mysqlc_prepared_resultset.cxx
+++ b/connectivity/source/drivers/mysqlc/mysqlc_prepared_resultset.cxx
@@ -309,7 +309,10 @@ template <> DateTime OPreparedResultSet::retrieveValue(sal_Int32 column)
template <> OUString OPreparedResultSet::retrieveValue(sal_Int32 column)
{
- if (getTypeFromMysqlType(m_aFields[column - 1].type) != std::type_index(typeid(OUString)))
+ // redirect call to the appropiate method if needed
+ // BLOB can be simply read out as string
+ if (getTypeFromMysqlType(m_aFields[column - 1].type) != std::type_index(typeid(OUString))
+ && m_aFields[column - 1].type != MYSQL_TYPE_BLOB)
return getRowSetValue(column);
const char* sStr = static_cast<const char*>(m_aData[column - 1].buffer);
@@ -345,6 +348,9 @@ ORowSetValue OPreparedResultSet::getRowSetValue(sal_Int32 nColumnIndex)
case MYSQL_TYPE_DECIMAL:
case MYSQL_TYPE_NEWDECIMAL:
return getString(nColumnIndex);
+ case MYSQL_TYPE_BLOB:
+ throw SQLException("Column with type BLOB cannot be converted", *this, OUString(), 1,
+ Any());
default:
SAL_WARN("connectivity.mysqlc", "OPreparedResultSet::getRowSetValue: unknown type: "
<< m_aFields[nColumnIndex - 1].type);
More information about the Libreoffice-commits
mailing list