Browse Source

http-push: Make WebDAV work with (broken?) default apache2 WebDAV module

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 <git@tux.tmfweb.nl>
Acked-by: Johannes Schindelin <Johannes.Schindelin@gmx.de>
Signed-off-by: Junio C Hamano <junkio@cox.net>
maint
Rutger Nijlunsing 19 years ago committed by Junio C Hamano
parent
commit
1e8d304507
  1. 2
      http-push.c

2
http-push.c

@ -530,7 +530,7 @@ static void start_put(struct transfer_request *request) @@ -530,7 +530,7 @@ static void start_put(struct transfer_request *request)
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();

Loading…
Cancel
Save