Nikolay Sivov (@nsivov) commented about dlls/msxml3/tests/domdoc.c:
+ ok(attr_out != NULL, "removeAttributeNode expected to set attr_out, but got NULL pointer\n"); +} + if (attr_out) + { + /* remove the same attribute again returns invalid arg */ + hr = IXMLDOMElement_removeAttributeNode( element, attr, NULL ); + ok(hr == E_INVALIDARG, "removeAttributeNode removed an already removed node, unexpected hr %#lx.\n", hr); + + /* readd removed attribute to recover previous state */ + hr = IXMLDOMElement_setAttributeNode(element, attr_out, NULL); + ok(hr == S_OK, "Unexpected hr %#lx.\n", hr); + + IXMLDOMAttribute_Release(attr_out); + } + IXMLDOMAttribute_Release(attr); + } Please get rid of this nesting, no need to check for nulls for something that's not expected to be null. The 'attr_out' check should stay of course, until it's implemented in wine.
-- https://gitlab.winehq.org/wine/wine/-/merge_requests/8928#note_115883