line |
true |
false |
branch |
26
|
45 |
0 |
assert(refspec && input); |
|
0 |
45 |
assert(refspec && input); |
32
|
13 |
32 |
if (*lhs == '+') { |
43
|
2 |
43 |
if (!is_fetch && rhs == lhs && rhs[1] == '\0') { |
|
0 |
2 |
if (!is_fetch && rhs == lhs && rhs[1] == '\0') { |
|
0 |
0 |
if (!is_fetch && rhs == lhs && rhs[1] == '\0') { |
46
|
0 |
0 |
GIT_ERROR_CHECK_ALLOC(refspec->string); |
48
|
0 |
0 |
GIT_ERROR_CHECK_ALLOC(refspec->src); |
50
|
0 |
0 |
GIT_ERROR_CHECK_ALLOC(refspec->dst); |
54
|
45 |
0 |
if (rhs) { |
56
|
0 |
45 |
if (rlen || !is_fetch) { |
|
0 |
0 |
if (rlen || !is_fetch) { |
57
|
45 |
0 |
is_glob = (1 <= rlen && strchr(rhs, '*')); |
|
13 |
32 |
is_glob = (1 <= rlen && strchr(rhs, '*')); |
62
|
45 |
0 |
llen = (rhs ? (size_t)(rhs - lhs - 1) : strlen(lhs)); |
63
|
45 |
0 |
if (1 <= llen && memchr(lhs, '*', llen)) { |
|
13 |
32 |
if (1 <= llen && memchr(lhs, '*', llen)) { |
64
|
13 |
0 |
if ((rhs && !is_glob) || (!rhs && is_fetch)) |
|
13 |
0 |
if ((rhs && !is_glob) || (!rhs && is_fetch)) |
|
0 |
13 |
if ((rhs && !is_glob) || (!rhs && is_fetch)) |
|
0 |
0 |
if ((rhs && !is_glob) || (!rhs && is_fetch)) |
67
|
32 |
0 |
} else if (rhs && is_glob) |
|
0 |
32 |
} else if (rhs && is_glob) |
73
|
13 |
32 |
GIT_REFERENCE_FORMAT_REFSPEC_SHORTHAND | |
76
|
43 |
2 |
if (is_fetch) { |
82
|
43 |
0 |
if (!*refspec->src) |
84
|
0 |
43 |
else if (!git_reference__is_valid_name(refspec->src, flags)) |
92
|
43 |
0 |
if (!refspec->dst) |
94
|
43 |
0 |
else if (!*refspec->dst) |
96
|
0 |
43 |
else if (!git_reference__is_valid_name(refspec->dst, flags)) |
106
|
2 |
0 |
if (!*refspec->src) |
108
|
0 |
2 |
else if (is_glob) { |
109
|
0 |
0 |
if (!git_reference__is_valid_name(refspec->src, flags)) |
122
|
0 |
2 |
if (!refspec->dst) { |
123
|
0 |
0 |
if (!git_reference__is_valid_name(refspec->src, flags)) |
125
|
0 |
2 |
} else if (!*refspec->dst) { |
128
|
0 |
2 |
if (!git_reference__is_valid_name(refspec->dst, flags)) |
133
|
0 |
2 |
if (!refspec->dst) { |
135
|
0 |
0 |
GIT_ERROR_CHECK_ALLOC(refspec->dst); |
140
|
0 |
45 |
GIT_ERROR_CHECK_ALLOC(refspec->string); |
154
|
0 |
40 |
if (refspec == NULL) |
167
|
1 |
0 |
assert(out_refspec && input); |
|
0 |
1 |
assert(out_refspec && input); |
172
|
0 |
1 |
GIT_ERROR_CHECK_ALLOC(refspec); |
174
|
0 |
1 |
if (git_refspec__parse(refspec, input, !!is_fetch) != 0) { |
191
|
3 |
0 |
return refspec == NULL ? NULL : refspec->src; |
196
|
3 |
0 |
return refspec == NULL ? NULL : refspec->dst; |
201
|
5 |
0 |
return refspec == NULL ? NULL : refspec->string; |
206
|
0 |
2 |
assert(refspec); |
213
|
2 |
0 |
if (refspec == NULL || refspec->src == NULL) |
|
0 |
2 |
if (refspec == NULL || refspec->src == NULL) |
221
|
5 |
0 |
if (refspec == NULL || refspec->dst == NULL) |
|
0 |
5 |
if (refspec == NULL || refspec->dst == NULL) |
245
|
2 |
0 |
assert(from_star && to_star); |
|
0 |
2 |
assert(from_star && to_star); |
265
|
1 |
0 |
assert(out && spec && name); |
|
1 |
0 |
assert(out && spec && name); |
|
0 |
1 |
assert(out && spec && name); |
268
|
0 |
1 |
if (!git_refspec_src_matches(spec, name)) { |
273
|
0 |
1 |
if (!spec->pattern) |
274
|
0 |
0 |
return git_buf_puts(out, spec->dst ? spec->dst : ""); |
281
|
1 |
0 |
assert(out && spec && name); |
|
1 |
0 |
assert(out && spec && name); |
|
0 |
1 |
assert(out && spec && name); |
284
|
0 |
1 |
if (!git_refspec_dst_matches(spec, name)) { |
289
|
0 |
1 |
if (!spec->pattern) |
297
|
0 |
0 |
if (refspec->force) |
300
|
0 |
0 |
git_buf_printf(out, "%s:%s", |
|
0 |
0 |
git_buf_printf(out, "%s:%s", |
309
|
0 |
0 |
assert(spec && spec->src); |
|
0 |
0 |
assert(spec && spec->src); |
316
|
0 |
3 |
assert(spec); |
335
|
13 |
0 |
assert(out && spec && refs); |
|
13 |
0 |
assert(out && spec && refs); |
|
0 |
13 |
assert(out && spec && refs); |
338
|
0 |
13 |
GIT_ERROR_CHECK_ALLOC(cur); |
347
|
0 |
13 |
if (git__prefixcmp(spec->src, GIT_REFS_DIR)) { |
348
|
0 |
0 |
for (j = 0; formatters[j]; j++) { |
351
|
0 |
0 |
GIT_ERROR_CHECK_ALLOC_BUF(&buf); |
354
|
0 |
0 |
if (!git_vector_search(&pos, refs, &key)) { |
362
|
13 |
0 |
if (cur->src == NULL && spec->src != NULL) { |
|
13 |
0 |
if (cur->src == NULL && spec->src != NULL) { |
364
|
0 |
13 |
GIT_ERROR_CHECK_ALLOC(cur->src); |
367
|
13 |
0 |
if (spec->dst && git__prefixcmp(spec->dst, GIT_REFS_DIR)) { |
|
0 |
13 |
if (spec->dst && git__prefixcmp(spec->dst, GIT_REFS_DIR)) { |
369
|
0 |
0 |
if (!git__prefixcmp(spec->dst, "remotes/")) { |
376
|
0 |
0 |
GIT_ERROR_CHECK_ALLOC_BUF(&buf); |
383
|
13 |
0 |
if (cur->dst == NULL && spec->dst != NULL) { |
|
13 |
0 |
if (cur->dst == NULL && spec->dst != NULL) { |
385
|
0 |
13 |
GIT_ERROR_CHECK_ALLOC(cur->dst); |