Simplify macOS checks for a null image

This commit is contained in:
Loren Burkholder 2021-03-02 19:43:25 -05:00 committed by Nicolas Werner
parent 5da6ab0aec
commit 716c598f4a
No known key found for this signature in database
GPG Key ID: C8D75E610773F2D9
2 changed files with 15 additions and 2 deletions

View File

@ -80,6 +80,8 @@ private:
const QString &subtitle,
const QString &informativeText,
const QImage *bodyImage);
QImage *getImgOrNullptr(const QString &path);
#endif
#if defined(Q_OS_WINDOWS)

View File

@ -41,7 +41,7 @@ NotificationsManager::postNotification(const mtx::responses::Notification &notif
QImage *image = nullptr;
if (mtx::accessors::msg_type(notification.event) == mtx::events::MessageType::Image)
image = new QImage{cacheImage(notification.event)};
image = getImgOrNullptr(cacheImage(notification.event));
const auto isEncrypted =
std::get_if<mtx::events::EncryptedEvent<mtx::events::msg::Encrypted>>(
@ -58,6 +58,17 @@ NotificationsManager::postNotification(const mtx::responses::Notification &notif
const QString messageInfo =
(isReply ? tr("%1 replied to a message") : tr("%1 sent a message")).arg(sender);
objCxxPostNotification(
room_name, messageInfo, formatNotification(notification), (image != nullptr && !image->isNull()) ? image : nullptr);
room_name, messageInfo, formatNotification(notification), image);
}
}
QImage *
NotificationsManager::getImgOrNullptr(const QString &path)
{
auto img = new QImage{path};
if (img->isNull()) {
delete img;
return nullptr;
}
return img;
}