docx: export empty GrabBag elements as self-closing xml tags - 2
In 6cb711645b
the condition was not
good, because there is a special element called "attributes" which
is not a child element but contains attributes of the current element.
In the condition we should check for 0 elements that are not
"attributes".
Change-Id: I1d6995e13f288902c1cce85ac3b7d4e0da213df8
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/176900
Tested-by: Jenkins
Reviewed-by: Andras Timar <andras.timar@collabora.com>
This commit is contained in:
parent
cb362d3b4a
commit
a1a21ca3d4
1 changed files with 6 additions and 1 deletions
|
@ -3490,6 +3490,7 @@ void lclProcessRecursiveGrabBag(sal_Int32 aElementId, const css::uno::Sequence<c
|
|||
{
|
||||
css::uno::Sequence<css::beans::PropertyValue> aAttributes;
|
||||
rtl::Reference<FastAttributeList> pAttributes = FastSerializerHelper::createAttrList();
|
||||
sal_Int32 nElements = 0;
|
||||
|
||||
for (const auto& rElement : rElements)
|
||||
{
|
||||
|
@ -3497,6 +3498,10 @@ void lclProcessRecursiveGrabBag(sal_Int32 aElementId, const css::uno::Sequence<c
|
|||
{
|
||||
rElement.Value >>= aAttributes;
|
||||
}
|
||||
else
|
||||
{
|
||||
++nElements;
|
||||
}
|
||||
}
|
||||
|
||||
for (const auto& rAttribute : aAttributes)
|
||||
|
@ -3518,7 +3523,7 @@ void lclProcessRecursiveGrabBag(sal_Int32 aElementId, const css::uno::Sequence<c
|
|||
pAttributes->add(*aSubElementId, aValue);
|
||||
}
|
||||
|
||||
if (rElements.size() == 0)
|
||||
if (nElements == 0)
|
||||
{
|
||||
pSerializer->singleElement(aElementId, pAttributes);
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue