app-emulation/virtualbox: fix freeze with recent versions of QT

Signed-off-by: Viorel Munteanu <ceamac@gentoo.org>
This commit is contained in:
Viorel Munteanu
2025-08-28 20:21:56 +03:00
parent b7d0771754
commit c30a0900c5
2 changed files with 31 additions and 0 deletions

View File

@@ -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);

View File

@@ -200,6 +200,8 @@ REQUIRED_USE="
PATCHES=(
# Downloaded patchset
"${WORKDIR}"/virtualbox-patches-${PATCHES_PV}/patches
"${FILESDIR}"/${P}-fix-qt-freeze.patch
)
pkg_pretend() {