[Libreoffice-commits] core.git: Branch 'libreoffice-6-4' - connectivity/source

Julien Nabet (via logerrit) logerrit at kemper.freedesktop.org
Wed Mar 25 15:31:31 UTC 2020


 connectivity/source/drivers/firebird/Util.cxx |   12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

New commits:
commit ee2f51cd43ef4e5fbda33918daee26e06ab38580
Author:     Julien Nabet <serval2412 at yahoo.fr>
AuthorDate: Mon Mar 9 18:59:29 2020 +0100
Commit:     Xisco Faulí <xiscofauli at libreoffice.org>
CommitDate: Wed Mar 25 16:31:01 2020 +0100

    tdf#130334: Firebird deal with array fields
    
    See https://bugs.documentfoundation.org/show_bug.cgi?id=130334#c11
    See https://firebirdsql.org/file/documentation/reference_manuals/fblangref25-en/html/fblangref25-datatypes-bnrytypes.html#fblangref25-datatypes-array
    Change-Id: I27c53b9c771fcdb3b89e66af325a8234c7de08bb
    
    Change-Id: I7b9d27f78e351eda611d13f5a07ef3c80ff00e3a
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/90239
    Tested-by: Jenkins
    Reviewed-by: Julien Nabet <serval2412 at yahoo.fr>
    (cherry picked from commit 2ede753a8b7adecbf6ca78745e43e23c7498e289)
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/90042
    Reviewed-by: Xisco Faulí <xiscofauli at libreoffice.org>

diff --git a/connectivity/source/drivers/firebird/Util.cxx b/connectivity/source/drivers/firebird/Util.cxx
index c4d6eeece4d1..572767851770 100644
--- a/connectivity/source/drivers/firebird/Util.cxx
+++ b/connectivity/source/drivers/firebird/Util.cxx
@@ -304,12 +304,12 @@ void firebird::mallocSQLVAR(XSQLDA* pSqlda)
         case SQL_TIMESTAMP:
             pVar->sqldata = static_cast<char*>(malloc(sizeof(ISC_TIMESTAMP)));
             break;
+        // an ARRAY is in fact a BLOB of a specialized type
+        // See https://firebirdsql.org/file/documentation/reference_manuals/fblangref25-en/html/fblangref25-datatypes-bnrytypes.html#fblangref25-datatypes-array
+        case SQL_ARRAY:
         case SQL_BLOB:
             pVar->sqldata = static_cast<char*>(malloc(sizeof(ISC_QUAD)));
             break;
-        case SQL_ARRAY:
-            assert(false); // TODO: implement
-            break;
         case SQL_TYPE_TIME:
             pVar->sqldata = static_cast<char*>(malloc(sizeof(ISC_TIME)));
             break;
@@ -353,6 +353,9 @@ void firebird::freeSQLVAR(XSQLDA* pSqlda)
         case SQL_DOUBLE:
         case SQL_D_FLOAT:
         case SQL_TIMESTAMP:
+        // an ARRAY is in fact a BLOB of a specialized type
+        // See https://firebirdsql.org/file/documentation/reference_manuals/fblangref25-en/html/fblangref25-datatypes-bnrytypes.html#fblangref25-datatypes-array
+        case SQL_ARRAY:
         case SQL_BLOB:
         case SQL_INT64:
         case SQL_TYPE_TIME:
@@ -364,9 +367,6 @@ void firebird::freeSQLVAR(XSQLDA* pSqlda)
                 pVar->sqldata = nullptr;
             }
             break;
-        case SQL_ARRAY:
-            assert(false); // TODO: implement
-            break;
         case SQL_NULL:
             assert(false); // TODO: implement
             break;


More information about the Libreoffice-commits mailing list