| line |
true |
false |
branch |
|
12
|
0 |
19844 |
if ((ret = b_stack_new(0)) == NULL) { |
|
18
|
0 |
19844 |
if ((dup = malloc(string->len + 1)) == NULL) { |
|
22
|
0 |
19844 |
if (memcpy(dup, string->str, string->len) == NULL) { |
|
30
|
29620 |
19844 |
while ((item = strtok_r(tmp, "/", &ctx)) != NULL) { |
|
38
|
9776 |
19844 |
if (b_stack_count(ret) > 0 && strcmp(item, ".") == 0) { |
|
|
0 |
9776 |
if (b_stack_count(ret) > 0 && strcmp(item, ".") == 0) { |
|
47
|
19844 |
9776 |
if (b_stack_count(ret) == 0 && string->str[0] == '/') { |
|
|
6584 |
13260 |
if (b_stack_count(ret) == 0 && string->str[0] == '/') { |
|
51
|
0 |
29620 |
if ((item_copy = b_string_new(item)) == NULL) { |
|
55
|
0 |
29620 |
if (b_stack_push(ret, item_copy) == NULL) { |
|
65
|
0 |
19844 |
if (b_stack_count(ret) == 0 && string->str[0] == '/') { |
|
|
0 |
0 |
if (b_stack_count(ret) == 0 && string->str[0] == '/') { |
|
66
|
0 |
0 |
if (b_stack_push(ret, b_string_new("/")) == NULL) { |
|
91
|
0 |
13174 |
if ((parts = b_path_new(string)) == NULL) { |
|
95
|
0 |
13174 |
if ((ret = b_string_join("/", parts)) == NULL) { |
|
114
|
0 |
0 |
if ((tmp = b_string_new(str)) == NULL) { |
|
118
|
0 |
0 |
if ((ret = b_path_clean(tmp)) == NULL) { |