From b22a06281a2ccc431fa537e7c501ba9e923c3da8 Mon Sep 17 00:00:00 2001 From: Connor McAdams Date: Thu, 19 Oct 2023 07:20:26 -0400 Subject: [PATCH] uiautomationcore: Only print FIXME messages for missing default clientside providers once. Signed-off-by: Connor McAdams --- dlls/uiautomationcore/uia_client.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/dlls/uiautomationcore/uia_client.c b/dlls/uiautomationcore/uia_client.c index baadecd56d0..df9b2b283e0 100644 --- a/dlls/uiautomationcore/uia_client.c +++ b/dlls/uiautomationcore/uia_client.c @@ -3131,6 +3131,7 @@ HRESULT WINAPI UiaHUiaNodeFromVariant(VARIANT *in_val, HUIANODE *huianode) static SAFEARRAY WINAPI *default_uia_provider_callback(HWND hwnd, enum ProviderType prov_type) { IRawElementProviderSimple *elprov = NULL; + static BOOL fixme_once; SAFEARRAY *sa = NULL; HRESULT hr; @@ -3153,7 +3154,8 @@ static SAFEARRAY WINAPI *default_uia_provider_callback(HWND hwnd, enum ProviderT } case ProviderType_NonClientArea: - FIXME("Default ProviderType_NonClientArea provider unimplemented.\n"); + if (!fixme_once++) + FIXME("Default ProviderType_NonClientArea provider unimplemented.\n"); break; case ProviderType_BaseHwnd: @@ -3238,6 +3240,7 @@ exit: static HRESULT uia_get_providers_for_hwnd(struct uia_node *node) { + static BOOL fixme_once; HRESULT hr; hr = uia_get_provider_from_hwnd(node); @@ -3251,7 +3254,7 @@ static HRESULT uia_get_providers_for_hwnd(struct uia_node *node) return hr; } - if (!node->prov[PROV_TYPE_OVERRIDE]) + if (!node->prov[PROV_TYPE_OVERRIDE] && !fixme_once++) FIXME("Override provider callback currently unimplemented.\n"); if (!node->prov[PROV_TYPE_NONCLIENT])