[Libreoffice-bugs] [Bug 130595] FIREBIRD (internal): Parameter query with :parameter IS NULL doesn't work

bugzilla-daemon at bugs.documentfoundation.org bugzilla-daemon at bugs.documentfoundation.org
Thu Feb 13 22:07:48 UTC 2020


https://bugs.documentfoundation.org/show_bug.cgi?id=130595

Julien Nabet <serval2412 at yahoo.fr> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |lionel at mamane.lu

--- Comment #6 from Julien Nabet <serval2412 at yahoo.fr> ---
Lionel: just for information, this patch makes it work:
diff --git a/connectivity/source/drivers/firebird/PreparedStatement.cxx
b/connectivity/source/drivers/firebird/PreparedStatement.cxx
index 002723d9a697..7dd46226d028 100644
--- a/connectivity/source/drivers/firebird/PreparedStatement.cxx
+++ b/connectivity/source/drivers/firebird/PreparedStatement.cxx
@@ -240,6 +240,7 @@ void SAL_CALL OPreparedStatement::setString(sal_Int32
nParameterIndex,
         setShort(nParameterIndex, int32Value);
         break;
     }
+    case SQL_NULL: break;
     default:
         ::dbtools::throwSQLException(
             "Incorrect type for setString",
diff --git a/connectivity/source/drivers/firebird/Util.cxx
b/connectivity/source/drivers/firebird/Util.cxx
index 020dffbf2076..6b67551975cc 100644
--- a/connectivity/source/drivers/firebird/Util.cxx
+++ b/connectivity/source/drivers/firebird/Util.cxx
@@ -325,7 +325,7 @@ void firebird::mallocSQLVAR(XSQLDA* pSqlda)
             pVar->sqldata = static_cast<char *>(malloc(sizeof(sal_Bool)));
             break;
         case SQL_NULL:
-            assert(false); // TODO: implement
+            //assert(false); // TODO: implement
             break;
         case SQL_QUAD:
             assert(false); // TODO: implement
@@ -370,7 +370,7 @@ void firebird::freeSQLVAR(XSQLDA* pSqlda)
             assert(false); // TODO: implement
             break;
         case SQL_NULL:
-            assert(false); // TODO: implement
+            //assert(false); // TODO: implement
             break;
         case SQL_QUAD:
             assert(false); // TODO: implement

but I don't think it's the right path.
Don't hesitate to comment.

-- 
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/libreoffice-bugs/attachments/20200213/d6407f44/attachment.htm>


More information about the Libreoffice-bugs mailing list