QtSql: fix code snippets
The code snippets retrieving the native database driver handles was using qstrcmp() wrong since that is returning 0 when the strings are equal. In some snippets there was even a plain char * comparison which would not work at all. Fix all the places by correctly using qstrcmp() and replace the checks for the valid pointer by not checking for 0. Fixes: QTBUG-70598 Change-Id: I5c53dcfc51c958203fc60fa6a23dd6b27faa1d96 Reviewed-by: André Hartmann <aha_1980@gmx.de> Reviewed-by: Paul Wicking <paul.wicking@qt.io> Reviewed-by: Venugopal Shivashankar <Venugopal.Shivashankar@qt.io>bb10
parent
91d43a48f7
commit
5f9a0d64b3
|
|
@ -106,7 +106,7 @@ while (query.next()) {
|
|||
QVariant v = query.result()->handle();
|
||||
if (qstrcmp(v.typeName(), "PGresult*") == 0) {
|
||||
PGresult *handle = *static_cast<PGresult **>(v.data());
|
||||
if (handle != 0) {
|
||||
if (handle) {
|
||||
// Do something...
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -51,10 +51,10 @@
|
|||
//! [0]
|
||||
QSqlDatabase db = ...;
|
||||
QVariant v = db.driver()->handle();
|
||||
if (v.isValid() && qstrcmp(v.typeName(), "sqlite3*")==0) {
|
||||
if (v.isValid() && qstrcmp(v.typeName(), "sqlite3*") == 0) {
|
||||
// v.data() returns a pointer to the handle
|
||||
sqlite3 *handle = *static_cast<sqlite3 **>(v.data());
|
||||
if (handle != 0) { // check that it is not NULL
|
||||
if (handle) {
|
||||
...
|
||||
}
|
||||
}
|
||||
|
|
@ -62,13 +62,13 @@ if (v.isValid() && qstrcmp(v.typeName(), "sqlite3*")==0) {
|
|||
|
||||
|
||||
//! [1]
|
||||
if (qstrcmp(v.typeName(), "PGconn*")) {
|
||||
if (qstrcmp(v.typeName(), "PGconn*") == 0) {
|
||||
PGconn *handle = *static_cast<PGconn **>(v.data());
|
||||
if (handle != 0) ...
|
||||
if (handle) ...
|
||||
}
|
||||
|
||||
if (qstrcmp(v.typeName(), "MYSQL*")) {
|
||||
if (qstrcmp(v.typeName(), "MYSQL*") == 0) {
|
||||
MYSQL *handle = *static_cast<MYSQL **>(v.data());
|
||||
if (handle != 0) ...
|
||||
if (handle) ...
|
||||
}
|
||||
//! [1]
|
||||
|
|
|
|||
|
|
@ -72,10 +72,10 @@ if (!q.execBatch())
|
|||
//! [1]
|
||||
QSqlQuery query = ...
|
||||
QVariant v = query.result()->handle();
|
||||
if (v.isValid() && qstrcmp(v.typeName(), "sqlite3_stmt*")) {
|
||||
if (v.isValid() && qstrcmp(v.typeName(), "sqlite3_stmt*") == 0) {
|
||||
// v.data() returns a pointer to the handle
|
||||
sqlite3_stmt *handle = *static_cast<sqlite3_stmt **>(v.data());
|
||||
if (handle != 0) { // check that it is not NULL
|
||||
if (handle) {
|
||||
...
|
||||
}
|
||||
}
|
||||
|
|
@ -83,13 +83,13 @@ if (v.isValid() && qstrcmp(v.typeName(), "sqlite3_stmt*")) {
|
|||
|
||||
|
||||
//! [2]
|
||||
if (v.typeName() == "PGresult*") {
|
||||
if (qstrcmp(v.typeName(), "PGresult*") == 0) {
|
||||
PGresult *handle = *static_cast<PGresult **>(v.data());
|
||||
if (handle != 0) ...
|
||||
if (handle) ...
|
||||
}
|
||||
|
||||
if (v.typeName() == "MYSQL_STMT*") {
|
||||
if (qstrcmp(v.typeName(), "MYSQL_STMT*") == 0) {
|
||||
MYSQL_STMT *handle = *static_cast<MYSQL_STMT **>(v.data());
|
||||
if (handle != 0) ...
|
||||
if (handle) ...
|
||||
}
|
||||
//! [2]
|
||||
|
|
|
|||
Loading…
Reference in New Issue