ucb/source/ucp/webdav-curl/webdavcontent.cxx |    8 ++++++++
 1 file changed, 8 insertions(+)

New commits:
commit 96b1a6878cbcb05f962abe5c9bb073f4dff6f4dc
Author:     Giuseppe Castagno <giuseppe.casta...@acca-esse.eu>
AuthorDate: Sun Nov 22 17:14:09 2015 +0100
Commit:     Michael Stahl <michael.st...@allotropia.de>
CommitDate: Mon Nov 1 18:27:38 2021 +0100

    ucb: webdav-curl: Fix tdf#90700 Notify connect timeout early.
    
    Throws exception to manage timeout early in the first connection
    sequence.
    
    [ port of commit 95958755cbbf8c6026b878703400d5d9ec1e6c98 ]
    
    Change-Id: Ib6d306100ab04a3a21c37108d5c88185acf2524a
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/123274
    Tested-by: Michael Stahl <michael.st...@allotropia.de>
    Reviewed-by: Michael Stahl <michael.st...@allotropia.de>

diff --git a/ucb/source/ucp/webdav-curl/webdavcontent.cxx 
b/ucb/source/ucp/webdav-curl/webdavcontent.cxx
index 01d8a40df7ee..e579a30c517c 100644
--- a/ucb/source/ucp/webdav-curl/webdavcontent.cxx
+++ b/ucb/source/ucp/webdav-curl/webdavcontent.cxx
@@ -3505,6 +3505,14 @@ Content::ResourceType Content::getResourceType(
             *networkAccessAllowed = *networkAccessAllowed
                 && shouldAccessNetworkAfterException(e);
         }
+        // if the two net events below happen, something
+        // is going on to the connection so break the command flow
+        if ( ( e.getError() == DAVException::DAV_HTTP_TIMEOUT ) ||
+             ( e.getError() == DAVException::DAV_HTTP_CONNECT ) )
+        {
+            cancelCommandExecution( e, xEnv );
+            // unreachable
+        }
 
         // cancel command execution is case that no user authentication data 
has been provided.
         if ( e.getError() == DAVException::DAV_HTTP_NOAUTH )

Reply via email to