comctl32/treeview: Return from TREEVIEW_LButtonDown when the treeview handle is invalid.
LButtonDown should return when the treeview handle is invalid (e.g. destroyed) after NM_CLICK to prevent further message processing.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=58211
--
v4: comctl32/treeview: Return from TREEVIEW_LButtonDown when the treeview handle is invalid.
comctl32/tests: Add a test for treeview deletion during NM_CLICK in LBUTTONDOWN.
https://gitlab.winehq.org/wine/wine/-/merge_requests/8258
comctl32/treeview: Return from TREEVIEW_LButtonDown when the treeview handle is invalid.
LButtonDown should return when the treeview handle is invalid (e.g. destroyed) after NM_CLICK to prevent further message processing.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=58211
--
v3: comctl32/treeview: Return from TREEVIEW_LButtonDown when the treeview handle is invalid.
https://gitlab.winehq.org/wine/wine/-/merge_requests/8258
Zhiyi Zhang (@zhiyi) commented about dlls/ntdll/actctx.c:
> if (!RtlCreateActivationContext( &handle, &ctx )) process_actctx = check_actctx(handle);
>
> NtCurrentTeb()->Peb->ActivationContextData = process_actctx;
> +
> + if (!RtlQueryActivationContextApplicationSettings( 0, NULL, L"http://schemas.microsoft.com/SMI/2016/WindowsSettings",
Please test if activating the longPathAware manifest dynamically sets IsLongPathAwareProcess, or if it is just checked at process startup. MSDN says the LongPathsEnabled registry value is cached. However, it doesn't say if the manifest is cached. This could be a local test.
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/7540#note_106696