aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorSulfurNitride <SulfurNitride@users.noreply.github.com>2026-03-28 16:17:06 -0500
committerSulfurNitride <SulfurNitride@users.noreply.github.com>2026-03-28 16:17:06 -0500
commit14e1301e55a16b238be291627509ad72870ef24a (patch)
tree9861c8d9289e78a7baf67c1f767e768ab01a736e /src
parent1f9cb3689d981ef96ff1d577fe6e172f6d67f577 (diff)
Hard-blacklist rootbuilder plugin from loading
RootBuilder is incompatible with Fluorine/Linux. Add a permanent hard blacklist (case-insensitive) in loadPlugins() so it is silently skipped for all users. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Diffstat (limited to 'src')
-rw-r--r--src/src/plugincontainer.cpp11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/src/plugincontainer.cpp b/src/src/plugincontainer.cpp
index 0c8c89b..d53d8bf 100644
--- a/src/src/plugincontainer.cpp
+++ b/src/src/plugincontainer.cpp
@@ -1302,10 +1302,21 @@ void PluginContainer::loadPlugins()
pluginMap[bundledIter.fileName()] = bundledIter.filePath();
}
+ // Plugins that are permanently blacklisted for all users. These are
+ // known-incompatible with Fluorine / Linux and must never be loaded.
+ static const QSet<QString> hardBlacklist = {
+ QStringLiteral("rootbuilder"),
+ };
+
for (auto it = pluginMap.cbegin(); it != pluginMap.cend(); ++it) {
const QString& fileName = it.key();
const QString& filepath = it.value();
+ if (hardBlacklist.contains(fileName.toLower())) {
+ log::debug("plugin \"{}\" is hard-blacklisted, skipping", fileName);
+ continue;
+ }
+
if (skipPlugin == fileName) {
log::debug("plugin \"{}\" skipped for this session", fileName);
continue;