pu d0ed4d6799b625ee919fd3f67184f372acec9a9c
jch 7310a282c0dfc9aeb35993a60e43878295777eb9
next bab2e86ba084f1fa0dcbedeeaeed31da013036bb
master de93cc14ab7e8db7645d8dbe4fd2603f76d5851f
master@{1} 232378479ee6c66206d47a9be175e3a39682aea6

Uncovered code in 'pu' not in 'jch'

pu d0ed4d6799b625ee919fd3f67184f372acec9a9c
jch 7310a282c0dfc9aeb35993a60e43878295777eb9

Commits introducing uncovered code:

Uncovered code in 'jch' not in 'next'

jch 7310a282c0dfc9aeb35993a60e43878295777eb9
next bab2e86ba084f1fa0dcbedeeaeed31da013036bb

builtin/config.c

3bf986d6 345 FREE_AND_NULL(cmd_line_value.regexp);
3bcdd852 346 return CONFIG_INVALID_PATTERN;
3bcdd852 391 goto free_strings;
3c25ad75 712 given_config_source.scope = CONFIG_SCOPE_SYSTEM;

builtin/merge-base.c

fed842f0 128 return 1;

builtin/name-rev.c

2d539754 102 free(name->tip_name);

builtin/pack-objects.c

92fb0db9 1133 return 1;
92fb0db9 2690 (reuse_packfile_bitmap &&
92fb0db9 2691 bitmap_walk_contains(bitmap_git, reuse_packfile_bitmap, oid));
e704fc79 2843 allow_pack_reuse = git_config_bool(k, v);
e704fc79 2844 return 0;

builtin/rebase.c

81f5bc1c 706 write_file(state_dir_path("quiet", opts), "%s", "");

builtin/sparse-checkout.c

config.c

3c25ad75 3310 return "system";
3c25ad75 3316 return "worktree";
3c25ad75 3320 return "submodule";
3c25ad75 3322 return "unknown";

connected.c

50033772 70 continue;

diff.c

da806352 448 return -1;

fsmonitor.c

8da2c576 36 if (hook_version == HOOK_INTERFACE_VERSION1 ||
8da2c576 37 hook_version == HOOK_INTERFACE_VERSION2)
8da2c576 38 return hook_version;
56c69100 62 timestamp = get_be64(index);
56c69100 63 strbuf_addf(&last_update, "%"PRIu64"", timestamp);
56c69100 64 index += sizeof(uint64_t);
8da2c576 199 strbuf_addf(&last_update_token, "%"PRIu64"", last_update);

pack-bitmap.c

bb514de3 808 return;
bb514de3 811 return;
bb514de3 823 return;
bb514de3 861 i = bitmap_git->pack->num_objects / BITS_IN_EWORD;

rebase-interactive.c

refs.c

sequencer.c

8ef6c12e 1527 return originally_empty;
91e0ed22 2519 opts->keep_redundant_commits = 1;

streaming.c

c8123e72 154 if (open_istream_incore(st, r, &oi, real, type)) {

tree-walk.c

Commits introducing uncovered code:

Alex Torok fed842f0 rebase: fix --fork-point with short refname
Derrick Stolee 3c754067 sparse-checkout: create leading directories
Derrick Stolee bd64de42 sparse-checkout: unquote C-style strings over --stdin
Elijah Newren 8ef6c12e rebase (interactive-backend): make --keep-empty the default
Elijah Newren 81f5bc1c rebase, sequencer: remove the broken GIT_QUIET handling
Elijah Newren 91e0ed22 rebase (interactive-backend): fix handling of commits that become empty
Elijah Newren 8f10f8a0 rebase: make the backend configurable via config setting
Jeff King bb514de3 pack-objects: improve partial packfile reuse
Jeff King 92fb0db9 pack-objects: add checks for duplicate objects
Jeff King e704fc79 pack-objects: introduce pack.allowPackReuse
Jeff King 8dd40c04 traverse_trees(): use stack array for name entries
Jeff King da806352 diff: move diff.wsErrorHighlight to "basic" config
Johannes Schindelin 26027625 rebase -i: also avoid SHA-1 collisions with missingCommitsCheck
Johannes Schindelin b6992261 rebase -i: re-fix short SHA-1 collision
Jonathan Tan 50033772 connected: verify promisor-ness of partial clone
Kevin Willford 8da2c576 fsmonitor: handle version 2 of the hooks that will use opaque token
Kevin Willford 56c69100 fsmonitor: change last update timestamp on the index_state to opaque token
Martin Ågren 3bcdd852 builtin/config: extract `handle_value_regex()` from `get_value()`
Martin Ågren 3bf986d6 builtin/config: collect "value_regexp" data in a struct
Matheus Tavares c8123e72 streaming: allow open_istream() to handle any repo
Matthew Rogers 3c25ad75 config: add '--show-scope' to print the scope of a config value
René Scharfe 2d539754 name-rev: release unused name strings

Uncovered code in 'next' not in 'master'

next bab2e86ba084f1fa0dcbedeeaeed31da013036bb
master de93cc14ab7e8db7645d8dbe4fd2603f76d5851f

xdiff-interface.c

Commits introducing uncovered code:

Jeff King 3cd309c1 xdiff: avoid computing non-zero offset from NULL pointer

Uncovered code in 'master' not in 'master@{1}'

master de93cc14ab7e8db7645d8dbe4fd2603f76d5851f
master@{1} 232378479ee6c66206d47a9be175e3a39682aea6

add-patch.c

180f48df 557 else if (p != pend)
180f48df 559 goto mismatched_output;
180f48df 590 return -1;
04f816b1 1156 int res = read_key_without_echo(&s->answer);
04f816b1 1157 printf("%s\n", res == EOF ? "" : s->answer.buf);
04f816b1 1158 return res;
52628f94 1272 fwrite(diff->buf, diff->len, 1, stderr);
d2a233cb 1567 _(s->mode->help_patch_text));

builtin/add.c

90a6bb98 450 parse_pathspec(&pathspec, 0,
90a6bb98 456 return run_add_interactive(NULL, "--patch=stash", &pathspec);

builtin/pull.c

54887b46 374 return status;

builtin/stash.c

6610e462 1026 setenv(INDEX_ENVIRONMENT, old_index_env, 1);

compat/terminal.c

94ac3c31 38 static int disable_bits(tcflag_t bits)
94ac3c31 49 t.c_lflag &= ~bits;
94ac3c31 59 static int disable_echo(void)
94ac3c31 61 return disable_bits(ECHO);
a5e46e6b 64 static int enable_non_canonical(void)
a5e46e6b 66 return disable_bits(ICANON | ECHO);
12acdf57 255 static int sequence_entry_cmp(const void *hashmap_cmp_fn_data,
12acdf57 260 return strcmp(e1->sequence, keydata ? keydata : e2->sequence);
12acdf57 263 static int is_known_escape_sequence(const char *sequence)
12acdf57 268 if (!initialized) {
12acdf57 269 struct child_process cp = CHILD_PROCESS_INIT;
12acdf57 270 struct strbuf buf = STRBUF_INIT;
12acdf57 273 hashmap_init(&sequences, (hashmap_cmp_fn)sequence_entry_cmp,
12acdf57 276 argv_array_pushl(&cp.args, "infocmp", "-L", "-1", NULL);
12acdf57 277 if (pipe_command(&cp, NULL, 0, &buf, 0, NULL, 0))
12acdf57 278 strbuf_setlen(&buf, 0);
12acdf57 280 for (eol = p = buf.buf; *p; p = eol + 1) {
12acdf57 281 p = strchr(p, '=');
12acdf57 282 if (!p)
12acdf57 283 break;
12acdf57 284 p++;
12acdf57 285 eol = strchrnul(p, '\n');
12acdf57 287 if (starts_with(p, "\\E")) {
12acdf57 288 char *comma = memchr(p, ',', eol - p);
12acdf57 291 p[0] = '^';
12acdf57 292 p[1] = '[';
12acdf57 293 FLEX_ALLOC_MEM(e, sequence, p, comma - p);
12acdf57 294 hashmap_entry_init(&e->entry,
12acdf57 295 strhash(e->sequence));
12acdf57 296 hashmap_add(&sequences, &e->entry);
12acdf57 298 if (!*eol)
12acdf57 299 break;
12acdf57 301 initialized = 1;
12acdf57 304 return !!hashmap_get_from_hash(&sequences, strhash(sequence), sequence);
a5e46e6b 307 int read_key_without_echo(struct strbuf *buf)
a5e46e6b 312 if (warning_displayed || enable_non_canonical() < 0) {
a5e46e6b 313 if (!warning_displayed) {
a5e46e6b 316 warning_displayed = 1;
a5e46e6b 319 return strbuf_getline(buf, stdin);
a5e46e6b 322 strbuf_reset(buf);
a5e46e6b 323 ch = getchar();
a5e46e6b 324 if (ch == EOF) {
a5e46e6b 325 restore_term();
a5e46e6b 326 return EOF;
a5e46e6b 328 strbuf_addch(buf, ch);
e118f063 330 if (ch == '\033' /* ESC */) {
e118f063 338 strbuf_splice(buf, buf->len - 1, 1, "^[", 2);
12acdf57 345 while (!is_known_escape_sequence(buf->buf)) {
e118f063 346 struct pollfd pfd = { .fd = 0, .events = POLLIN };
e118f063 348 if (poll(&pfd, 1, 500) < 1)
e118f063 349 break;
e118f063 351 ch = getchar();
e118f063 352 if (ch == EOF)
e118f063 353 return 0;
e118f063 354 strbuf_addch(buf, ch);
a5e46e6b 358 restore_term();
a5e46e6b 359 return 0;

gpg-interface.c

54887b46 143 return 1;
54887b46 207 free(trust);
54887b46 208 goto error;
54887b46 397 return config_error_nonbool(var);

pretty.c

54887b46 1355 strbuf_addstr(sb, "never");
54887b46 1356 break;
54887b46 1358 strbuf_addstr(sb, "marginal");
54887b46 1359 break;
54887b46 1361 strbuf_addstr(sb, "fully");
54887b46 1362 break;

run-command.c

63ab08fb 216 int found = r != NULL;
63ab08fb 218 return found;

sha1-file.c

9c8a294a 1442 *(oi->disk_sizep) = 0;
9c8a294a 1444 hashclr(oi->delta_base_sha1);
9c8a294a 1446 strbuf_addstr(oi->type_name, type_name(co->type));

submodule.c

a4ffbbbb 1161 fprintf(stderr, _("Unable to push submodule '%s'\n"), path);

unpack-trees.c

Commits introducing uncovered code:

brian m. carlson 63ab08fb run-command: avoid undefined behavior in exists_in_PATH
Emily Shaffer 573117df unpack-trees: watch for out-of-range index position
Emily Shaffer 02225408 fetch: emphasize failure during submodule fetch
Hans Jerry Illikainen 54887b46 gpg-interface: add minTrustLevel as a configuration option
Johannes Schindelin 180f48df built-in add -p: support interactive.diffFilter
Johannes Schindelin 04f816b1 built-in add -p: respect the `interactive.singlekey` config setting
Johannes Schindelin 52628f94 built-in add -p: implement the "checkout" patch modes
Johannes Schindelin d2a233cb built-in add -p: prepare for patch modes other than "stage"
Johannes Schindelin 90a6bb98 legacy stash -p: respect the add.interactive.usebuiltin setting
Johannes Schindelin 6610e462 built-in stash: use the built-in `git add -p` if so configured
Johannes Schindelin 94ac3c31 terminal: make the code of disable_echo() reusable
Johannes Schindelin a5e46e6b terminal: add a new function to read a single keystroke
Johannes Schindelin 12acdf57 built-in add -p: handle Escape sequences more efficiently
Johannes Schindelin e118f063 built-in add -p: handle Escape sequences in interactive.singlekey mode
Jonathan Tan 9c8a294a sha1-file: remove OBJECT_INFO_SKIP_CACHED
Ralf Thielow a4ffbbbb submodule.c: mark more strings for translation