threads / patch / 41988

patchfetch-pack: Add missing line-feed character when sending depth-request packet line

Subject: [PATCH] fetch-pack: Add missing line-feed character when sending depth-request packet line

## tl;dr

2 messages between Apr 11, 2016 and Apr 12, 2016. Diffs are folded; open one to read it.

replies: 1people: 2as markdown or json

Stan Hu· Apr 11, 2016, 07:48 UTC · lore

The pkt-line format mandates: "a sender should include a LF, but the receive MUST NOT complain if it is not present." This patch is not absolutely necessary since receivers handle the missing the LF, but this patch adds it for good measure.

Signed-off-by: Stan Hu <stanhu@gmail.com>
---
 fetch-pack.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
Show changes to fetch-pack.c +1 −1
diff --git a/fetch-pack.c b/fetch-pack.c
index f96f6df..77299d9 100644
--- a/fetch-pack.c
+++ b/fetch-pack.c
@@ -330,7 +330,7 @@ static int find_common(struct fetch_pack_args *args,
 	if (is_repository_shallow())
 		write_shallow_commits(&req_buf, 1, NULL);
 	if (args->depth > 0)
-		packet_buf_write(&req_buf, "deepen %d", args->depth);
+		packet_buf_write(&req_buf, "deepen %d\n", args->depth);
 	packet_buf_flush(&req_buf);
 	state_len = req_buf.len;
 
-- 
2.7.3
Junio C Hamano· Apr 12, 2016, 22:31 UTC · re: Stan Hu · lore

Re: [PATCH] fetch-pack: Add missing line-feed character when sending depth-request packet line

Stan Hu <stanhu@gmail.com> writes:
> The pkt-line format mandates: "a sender should include a LF, but the
> receive MUST NOT complain if it is not present." This patch
> is not absolutely necessary since receivers handle the missing the LF,
> but this patch adds it for good measure.
s/since receivers handle/since receivers are expected to handle/;

Have you checked various re-implementations of upload-pack to see which one will break with this change, and made them aware about their non-compliance?

Show 18 quoted lines
>
> Signed-off-by: Stan Hu <stanhu@gmail.com>
> ---
>  fetch-pack.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/fetch-pack.c b/fetch-pack.c
> index f96f6df..77299d9 100644
> --- a/fetch-pack.c
> +++ b/fetch-pack.c
> @@ -330,7 +330,7 @@ static int find_common(struct fetch_pack_args *args,
>  	if (is_repository_shallow())
>  		write_shallow_commits(&req_buf, 1, NULL);
>  	if (args->depth > 0)
> -		packet_buf_write(&req_buf, "deepen %d", args->depth);
> +		packet_buf_write(&req_buf, "deepen %d\n", args->depth);
>  	packet_buf_flush(&req_buf);
>  	state_len = req_buf.len;

← back to recent threads