diff options
| author | SulfurNitride <SulfurNitride@users.noreply.github.com> | 2026-03-28 16:17:06 -0500 |
|---|---|---|
| committer | SulfurNitride <SulfurNitride@users.noreply.github.com> | 2026-03-28 16:17:06 -0500 |
| commit | 14e1301e55a16b238be291627509ad72870ef24a (patch) | |
| tree | 9861c8d9289e78a7baf67c1f767e768ab01a736e /src | |
| parent | 1f9cb3689d981ef96ff1d577fe6e172f6d67f577 (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.cpp | 11 |
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;
|
