connectivity/source/drivers/mysqlc/mysqlc_preparedstatement.cxx | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-)
New commits: commit 6701e0ac8ad98586280f071fac9f3e094aed8ee8 Author: Julien Nabet <serval2...@yahoo.fr> AuthorDate: Mon Jul 11 21:09:24 2022 +0200 Commit: Lionel Mamane <lio...@mamane.lu> CommitDate: Tue Jul 12 09:40:26 2022 +0200 tdf#149951: MySQL/MariaDB (direct connection) save images in BLOB-fields There were several pbs: 1) no size value was given to resetSqlVar whereas all BLOB or related need an explicit size so was 0 => provide size value with x.getLength() 2) Type provided was Sequence instead of a sal_Int8 so unitSize was 8 instead of 1 => provide "&x[0]" instead of "&x" 3) m_bindMetas[nIndex].length wasn't filled => initialize it with x.getLength() Change-Id: Iaca6a8f8142601c224d6f7aabe4414e61586d29f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136964 Reviewed-by: Julien Nabet <serval2...@yahoo.fr> (cherry picked from commit 393aa8210992d27c79874f47646b27fb04e564d3) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136974 Tested-by: Jenkins Reviewed-by: Lionel Mamane <lio...@mamane.lu> diff --git a/connectivity/source/drivers/mysqlc/mysqlc_preparedstatement.cxx b/connectivity/source/drivers/mysqlc/mysqlc_preparedstatement.cxx index 6ec6a89f175c..3c1c6d88ec4a 100644 --- a/connectivity/source/drivers/mysqlc/mysqlc_preparedstatement.cxx +++ b/connectivity/source/drivers/mysqlc/mysqlc_preparedstatement.cxx @@ -493,9 +493,10 @@ void SAL_CALL OPreparedStatement::setBytes(sal_Int32 parameter, const Sequence<s checkParameterIndex(parameter); const sal_Int32 nIndex = parameter - 1; - m_binds[nIndex].buffer_type = MYSQL_TYPE_BLOB; // FIXME - mysqlc_sdbc_driver::resetSqlVar(&m_binds[nIndex].buffer, &x, MYSQL_TYPE_BLOB); + m_binds[nIndex].buffer_type = MYSQL_TYPE_BLOB; + mysqlc_sdbc_driver::resetSqlVar(&m_binds[nIndex].buffer, &x[0], MYSQL_TYPE_BLOB, x.getLength()); m_bindMetas[nIndex].is_null = false; + m_bindMetas[nIndex].length = x.getLength(); } void SAL_CALL OPreparedStatement::setCharacterStream(sal_Int32 parameter,