diff options
author | Giuseppe Castagno <giuseppe.castagno@acca-esse.eu> | 2016-08-03 19:42:27 +0200 |
---|---|---|
committer | Giuseppe Castagno <giuseppe.castagno@acca-esse.eu> | 2016-08-03 18:29:59 +0000 |
commit | d14977d33bc3edb6a2c41db4d685d099bfe8d51e (patch) | |
tree | 41411fcde9d7290f45f4d507446874647cc29f62 | |
parent | 9460d24883067160c53b53a018a88298131908da (diff) |
tdf#101094 (20) OPTIONS: Check for Class1 DAV before unlock
Change-Id: I890a44bb98577de006355d8394d46baeeaadb13f
Reviewed-on: https://gerrit.libreoffice.org/27837
Tested-by: Giuseppe Castagno <giuseppe.castagno@acca-esse.eu>
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Giuseppe Castagno <giuseppe.castagno@acca-esse.eu>
-rw-r--r-- | ucb/source/ucp/webdav-neon/webdavcontent.cxx | 16 |
1 files changed, 12 insertions, 4 deletions
diff --git a/ucb/source/ucp/webdav-neon/webdavcontent.cxx b/ucb/source/ucp/webdav-neon/webdavcontent.cxx index 14642810bc0b..d86286b16116 100644 --- a/ucb/source/ucp/webdav-neon/webdavcontent.cxx +++ b/ucb/source/ucp/webdav-neon/webdavcontent.cxx @@ -3260,10 +3260,18 @@ void Content::unlock( // update the URL aTargetUrl = xResAccess->getURL(); - xResAccess->UNLOCK( Environment ); - // remove options from cache, unlock may change it - // it will be refreshed when needed - aStaticDAVOptionsCache.removeDAVOptions( aTargetUrl ); + // check if the target URL is a Class1 DAV + DAVOptions aDAVOptions; + getResourceOptions( Environment, aDAVOptions, xResAccess ); + + // at least class one is needed + if( aDAVOptions.isClass1() ) + { + xResAccess->UNLOCK( Environment ); + // remove options from cache, unlock may change it + // it will be refreshed when needed + aStaticDAVOptionsCache.removeDAVOptions( aTargetUrl ); + } { osl::Guard< osl::Mutex > aGuard( m_aMutex ); |