Esme Povirk (@madewokherd) commented about dlls/uiautomationcore/uia_client.c:
+ struct UiaCondition *search_cond, struct UiaCondition *pre_sibling_nav_stop_cond, + struct UiaCondition *ascending_stop_cond, int traversal_opts, BOOL at_root_level, int max_depth, int *cur_depth, + HUIANODE *out_node) +{ + HUIANODE node = huianode; + HRESULT hr; + + while (1) + { + struct uia_node *node_data = unsafe_impl_from_IWineUiaNode((IWineUiaNode *)node); + BOOL incr_depth = FALSE; + HUIANODE node2 = NULL; + + hr = uia_condition_check(node, view_cond); + if (FAILED(hr)) + goto exit; Not that it matters much, but I think this is equivalent to `break`?
-- https://gitlab.winehq.org/wine/wine/-/merge_requests/1249#note_15530