aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/imageviewer/imageviewerfile.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/imageviewer/imageviewerfile.cpp')
-rw-r--r--src/plugins/imageviewer/imageviewerfile.cpp10
1 files changed, 9 insertions, 1 deletions
diff --git a/src/plugins/imageviewer/imageviewerfile.cpp b/src/plugins/imageviewer/imageviewerfile.cpp
index 2a6204e11d..3fe26890d0 100644
--- a/src/plugins/imageviewer/imageviewerfile.cpp
+++ b/src/plugins/imageviewer/imageviewerfile.cpp
@@ -126,7 +126,15 @@ Core::IDocument::OpenResult ImageViewerFile::openImpl(QString *errorString,
m_type = TypeMovie;
m_movie = new QMovie(fileName, QByteArray(), this);
m_movie->setCacheMode(QMovie::CacheAll);
- connect(m_movie, &QMovie::finished, m_movie, &QMovie::start);
+ connect(
+ m_movie,
+ &QMovie::finished,
+ m_movie,
+ [this] {
+ if (m_movie->isValid())
+ m_movie->start();
+ },
+ Qt::QueuedConnection);
connect(m_movie, &QMovie::resized, this, &ImageViewerFile::imageSizeChanged);
m_movie->start();
m_isPaused = false; // force update