tdf#128447 sc/vml: accept <? ?> xml prolog
... or processing instruction, or text directive.
The inability to parse this was exposed in LO 6.2
with commit 2cae2ecfef
I added <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
to the top of vmlDrawing1.vml from the unit test,
which invalidates the entire .vml file and the two
controls are lost without this fix.
Change-Id: Ia1e6d5f9bb932756f70dca59fa8b32004c9e8013
Reviewed-on: https://gerrit.libreoffice.org/81730
Reviewed-by: Michael Stahl <michael.stahl@cib.de>
Tested-by: Jenkins
This commit is contained in:
@@ -169,6 +169,12 @@ void lclProcessElement( OStringBuffer& rBuffer, const OString& rElement )
|
|||||||
// do nothing
|
// do nothing
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// just append any xml prolog (text directive) or processing instructions: <?...?>
|
||||||
|
else if( (nElementLen >= 4) && (pcOpen[ 1 ] == '?') && (pcClose[ -1 ] == '?') )
|
||||||
|
{
|
||||||
|
rBuffer.append( rElement );
|
||||||
|
}
|
||||||
|
|
||||||
// replace '<br>' element with newline
|
// replace '<br>' element with newline
|
||||||
else if( (nElementLen >= 4) && (pcOpen[ 1 ] == 'b') && (pcOpen[ 2 ] == 'r') && (lclFindNonWhiteSpace( pcOpen + 3, pcClose ) == pcClose) )
|
else if( (nElementLen >= 4) && (pcOpen[ 1 ] == 'b') && (pcOpen[ 2 ] == 'r') && (lclFindNonWhiteSpace( pcOpen + 3, pcClose ) == pcClose) )
|
||||||
{
|
{
|
||||||
|
Binary file not shown.
Reference in New Issue
Block a user