[Libreoffice-commits] .: vcl/aqua
Libreoffice Gerrit user
logerrit at kemper.freedesktop.org
Wed Sep 26 06:03:31 PDT 2012
vcl/aqua/source/a11y/aqua11ywrapper.mm | 4 ++++
1 file changed, 4 insertions(+)
New commits:
commit 3376f682a77c16f4da63dc14c45d294425e5ba8a
Author: Tor Lillqvist <tml at iki.fi>
Date: Wed Sep 26 16:01:09 2012 +0300
Silly workaround for fdo#55156
I feel dirty now.
Change-Id: I1cafb0c0494d56bc9c81594c2145b2cc4a1ee389
diff --git a/vcl/aqua/source/a11y/aqua11ywrapper.mm b/vcl/aqua/source/a11y/aqua11ywrapper.mm
index 8acb5f4..1491a04 100644
--- a/vcl/aqua/source/a11y/aqua11ywrapper.mm
+++ b/vcl/aqua/source/a11y/aqua11ywrapper.mm
@@ -369,12 +369,16 @@ static BOOL isPopupMenuOpen = NO;
-(id)windowAttribute {
// go upstairs until reaching the broken connection
AquaA11yWrapper * aWrapper = self;
+ int loops = 0;
while ( [ aWrapper accessibleContext ] -> getAccessibleParent().is() ) {
AquaA11yWrapper *aTentativeParentWrapper = [ AquaA11yFactory wrapperForAccessibleContext: [ aWrapper accessibleContext ] -> getAccessibleParent() -> getAccessibleContext() ];
// Quick-and-dirty fix for infinite loop after fixing crash in
// fdo#47275
if ( aTentativeParentWrapper == aWrapper )
break;
+ // Even dirtier fix for infinite loop in fdo#55156
+ if ( loops++ == 100 )
+ break;
aWrapper = aTentativeParentWrapper;
[ aWrapper autorelease ];
}
More information about the Libreoffice-commits
mailing list