EarlGrey icon indicating copy to clipboard operation
EarlGrey copied to clipboard

Infinite loop while generating element hierarchy description

Open rookiezn opened this issue 2 years ago • 2 comments

EarlGrey2

App crashes due to infinite loop while generating element hierarchy description on error

...
    frame #130525: 0x000000014e8fec1c UIAccessibility`-[UIView(UIAccessibilityPrivate) _accessibilityViewIsVisibleIgnoringAXOverrides:stoppingBeforeContainer:] + 244
    frame #130526: 0x000000014e8feb08 UIAccessibility`-[UIView(UIAccessibilityPrivate) _accessibilityViewIsVisibleIgnoringAXOverrides:] + 84
    frame #130527: 0x000000014dd1ede8 UIKit`-[UIDimmingViewAccessibility accessibilityIdentifier] + 20
    frame #130528: 0x0000000152f78a20 MessageUIFramework`-[UIViewAccessibility__MessageUI__UIKit _accessibilityOverridesInvisibility] + 52
    frame #130529: 0x000000014e8fec1c UIAccessibility`-[UIView(UIAccessibilityPrivate) _accessibilityViewIsVisibleIgnoringAXOverrides:stoppingBeforeContainer:] + 244
    frame #130530: 0x000000014e8feb08 UIAccessibility`-[UIView(UIAccessibilityPrivate) _accessibilityViewIsVisibleIgnoringAXOverrides:] + 84
    frame #130531: 0x000000014dd1ede8 UIKit`-[UIDimmingViewAccessibility accessibilityIdentifier] + 20
    frame #130532: 0x0000000152f78a20 MessageUIFramework`-[UIViewAccessibility__MessageUI__UIKit _accessibilityOverridesInvisibility] + 52
    frame #130533: 0x000000014e8fec1c UIAccessibility`-[UIView(UIAccessibilityPrivate) _accessibilityViewIsVisibleIgnoringAXOverrides:stoppingBeforeContainer:] + 244
    frame #130534: 0x000000014e8feb08 UIAccessibility`-[UIView(UIAccessibilityPrivate) _accessibilityViewIsVisibleIgnoringAXOverrides:] + 84
    frame #130535: 0x000000014dd1ede8 UIKit`-[UIDimmingViewAccessibility accessibilityIdentifier] + 20
    frame #130536: 0x0000000152f78a20 MessageUIFramework`-[UIViewAccessibility__MessageUI__UIKit _accessibilityOverridesInvisibility] + 52
    frame #130537: 0x000000014e8fec1c UIAccessibility`-[UIView(UIAccessibilityPrivate) _accessibilityViewIsVisibleIgnoringAXOverrides:stoppingBeforeContainer:] + 244
    frame #130538: 0x000000014e8feb08 UIAccessibility`-[UIView(UIAccessibilityPrivate) _accessibilityViewIsVisibleIgnoringAXOverrides:] + 84
    frame #130539: 0x000000014dd1ede8 UIKit`-[UIDimmingViewAccessibility accessibilityIdentifier] + 20
    frame #130540: 0x0000000152f78a20 MessageUIFramework`-[UIViewAccessibility__MessageUI__UIKit _accessibilityOverridesInvisibility] + 52
    frame #130541: 0x000000014e8fec1c UIAccessibility`-[UIView(UIAccessibilityPrivate) _accessibilityViewIsVisibleIgnoringAXOverrides:stoppingBeforeContainer:] + 244
    frame #130542: 0x000000014e8feb08 UIAccessibility`-[UIView(UIAccessibilityPrivate) _accessibilityViewIsVisibleIgnoringAXOverrides:] + 84
    frame #130543: 0x000000014dd1ede8 UIKit`-[UIDimmingViewAccessibility accessibilityIdentifier] + 20
    frame #130544: 0x0000000152f78a20 MessageUIFramework`-[UIViewAccessibility__MessageUI__UIKit _accessibilityOverridesInvisibility] + 52
    frame #130545: 0x000000014e8fec1c UIAccessibility`-[UIView(UIAccessibilityPrivate) _accessibilityViewIsVisibleIgnoringAXOverrides:stoppingBeforeContainer:] + 244
    frame #130546: 0x000000014e8feb08 UIAccessibility`-[UIView(UIAccessibilityPrivate) _accessibilityViewIsVisibleIgnoringAXOverrides:] + 84
    frame #130547: 0x000000014dd1ede8 UIKit`-[UIDimmingViewAccessibility accessibilityIdentifier] + 20
    frame #130548: 0x00000001465081d8 AppFramework`-[NSObject(self=0x000000015f2d0650, _cmd="grey_description") grey_description] at NSObject+GREYCommon.m:73:23
    frame #130549: 0x00000001464fcffc AppFramework`+[GREYElementHierarchy grey_printDescriptionForElement:atLevel:](self=0x000000014658b6e8, _cmd="grey_printDescriptionForElement:atLevel:", element=0x000000015f2d0650, level=2) at GREYElementHierarchy.m:196:29
    frame #130550: 0x00000001464fc6ac AppFramework`__75+[GREYElementHierarchy hierarchyStringForElement:withAnnotationDictionary:]_block_invoke(.block_descriptor=0x000000016dd54398, object=0x00006000021277c0, stop=NO) at GREYElementHierarchy.m:88:29
    frame #130551: 0x00000001464fb138 AppFramework`-[GREYTraversalDFS enumerateUsingBlock:](self=0x00006000021275e0, _cmd="enumerateUsingBlock:", block=0x00000001464fc574) at GREYTraversalDFS.m:89:5
    frame #130552: 0x00000001464fc104 AppFramework`+[GREYElementHierarchy hierarchyStringForElement:withAnnotationDictionary:](self=0x000000014658b6e8, _cmd="hierarchyStringForElement:withAnnotationDictionary:", element=0x0000000145c8db00, annotationDictionary=0x000000010d8b5720) at GREYElementHierarchy.m:82:3
    frame #130553: 0x00000001464fbe18 AppFramework`+[GREYElementHierarchy hierarchyStringForElement:](self=0x000000014658b6e8, _cmd="hierarchyStringForElement:", element=0x0000000145c8db00) at GREYElementHierarchy.m:54:10
    frame #130554: 0x00000001464fbbb4 AppFramework`__39+[GREYElementHierarchy hierarchyString]_block_invoke(.block_descriptor=0x0000600002c94bd0) at GREYElementHierarchy.m:39:25
    frame #130555: 0x00000001464fb8f8 AppFramework`+[GREYElementHierarchy hierarchyString](self=0x000000014658b6e8, _cmd="hierarchyString") at GREYElementHierarchy.m:47:5
    frame #130556: 0x00000001464ede5c AppFramework`__39+[GREYAssertions assertionWithMatcher:]_block_invoke(.block_descriptor=0x0000600002cf4630, element=0x0000000000000000, errorOrNil=0x0000600002cf6878) at GREYAssertions.m:45:9
    frame #130557: 0x000000014650981c AppFramework`-[GREYAssertionBlock assert:error:](self=0x0000600002028a40, _cmd="assert:error:", element=0x0000000000000000, errorOrNil=0x0000600002cf6878) at GREYAssertionBlock.m:74:10
    frame #130558: 0x00000001464e8b44 AppFramework`__39-[GREYElementInteraction assert:error:]_block_invoke(.block_descriptor=0x0000600003acad80, matchedElements=0x0000000000000000, completionError=0x0000600004e72980) at GREYElementInteraction.m:407:30
    frame #130559: 0x00000001464e6984 AppFramework`__83-[GREYElementInteraction matchElementsWithTimeout:syncBeforeMatch:completionBlock:]_block_invoke.100(.block_descriptor=0x0000600002c8e2b0) at GREYElementInteraction.m:218:5
    frame #130560: 0x00000001464abf74 AppFramework`__grey_dispatch_sync_on_main_thread_block_invoke(.block_descriptor=0x0000600002c8eac0) at GREYSyncAPI.m:27:7
    frame #130561: 0x000000010d2dcf90 CoreFoundation`__CFRUNLOOP_IS_CALLING_OUT_TO_A_BLOCK__ + 20
    frame #130562: 0x000000010d2dc254 CoreFoundation`__CFRunLoopDoBlocks + 408
    frame #130563: 0x000000010d2d6ae8 CoreFoundation`__CFRunLoopRun + 724
    frame #130564: 0x000000010d2d6308 CoreFoundation`CFRunLoopRunSpecific + 572
    frame #130565: 0x0000000115d235ec GraphicsServices`GSEventRunModal + 160
    frame #130566: 0x000000011cbfc4e0 UIKitCore`-[UIApplication _run] + 992
    frame #130567: 0x000000011cc00fc0 UIKitCore`UIApplicationMain + 112
    frame #130568: 0x00000001020bd69c Moxtra`main(argc=5, argv=0x000000016dd55d68) at main.m:20:16
    frame #130569: 0x000000010b5c9c04 dyld_sim`start_sim + 20

rookiezn avatar Sep 27 '21 05:09 rookiezn

ramonbrugman avatar Nov 29 '21 17:11 ramonbrugman

@RookieZn Thanks for this issue! It looks like an iOS update might be causing issues with the description call we make to print the hierarchy. Do you have any repro steps here? e.g. Is there anything non-standard in the UI at all such as an internal library?

tirodkar avatar Nov 29 '21 21:11 tirodkar