diff options
Diffstat (limited to 'xmlsecurity/source/helper/xsecparser.cxx')
-rw-r--r-- | xmlsecurity/source/helper/xsecparser.cxx | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/xmlsecurity/source/helper/xsecparser.cxx b/xmlsecurity/source/helper/xsecparser.cxx index 50c13dc95bee..b33a11f5cf36 100644 --- a/xmlsecurity/source/helper/xsecparser.cxx +++ b/xmlsecurity/source/helper/xsecparser.cxx @@ -44,6 +44,7 @@ XSecParser::XSecParser(XMLSignatureHelper& rXMLSignatureHelper, , m_bInSignatureValue(false) , m_bInDate(false) , m_bInDescription(false) + , m_bInSignatureLineId(false) , m_pXSecController(pXSecController) , m_bReferenceUnresolved(false) , m_nReferenceDigestID(cssxc::DigestID::SHA1) @@ -252,6 +253,11 @@ void SAL_CALL XSecParser::startElement( m_ouDescription.clear(); m_bInDescription = true; } + else if (aName == "loext:SignatureLineId") + { + m_ouSignatureLineId.clear(); + m_bInSignatureLineId = true; + } if (m_xNextHandler.is()) { @@ -361,6 +367,11 @@ void SAL_CALL XSecParser::endElement( const OUString& aName ) m_pXSecController->setDescription( m_ouDescription ); m_bInDescription = false; } + else if (aName == "loext:SignatureLineId") + { + m_pXSecController->setSignatureLineId( m_ouSignatureLineId ); + m_bInSignatureLineId = false; + } if (m_xNextHandler.is()) { @@ -436,6 +447,10 @@ void SAL_CALL XSecParser::characters( const OUString& aChars ) { m_ouDate += aChars; } + else if (m_bInSignatureLineId) + { + m_ouSignatureLineId += aChars; + } if (m_xNextHandler.is()) { |