diff options
Diffstat (limited to 'media-gfx/digikam/files/digikam-5.7.0-mariadb-10.2-1.patch')
-rw-r--r-- | media-gfx/digikam/files/digikam-5.7.0-mariadb-10.2-1.patch | 58 |
1 files changed, 58 insertions, 0 deletions
diff --git a/media-gfx/digikam/files/digikam-5.7.0-mariadb-10.2-1.patch b/media-gfx/digikam/files/digikam-5.7.0-mariadb-10.2-1.patch new file mode 100644 index 000000000000..e3e968fbaac6 --- /dev/null +++ b/media-gfx/digikam/files/digikam-5.7.0-mariadb-10.2-1.patch @@ -0,0 +1,58 @@ +From 395ab5b02ed7d02736a08e370217c0c96b391bb9 Mon Sep 17 00:00:00 2001 +From: Maik Qualmann <metzpinguin@gmail.com> +Date: Wed, 6 Dec 2017 08:09:44 +0100 +Subject: Workaround for the problem mariaDB >= 10.2 and QTBUG-63108 + +--- + libs/album/albummanager.cpp | 14 ++++++++++++++ + 1 file changed, 14 insertions(+) + +diff --git a/libs/album/albummanager.cpp b/libs/album/albummanager.cpp +index a72acc3..2ea40e9 100644 +--- a/libs/album/albummanager.cpp ++++ b/libs/album/albummanager.cpp +@@ -162,6 +162,7 @@ public: + hasPriorizedDbPath(false), + dbPort(0), + dbInternalServer(false), ++ dbFakeConnection(false), + showOnlyAvailableAlbums(false), + albumListJob(0), + dateListJob(0), +@@ -192,6 +193,7 @@ public: + QString dbHostName; + int dbPort; + bool dbInternalServer; ++ bool dbFakeConnection; + + bool showOnlyAvailableAlbums; + +@@ -391,6 +393,11 @@ void AlbumManager::cleanUp() + d->personListJob->cancel(); + d->personListJob = 0; + } ++ ++ if (d->dbFakeConnection) ++ { ++ QSqlDatabase::removeDatabase(QLatin1String("FakeConnection")); ++ } + } + + bool AlbumManager::databaseEqual(const DbEngineParameters& parameters) const +@@ -727,6 +734,13 @@ bool AlbumManager::setDatabase(const DbEngineParameters& params, bool priority, + // ensure, embedded database is loaded + qCDebug(DIGIKAM_GENERAL_LOG) << params; + ++ // workaround for the problem mariaDB >= 10.2 and QTBUG-63108. ++ if (params.isMySQL() && !d->dbFakeConnection) ++ { ++ QSqlDatabase::addDatabase(QLatin1String("QMYSQL"), QLatin1String("FakeConnection")); ++ d->dbFakeConnection = true; ++ } ++ + if (params.internalServer) + { + DatabaseServerError result = DatabaseServerStarter::instance()->startServerManagerProcess(params); +-- +cgit v0.11.2 + |