From 90e11e0d639f043c66ce880a108b7f3dac2cf045 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lukas=20Br=C3=BCbach?= Date: Sat, 5 Sep 2026 22:56:09 +0200 Subject: [PATCH] [DeckShare] Fix share-link expiry build on the minimum-supported Qt QTimeZone::UTC (the Initialization enum) only exists since Qt 6.7, so Debian 12 and Ubuntu 24.04 (Qt 6.4) fail to compile the share-link expiry handling in the share dialog and the two deck-storage tabs. Mirror the existing games_model guard and fall back to Qt::UTC on older Qt. --- cockatrice/src/interface/widgets/dialogs/dlg_share_deck.cpp | 4 ++++ cockatrice/src/interface/widgets/tabs/tab_deck_storage.cpp | 4 ++++ .../tabs/visual_deck_storage/tab_deck_storage_visual.cpp | 4 ++++ 3 files changed, 12 insertions(+) diff --git a/cockatrice/src/interface/widgets/dialogs/dlg_share_deck.cpp b/cockatrice/src/interface/widgets/dialogs/dlg_share_deck.cpp index f5f7f295c..032407e38 100644 --- a/cockatrice/src/interface/widgets/dialogs/dlg_share_deck.cpp +++ b/cockatrice/src/interface/widgets/dialogs/dlg_share_deck.cpp @@ -72,7 +72,11 @@ void DlgShareDeck::shareFinished(const Response &response, const CommandContaine const Response_DeckShareCreate &resp = response.GetExtension(Response_DeckShareCreate::ext); const QString token = QString::fromStdString(resp.token()); +#if QT_VERSION >= QT_VERSION_CHECK(6, 7, 0) const QDateTime expiry = QDateTime::fromSecsSinceEpoch(resp.expires_at(), QTimeZone::UTC); +#else + const QDateTime expiry = QDateTime::fromSecsSinceEpoch(resp.expires_at(), Qt::UTC); +#endif const QString link = DeckShareUtils::buildShareLink(client, token); DeckShareUtils::copyShareLinkToClipboard(link); diff --git a/cockatrice/src/interface/widgets/tabs/tab_deck_storage.cpp b/cockatrice/src/interface/widgets/tabs/tab_deck_storage.cpp index 6c3f30cda..f9ccd6beb 100644 --- a/cockatrice/src/interface/widgets/tabs/tab_deck_storage.cpp +++ b/cockatrice/src/interface/widgets/tabs/tab_deck_storage.cpp @@ -779,7 +779,11 @@ void TabDeckStorage::shareFromTreeFinished(const Response &response, const Comma } const Response_DeckShareCreate &resp = response.GetExtension(Response_DeckShareCreate::ext); const QString token = QString::fromStdString(resp.token()); +#if QT_VERSION >= QT_VERSION_CHECK(6, 7, 0) const QDateTime expiry = QDateTime::fromSecsSinceEpoch(resp.expires_at(), QTimeZone::UTC); +#else + const QDateTime expiry = QDateTime::fromSecsSinceEpoch(resp.expires_at(), Qt::UTC); +#endif const QString link = DeckShareUtils::buildShareLink(client, token); DeckShareUtils::copyShareLinkToClipboard(link); diff --git a/cockatrice/src/interface/widgets/tabs/visual_deck_storage/tab_deck_storage_visual.cpp b/cockatrice/src/interface/widgets/tabs/visual_deck_storage/tab_deck_storage_visual.cpp index fca9c9f0c..e042211f3 100644 --- a/cockatrice/src/interface/widgets/tabs/visual_deck_storage/tab_deck_storage_visual.cpp +++ b/cockatrice/src/interface/widgets/tabs/visual_deck_storage/tab_deck_storage_visual.cpp @@ -169,7 +169,11 @@ void TabDeckStorageVisual::shareFinished(const Response &response, const Command const Response_DeckShareCreate &resp = response.GetExtension(Response_DeckShareCreate::ext); const QString token = QString::fromStdString(resp.token()); +#if QT_VERSION >= QT_VERSION_CHECK(6, 7, 0) const QDateTime expiry = QDateTime::fromSecsSinceEpoch(resp.expires_at(), QTimeZone::UTC); +#else + const QDateTime expiry = QDateTime::fromSecsSinceEpoch(resp.expires_at(), Qt::UTC); +#endif const QString link = DeckShareUtils::buildShareLink(tabSupervisor->getClient(), token); DeckShareUtils::copyShareLinkToClipboard(link);