diff --git a/src/previewrenderer.cpp b/src/previewrenderer.cpp index cdd7a75e810e3ab675be6e5630f6d32dc447209f..6026b93ee3899ebd792b9e4049475cacf4d5650e 100644 --- a/src/previewrenderer.cpp +++ b/src/previewrenderer.cpp @@ -117,13 +117,16 @@ PhotoboothPreviewRender::PhotoboothPreviewRender(QQuickItem* parent) { connect(this, &PreviewRenderer::lrcInstanceChanged, [this] { if (lrcInstance_) - connect(lrcInstance_->renderer(), &RenderManager::previewRenderingStopped, [this]() { - Q_EMIT hideBooth(); - }); + rendererStoppedConnection_ = connect(lrcInstance_->renderer(), + &RenderManager::previewRenderingStopped, + [this]() { Q_EMIT hideBooth(); }); }); } -PhotoboothPreviewRender::~PhotoboothPreviewRender() {} +PhotoboothPreviewRender::~PhotoboothPreviewRender() +{ + disconnect(rendererStoppedConnection_); +} QString PhotoboothPreviewRender::takePhoto(int size) @@ -133,6 +136,7 @@ PhotoboothPreviewRender::takePhoto(int size) previewImage->copy() .scaled(size, size, Qt::KeepAspectRatioByExpanding, Qt::SmoothTransformation))); } + return {}; } void diff --git a/src/previewrenderer.h b/src/previewrenderer.h index a30904d9c7295f3a09304a5828440b662dd49dc7..3fb6ad56429896c09af1cb7ece2d4227fd4d2725 100644 --- a/src/previewrenderer.h +++ b/src/previewrenderer.h @@ -82,4 +82,6 @@ Q_SIGNALS: private: void paint(QPainter* painter) override final; + + QMetaObject::Connection rendererStoppedConnection_; };