Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-99408

[SQL] The SQL driver for Firebird/Interbase does not unpack the QVariant before null check

XMLWordPrintable

    • 999d856bc8 (qt/qtbase/dev) 999d856bc8 (qt/tqtc-qtbase/dev) d2e8310680 (qt/qtbase/6.2.3) d2e8310680 (qt/tqtc-qtbase/6.2.3) 2d7c19fde2 (qt/qtbase/6.3) 2d7c19fde2 (qt/tqtc-qtbase/6.3) 3474ae0d40 (qt/qtbase/6.2) 3474ae0d40 (qt/tqtc-qtbase/6.2)

      The implementation of the Firebird/Interbase SQL driver does not reflect the change in QVariant from Qt5 to Qt6 where the QVariant does not return true for isNull() if the contained object returns true for isNull().

      Note: This behavior has been changed from Qt 5, where isNull() would also return true if the variant contained an object of a builtin type with an isNull() method that returned true for that object.

      The null check in the SQL driver is done before unpacking the QVariant which will leads to writing non null values for null values into the database. The driver should check if the variable is null after unpacking the QVariant based on the object type it's containing.

        For Gerrit Dashboard: QTBUG-99408
        # Subject Branch Project Status CR V

            vhilshei Volker Hilsheimer
            tuomas.vaarala Tuomas Vaarala
            Votes:
            1 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved:

                There are no open Gerrit changes