summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sfx2/source/dialog/dinfdlg.cxx17
1 files changed, 12 insertions, 5 deletions
diff --git a/sfx2/source/dialog/dinfdlg.cxx b/sfx2/source/dialog/dinfdlg.cxx
index 1a503ca264f3..a22ebdc6087c 100644
--- a/sfx2/source/dialog/dinfdlg.cxx
+++ b/sfx2/source/dialog/dinfdlg.cxx
@@ -869,13 +869,20 @@ void SfxDocumentPage::ImplUpdateSignatures()
SfxMedium* pMedium = pDoc->GetMedium();
if ( pMedium && !pMedium->GetName().isEmpty() && pMedium->GetStorage().is() )
{
- Reference< security::XDocumentDigitalSignatures > xD(
- security::DocumentDigitalSignatures::createDefault(comphelper::getProcessComponentContext()) );
-
+ Reference< security::XDocumentDigitalSignatures > xD;
+ try
+ {
+ xD = security::DocumentDigitalSignatures::createDefault(comphelper::getProcessComponentContext());
+ }
+ catch ( const css::uno::DeploymentException& )
+ {
+ }
OUString s;
Sequence< security::DocumentSignatureInformation > aInfos;
- aInfos = xD->verifyDocumentContentSignatures( pMedium->GetZipStorageToSign_Impl(),
- uno::Reference< io::XInputStream >() );
+
+ if ( xD.is() )
+ aInfos = xD->verifyDocumentContentSignatures( pMedium->GetZipStorageToSign_Impl(),
+ uno::Reference< io::XInputStream >() );
if ( aInfos.getLength() > 1 )
s = m_aMultiSignedStr;
else if ( aInfos.getLength() == 1 )