From 9a3431ba886c124c9f51e990c074cb9f4da67bdd Mon Sep 17 00:00:00 2001 From: Eike Ziller Date: Fri, 25 Feb 2022 10:31:57 +0100 Subject: [PATCH] Mimetypes v3: Never use installed mime data It gets in the way, e.g. "No plugin can open project type "application/ x-kicad-project"" when trying to open .pro files. Mostly relevant on Linux, where mime data is actually installed system-wide. Re-implements 4f5f5d75b45ec9db97377485af08d113ec8197f4 Change-Id: Ifd34214b99b77720cfc6d22e6702ca6e9ba513dc Reviewed-by: Jarek Kobus --- src/libs/utils/mimetypes2/mimedatabase.cpp | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/libs/utils/mimetypes2/mimedatabase.cpp b/src/libs/utils/mimetypes2/mimedatabase.cpp index d5eb9c36b74..d77ce2b7045 100644 --- a/src/libs/utils/mimetypes2/mimedatabase.cpp +++ b/src/libs/utils/mimetypes2/mimedatabase.cpp @@ -101,8 +101,13 @@ bool MimeDatabasePrivate::shouldCheck() void MimeDatabasePrivate::loadProviders() { +#if 0 // We use QStandardPaths every time to check if new files appeared const QStringList mimeDirs = QStandardPaths::locateAll(QStandardPaths::GenericDataLocation, QLatin1String("mime"), QStandardPaths::LocateDirectory); +#else + // Qt Creator never uses the standard paths, they can conflict with our setup + const QStringList mimeDirs; +#endif const auto fdoIterator = std::find_if(mimeDirs.constBegin(), mimeDirs.constEnd(), [](const QString &mimeDir) -> bool { return QFileInfo::exists(mimeDir + QStringLiteral("/packages/freedesktop.org.xml")); } );