commit: c30a0900c5d3be4d07c71c66e9580058df24f1a7 Author: Viorel Munteanu <ceamac <AT> gentoo <DOT> org> AuthorDate: Thu Aug 28 17:21:56 2025 +0000 Commit: Viorel Munteanu <ceamac <AT> gentoo <DOT> org> CommitDate: Thu Aug 28 17:50:42 2025 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c30a0900
app-emulation/virtualbox: fix freeze with recent versions of QT Signed-off-by: Viorel Munteanu <ceamac <AT> gentoo.org> .../files/virtualbox-7.2.0-fix-qt-freeze.patch | 29 ++++++++++++++++++++++ ...box-7.2.0.ebuild => virtualbox-7.2.0-r1.ebuild} | 2 ++ 2 files changed, 31 insertions(+) diff --git a/app-emulation/virtualbox/files/virtualbox-7.2.0-fix-qt-freeze.patch b/app-emulation/virtualbox/files/virtualbox-7.2.0-fix-qt-freeze.patch new file mode 100644 index 000000000000..52220491aad2 --- /dev/null +++ b/app-emulation/virtualbox/files/virtualbox-7.2.0-fix-qt-freeze.patch @@ -0,0 +1,29 @@ +https://github.com/VirtualBox/virtualbox/issues/70#issuecomment-3233251540 + +Fix freeze with QT 6.9 + +--- a/src/VBox/Frontends/VirtualBox/src/globals/UITranslationEventListener.cpp ++++ b/src/VBox/Frontends/VirtualBox/src/globals/UITranslationEventListener.cpp +@@ -81,7 +81,8 @@ + && pEvent->type() == QEvent::LanguageChange + && pObject == qApp) + { +- emit sigRetranslateUI(); ++ /* Send translation signal asynchronously: */ ++ QMetaObject::invokeMethod(this, "sltRetranslateUI", Qt::QueuedConnection); + } + /* Call to base-class: */ + return QObject::eventFilter(pObject, pEvent); +--- a/src/VBox/Frontends/VirtualBox/src/globals/UITranslationEventListener.h ++++ b/src/VBox/Frontends/VirtualBox/src/globals/UITranslationEventListener.h +@@ -55,6 +55,10 @@ + + bool eventFilter(QObject *pObject, QEvent *pEvent) RT_OVERRIDE RT_FINAL; + ++private slots: ++ ++ void sltRetranslateUI() { emit sigRetranslateUI(); } ++ + private: + + UITranslationEventListener(QObject *pParent = 0); diff --git a/app-emulation/virtualbox/virtualbox-7.2.0.ebuild b/app-emulation/virtualbox/virtualbox-7.2.0-r1.ebuild similarity index 99% rename from app-emulation/virtualbox/virtualbox-7.2.0.ebuild rename to app-emulation/virtualbox/virtualbox-7.2.0-r1.ebuild index ed7f9627c4ee..f75d69ba4e16 100644 --- a/app-emulation/virtualbox/virtualbox-7.2.0.ebuild +++ b/app-emulation/virtualbox/virtualbox-7.2.0-r1.ebuild @@ -200,6 +200,8 @@ REQUIRED_USE=" PATCHES=( # Downloaded patchset "${WORKDIR}"/virtualbox-patches-${PATCHES_PV}/patches + + "${FILESDIR}"/${P}-fix-qt-freeze.patch ) pkg_pretend() {
