From d324b4b3e1d32b25a6347f2f77ae921a584ee9b0 Mon Sep 17 00:00:00 2001 From: Giuseppe Castagno Date: Thu, 5 May 2016 15:53:09 +0200 Subject: tdf#99426 Use correct path for lock in PUT method Change-Id: I2091024a601bebede5d2fb8596dda1054ca4ef3b Reviewed-on: https://gerrit.libreoffice.org/24691 Tested-by: Jenkins Reviewed-by: jan iversen --- ucb/source/ucp/webdav-neon/NeonSession.cxx | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'ucb/source') diff --git a/ucb/source/ucp/webdav-neon/NeonSession.cxx b/ucb/source/ucp/webdav-neon/NeonSession.cxx index e1ee6f2f703b..6a4bce97679a 100644 --- a/ucb/source/ucp/webdav-neon/NeonSession.cxx +++ b/ucb/source/ucp/webdav-neon/NeonSession.cxx @@ -1891,7 +1891,13 @@ int NeonSession::PUT( ne_session * sess, ne_request * req = ne_request_create( sess, "PUT", uri ); int ret; - ne_lock_using_resource( req, uri, 0 ); + // tdf#99246 + // extract the path of uri + // ne_lock_using_resource below compares path, ignores all the rest. + // in case of Web proxy active, this function uri parameter is instead absolute + ne_uri aUri; + ne_uri_parse( uri, &aUri ); + ne_lock_using_resource( req, aUri.path, 0 ); ne_lock_using_parent( req, uri ); ne_set_request_body_buffer( req, buffer, size ); -- cgit