| line |
true |
false |
branch |
|
35
|
0 |
6670 |
PUSHMARK(SP); |
|
36
|
0 |
6670 |
XPUSHs(cache); |
|
37
|
0 |
6670 |
XPUSHs(sv_2mortal(newSViv(uid))); |
|
38
|
0 |
6670 |
XPUSHs(sv_2mortal(newSViv(gid))); |
|
45
|
0 |
6670 |
if (retc < 2) { |
|
49
|
6670 |
0 |
if (retc == 2) { |
|
54
|
6670 |
0 |
if ((item = POPs) != NULL && SvOK(item)) { |
|
|
6670 |
0 |
if ((item = POPs) != NULL && SvOK(item)) { |
|
57
|
0 |
6670 |
if ((*group = b_string_new_len(tmp, len)) == NULL) { |
|
62
|
6670 |
0 |
if ((item = POPs) != NULL && SvOK(item)) { |
|
|
6670 |
0 |
if ((item = POPs) != NULL && SvOK(item)) { |
|
65
|
0 |
6670 |
if ((*user = b_string_new_len(tmp, len)) == NULL) { |
|
73
|
6670 |
0 |
FREETMPS; |
|
86
|
0 |
0 |
FREETMPS; |
|
106
|
0 |
6 |
PUSHMARK(SP); |
|
107
|
0 |
6 |
XPUSHs(cache); |
|
108
|
0 |
6 |
XPUSHs(sv_2mortal(newSViv(dev))); |
|
109
|
0 |
6 |
XPUSHs(sv_2mortal(newSViv(ino))); |
|
110
|
0 |
6 |
XPUSHs(sv_2mortal(newSVpv(path->str, path->len))); |
|
118
|
3 |
3 |
if (retc != 1) { |
|
122
|
0 |
3 |
if ((item = POPs) != NULL && SvOK(item)) { |
|
|
0 |
3 |
if ((item = POPs) != NULL && SvOK(item)) { |
|
125
|
3 |
0 |
if ((path = b_string_new_len(tmp, len)) == NULL) { |
|
133
|
6 |
0 |
FREETMPS; |
|
140
|
0 |
0 |
if (err == NULL) return; |
|
148
|
0 |
6587 |
if (options & B_BUILDER_FOLLOW_SYMLINKS) { |
|
152
|
0 |
6587 |
if (options & B_BUILDER_IGNORE_SOCKETS) { |
|
173
|
0 |
91 |
if ((items - 1) % 2 != 0) { |
|
177
|
83 |
91 |
for (i=1; i
|
|
181
|
26 |
57 |
if (strcmp(key, "quiet") == 0 && SvIV(value)) options |= B_BUILDER_QUIET; |
|
|
26 |
0 |
if (strcmp(key, "quiet") == 0 && SvIV(value)) options |= B_BUILDER_QUIET; |
|
182
|
0 |
83 |
if (strcmp(key, "ignore_errors") == 0 && SvIV(value)) options |= B_BUILDER_IGNORE_ERRORS; |
|
|
0 |
0 |
if (strcmp(key, "ignore_errors") == 0 && SvIV(value)) options |= B_BUILDER_IGNORE_ERRORS; |
|
183
|
0 |
83 |
if (strcmp(key, "follow_symlinks") == 0 && SvIV(value)) options |= B_BUILDER_FOLLOW_SYMLINKS; |
|
|
0 |
0 |
if (strcmp(key, "follow_symlinks") == 0 && SvIV(value)) options |= B_BUILDER_FOLLOW_SYMLINKS; |
|
184
|
9 |
74 |
if (strcmp(key, "preserve_hardlinks") == 0 && SvIV(value)) options |= B_BUILDER_PRESERVE_HARDLINKS; |
|
|
9 |
0 |
if (strcmp(key, "preserve_hardlinks") == 0 && SvIV(value)) options |= B_BUILDER_PRESERVE_HARDLINKS; |
|
185
|
34 |
49 |
if (strcmp(key, "gnu_extensions") == 0 && SvIV(value)) options |= B_BUILDER_GNU_EXTENSIONS; |
|
|
34 |
0 |
if (strcmp(key, "gnu_extensions") == 0 && SvIV(value)) options |= B_BUILDER_GNU_EXTENSIONS; |
|
186
|
14 |
69 |
if (strcmp(key, "posix_extensions") == 0 && SvIV(value)) options |= B_BUILDER_PAX_EXTENSIONS; |
|
|
14 |
0 |
if (strcmp(key, "posix_extensions") == 0 && SvIV(value)) options |= B_BUILDER_PAX_EXTENSIONS; |
|
187
|
0 |
83 |
if (strcmp(key, "ignore_sockets") == 0 && SvIV(value)) options |= B_BUILDER_IGNORE_SOCKETS; |
|
|
0 |
0 |
if (strcmp(key, "ignore_sockets") == 0 && SvIV(value)) options |= B_BUILDER_IGNORE_SOCKETS; |
|
188
|
0 |
83 |
if (strcmp(key, "block_factor") == 0 && SvIV(value)) block_factor = SvIV(value); |
|
|
0 |
0 |
if (strcmp(key, "block_factor") == 0 && SvIV(value)) block_factor = SvIV(value); |
|
191
|
0 |
91 |
if ((builder = b_builder_new(block_factor)) == NULL) { |
|
199
|
65 |
26 |
if (!(options & B_BUILDER_QUIET)) { |
|
209
|
0 |
91 |
PUSHMARK(SP); |
|
210
|
0 |
91 |
XPUSHs(sv_2mortal(newSVpvf("Archive::Tar::Builder::UserCache"))); |
|
217
|
91 |
0 |
if (retc == 1) { |
|
223
|
91 |
0 |
FREETMPS; |
|
228
|
9 |
82 |
if (builder->options & B_BUILDER_PRESERVE_HARDLINKS) { |
|
235
|
0 |
9 |
PUSHMARK(SP); |
|
236
|
0 |
9 |
XPUSHs(sv_2mortal(newSVpvf("Archive::Tar::Builder::HardlinkCache"))); |
|
243
|
9 |
0 |
if (retc == 1) { |
|
249
|
9 |
0 |
FREETMPS; |
|
273
|
0 |
14 |
if (b_builder_include(builder, pattern) < 0) { |
|
283
|
7 |
14 |
if (b_builder_include_from_file(builder, file) < 0) { |
|
293
|
0 |
14 |
if (b_builder_exclude(builder, pattern) < 0) { |
|
303
|
7 |
14 |
if (b_builder_exclude_from_file(builder, file) < 0) { |
|
338
|
0 |
6601 |
if ((items - 1) % 2 != 0) { |
|
342
|
14 |
6587 |
if (b_buffer_get_fd(buf) == 0) { |
|
346
|
6587 |
6579 |
for (i=1; i
|
|
352
|
8 |
6579 |
if (b_find(builder, path, member_name, B_FIND_CALLBACK(b_builder_write_file), flags) < 0) { |
|
356
|
0 |
8 |
if (error_path == NULL) { |
|
364
|
6552 |
27 |
RETVAL = builder->total; |
|
378
|
0 |
0 |
if (b_buffer_get_fd(buf) == 0) { |
|
382
|
0 |
0 |
if ((ret = b_buffer_flush(buf)) < 0) { |
|
386
|
0 |
0 |
RETVAL = ret; |
|
403
|
0 |
27 |
if (b_buffer_get_fd(buf) == 0) { |
|
407
|
0 |
27 |
if ((ret = b_buffer_flush(buf)) < 0) { |
|
411
|
0 |
27 |
if (b_error_warn(err) && !(options & B_BUILDER_IGNORE_ERRORS)) { |
|
|
0 |
0 |
if (b_error_warn(err) && !(options & B_BUILDER_IGNORE_ERRORS)) { |
|
417
|
5 |
22 |
RETVAL = ret; |