tdf#154039 wina11y: Increase refcount for returned COM interface

The reference counter for the IUnknown interface
of the COM object needs to be increased in
`CMAccessible::get_accSelection` as well,
not just in the called `CEnumVariant::Next`,
because calling VariantClear` on the temporary
variant afterwards decreases the ref count again.

Regression from

    commit 00c0ee8cf0
    Author: Michael Weghorn <m.weghorn@posteo.de>
    Date:   Mon Jan 31 07:41:14 2022 +0000

        tdf#147083 wina11y: Return a11y object instead of child ID

Change-Id: Id968c3d80b38961b836fbb1a9bd6dfeefdff813f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/148393
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
This commit is contained in:
Michael Weghorn
2023-03-07 14:47:25 +00:00
parent 1f4e9eacc3
commit 38e2dde00d
@@ -848,6 +848,7 @@ COM_DECLSPEC_NOTHROW STDMETHODIMP CMAccessible::get_accSelection(VARIANT *pvarCh
return S_FALSE;
pvarChildren->vt = VT_DISPATCH;
pvarChildren->pdispVal = varTmp[0].pdispVal;
pvarChildren->pdispVal->AddRef();
VariantClear(&varTmp[0]);
m_pEnumVar->Reset();
break;