summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRutger Nijlunsing <rutger@nospam.com>2006-08-09 18:54:23 (GMT)
committerJunio C Hamano <junkio@cox.net>2006-08-10 06:40:40 (GMT)
commit1e8d304507b2d7e3b411d9b351fd348edd253df8 (patch)
tree88c5d3c74cc187f9c675251a41ed595c3547a53e
parent2c71810b90d122abdcc57fc3cb62174d16e77b58 (diff)
downloadgit-1e8d304507b2d7e3b411d9b351fd348edd253df8.zip
git-1e8d304507b2d7e3b411d9b351fd348edd253df8.tar.gz
git-1e8d304507b2d7e3b411d9b351fd348edd253df8.tar.bz2
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>
-rw-r--r--http-push.c2
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_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();