"Andrzej Hunt via GitGitGadget" <gitgitgadget@xxxxxxxxx> writes: > diff --git a/connect.c b/connect.c > index aff13a270e6..eaf7d6d2618 100644 > --- a/connect.c > +++ b/connect.c > @@ -557,6 +557,8 @@ const char *parse_feature_value(const char *feature_list, const char *feature, i > if (!*value || isspace(*value)) { > if (lenp) > *lenp = 0; > + if (offset) > + *offset = found + len - feature_list; > return value; > } > /* feature with a value (e.g., "agent=git/1.2.3") */ > diff --git a/t/t5704-protocol-violations.sh b/t/t5704-protocol-violations.sh > index 5c941949b98..34538cebf01 100755 > --- a/t/t5704-protocol-violations.sh > +++ b/t/t5704-protocol-violations.sh > @@ -32,4 +32,17 @@ test_expect_success 'extra delim packet in v2 fetch args' ' > test_i18ngrep "expected flush after fetch arguments" err > ' > > +test_expect_success 'bogus symref in v0 capabilities' ' > + test_commit foo && > + oid=$(git rev-parse HEAD) && > + { > + printf "%s HEAD\0symref object-format=%s\n" "$oid" "$GIT_DEFAULT_HASH" | > + test-tool pkt-line pack-raw-stdin && > + printf "0000" > + } >input && > + git ls-remote --upload-pack="cat input ;:" . >actual && > + printf "%s\tHEAD\n" "$oid" >expect && > + test_cmp expect actual > +' > + > test_done > > base-commit: 186eaaae567db501179c0af0bf89b34cbea02c26 I've been seeing an occasional and not-reliably-reproducible test failure from t5704 in 'seen' these days---since this is the only commit that touches t5704, I am suspecting if there is something racy about it, but I am coming up empty after staring at it for a few minutes. Building 87446480 (connect: also update offset for features without values, 2021-09-18), which is an application of the patch directly on top of v2.33.0, and doing $ cd t $ while sh t5704-*.sh; do :; done I can get it fail in a dozen iterations or so when the box is loaded, so it does seem timing dependent.