[Libreoffice-commits] core.git: ucb/source
Julian Kalinowski (via logerrit)
logerrit at kemper.freedesktop.org
Fri Jun 12 11:09:20 UTC 2020
ucb/source/ucp/webdav-neon/NeonSession.cxx | 2 --
1 file changed, 2 deletions(-)
New commits:
commit af7e5983e53746acd3b453d38942950a7ab83c22
Author: Julian Kalinowski <julian.kalinowski at dataport.de>
AuthorDate: Thu Jun 11 14:39:54 2020 +0200
Commit: Mike Kaganski <mike.kaganski at collabora.com>
CommitDate: Fri Jun 12 13:08:45 2020 +0200
tdf#133673 fix webdav lock refresh with Auth:Negotiate
NeonSession::NeonAuth requires an AuthListener to be set in the
RequestEnvironment (RE). After a HTTP 401, the Negotiate challenge should be
handled. The whole RE however is reset in HandleError, which is called after
every request. Usually, this is not a problem because the RE is re-set at the
beginning of almost all requests (PUT, GET, PROPFIND, ...).
But when refreshing locks this is not the case, as the LockStore does not know
any RequestEnvironment.
NeonSession::NeonAuth is then called in a post-send hook after a HTTP 401, the
AuthListener is null and in consequence Neon's ah_post_send does not return
NE_RETRY. So there will be no retry with the correct authorization header.
This patch removes the reset of the RequestEnvironment in HandleError, thus
keeping it in the session for further use.
Change-Id: Ib1a5eff08072f9ef003e760c5f40d9ad26c6cad1
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/96191
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski at collabora.com>
diff --git a/ucb/source/ucp/webdav-neon/NeonSession.cxx b/ucb/source/ucp/webdav-neon/NeonSession.cxx
index 3a19e774b17a..4773514cd3fa 100644
--- a/ucb/source/ucp/webdav-neon/NeonSession.cxx
+++ b/ucb/source/ucp/webdav-neon/NeonSession.cxx
@@ -1823,8 +1823,6 @@ void NeonSession::HandleError( int nError,
const OUString & inPath,
const DAVRequestEnvironment & rEnv )
{
- m_aEnv = DAVRequestEnvironment();
-
// Map error code to DAVException.
switch ( nError )
{
More information about the Libreoffice-commits
mailing list