Skip to content
Commit 2f743037 authored by Fushan Wen's avatar Fushan Wen
Browse files

Do not query all available image plugins when determining background type

In order to determine whether the wallpaper is animated or not,
MediaProxy::determineBackgroundType uses the following algorithm:

if (QMovie::supportedFormats().contains(QFileInfo(filePath).suffix().toLower().toLatin1())) {

This enumerates all image types that support animations, then
checks whether the one we care about is contained in the list.

Unfortunately, to check which image types support animations,
QMovie::supportedFormats() needs to instantiate each and every image
reader plugin that is available and ask it whether it supports
animations.

STEPS TO REPRODUCE

We have caught this in Fedora by accident, because we ran into a bug:
https://bugzilla.redhat.com/show_bug.cgi?id=2144200
where Chromium and PDFium would fail to load on Apple hardware using
"Apple Silicon" ARM CPUs. This surprisingly lead to the whole Plasma
shell failing to start because the QImage PDF reader would crash
during initialization, crashing the entire...
parent f80f40d3
Pipeline #275802 passed with stage
in 11 minutes and 46 seconds
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment