commit - 132af4a5fe242aab94fc8049abfb80888c26395f
commit + 98f64f14c3dc52ec6afc00acc53dc9f42399d363
blob - 9d3276731396175a544ea337396a6dad1abbe92e
blob + dd739faa1ee3882e18ce87a0815acc3e0cc8e7c4
--- libexec/got-fetch-pack/got-fetch-pack.c
+++ libexec/got-fetch-pack/got-fetch-pack.c
}
err = fetch_error(buf, r);
goto done;
+ } else if (buf[0] == 'A') {
+ err = readn(&r, fd, buf, datalen);
+ if (err)
+ goto done;
+ if (r != datalen) {
+ err = got_error_msg(GOT_ERR_BAD_PACKET,
+ "packet too short");
+ goto done;
+ }
+ /*
+ * Git server responds with ACK after 'done'
+ * even though multi_ack is disabled?!?
+ */
+ buf[r] = '\0';
+ if (strncmp(buf, "CK ", 3) == 0)
+ continue; /* ignore */
+ err = got_error_msg(GOT_ERR_BAD_PACKET,
+ "unexpected message from server");
+ goto done;
} else {
err = got_error_msg(GOT_ERR_BAD_PACKET,
"unknown side-band received from server");
blob - 06f040fb232eedbd33669ed3c736c29d8747c09f
blob + 0af6ce58eaded1d0d98284d9acdf7306a7405494
--- regress/cmdline/fetch.sh
+++ regress/cmdline/fetch.sh
return 1
fi
- got fetch -q -r $testroot/repo-clone
+ got fetch -a -q -r $testroot/repo-clone
ret="$?"
if [ "$ret" != "0" ]; then
echo "got fetch command failed unexpectedly" >&2