diff options
author | Julian Kalinowski <julian.kalinowski@dataport.de> | 2020-03-31 12:45:31 +0200 |
---|---|---|
committer | Mike Kaganski <mike.kaganski@collabora.com> | 2020-03-31 14:02:02 +0200 |
commit | 169a10f0e4680814145b668c6320be04038d7a89 (patch) | |
tree | ef0add93284184305d2b7b2faab5569e75ce116d /sfx2/source/doc | |
parent | f03ae4de04495dfaf30dbfbb8b3195dd78310da4 (diff) |
Fix exception when accessing empty lock list
This fixes an Access Violation Exception when a WebDAV server says a
resource is locked but does return an empty lockdiscovery element on
WebDAV Propfind. Without this patch, the code only checks that a list
exists, but it should also check if it contains elements before
accessing it.
Fixes tdf#128662
Change-Id: I5f555a9b5805102242392b018ab5a8009c7a203c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/91412
Tested-by: Mike Kaganski <mike.kaganski@collabora.com>
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Diffstat (limited to 'sfx2/source/doc')
-rw-r--r-- | sfx2/source/doc/docfile.cxx | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/sfx2/source/doc/docfile.cxx b/sfx2/source/doc/docfile.cxx index 3e103460be1b..09c6f8cbb6ed 100644 --- a/sfx2/source/doc/docfile.cxx +++ b/sfx2/source/doc/docfile.cxx @@ -1186,7 +1186,7 @@ SfxMedium::LockFileResult SfxMedium::LockOrigFileOnDemand(bool bLoading, bool bN uno::Sequence<css::ucb::Lock> aLocks; // getting the property, send a PROPFIND to the server over the net - if (aContentToLock.getPropertyValue("DAV:lockdiscovery") >>= aLocks) + if ((aContentToLock.getPropertyValue("DAV:lockdiscovery") >>= aLocks) && aLocks.hasElements()) { // got at least a lock, show the owner of the first lock returned css::ucb::Lock aLock = aLocks[0]; |