Re: [PATCH] http-push: Make WebDAV work with (broken?) default apache2 WebDAV module

2 messages, 2 authors, 2016-06-15 · open the first message on its own page

Re: [PATCH] http-push: Make WebDAV work with (broken?) default apache2 WebDAV module

From: Junio C Hamano <hidden>
Date: 2016-06-15 22:42:36

Rutger Nijlunsing [off-list ref] writes:
WebDAV on Debian unstable cannot handle renames on WebDAV from
file.ext to newfile (without ext) when newfile* already
exists. Normally, git creates a file like 'objects/xx/sha1.token',
which is renamed to 'objects/xx/sha1' when transferred completely.

Just use '_' instead of '.' so WebDAV doesn't see it as an extension
change.

Signed-off-by: Rutger Nijlunsing <redacted>
Acked-by: Johannes Schindelin <redacted>
Good problem and workaround description.  Nick, does this look
sane to you, or is there a more kosher way to handle this?
quoted hunk
---
 http-push.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/http-push.c b/http-push.c
index 4021e7d..d45733e 100644
--- a/http-push.c
+++ b/http-push.c
@@ -530,7 +530,7 @@ static void start_put(struct transfer_re
 	request->dest = xmalloc(strlen(request->url) + 14);
 	sprintf(request->dest, "Destination: %s", request->url);
 	posn += 38;
-	*(posn++) = '.';
+	*(posn++) = '_';
 	strcpy(posn, request->lock->token);
 
 	slot = get_active_slot();
-- 
1.4.2.rc2.g7cb1


-- 
Rutger Nijlunsing ---------------------------------- eludias ed dse.nl
never attribute to a conspiracy which can be explained by incompetence
----------------------------------------------------------------------

Re: [PATCH] http-push: Make WebDAV work with (broken?) default apache2 WebDAV module

From: Nick Hengeveld <hidden>
Date: 2016-06-15 22:42:36

On Wed, Aug 09, 2006 at 12:33:42PM -0700, Junio C Hamano wrote:
quoted
WebDAV on Debian unstable cannot handle renames on WebDAV from
file.ext to newfile (without ext) when newfile* already
exists. Normally, git creates a file like 'objects/xx/sha1.token',
which is renamed to 'objects/xx/sha1' when transferred completely.

Just use '_' instead of '.' so WebDAV doesn't see it as an extension
change.

Signed-off-by: Rutger Nijlunsing <redacted>
Acked-by: Johannes Schindelin <redacted>
Good problem and workaround description.  Nick, does this look
sane to you, or is there a more kosher way to handle this?
This looks good to me - while it seems like the problem is in the DAV
server it also seems like problematic DAV servers will be less likely to
trip up on an underscore in the filename.

-- 
For a successful technology, reality must take precedence over public
relations, for nature cannot be fooled.

This message (including any attachments) contains confidential information intended for a specific individual and purpose, and is protected by law. If you are not the intended recipient, you should delete this message. Any disclosure, copying, or distribution of this message, or the taking of any action based on it, is strictly prohibited.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help