Clear off private xattrs when extracting.

Enable pathname sorting only for high compression levels.
This commit is contained in:
Moinak Ghosh 2013-11-04 18:35:22 +05:30
parent 448890a014
commit 489b97cc79
2 changed files with 8 additions and 5 deletions

View file

@ -1057,6 +1057,7 @@ extractor_thread_func(void *dat) {
*pos = '.'; *pos = '.';
archive_entry_set_pathname(entry, name); archive_entry_set_pathname(entry, name);
} }
archive_entry_xattr_clear(entry);
break; break;
} }
} }

View file

@ -2901,13 +2901,15 @@ init_pc_context(pc_ctx_t *pctx, int argc, char *argv[])
} }
/* /*
* Sorting of members when archiving is enabled for compression levels >2, unless * Sorting of members when archiving is enabled for compression levels >6 (>2 for lz4),
* it is explicitly disabled via '-n'. * unless it is explicitly disabled via '-n'.
*/ */
if (pctx->level > 2 && pctx->enable_archive_sort != -1) { if (pctx->enable_archive_sort != -1) {
if ((memcmp(pctx->algo, "lz4", 3) == 0 && pctx->level > 2) || pctx->level > 6)
pctx->enable_archive_sort = 1; pctx->enable_archive_sort = 1;
} else {
pctx->enable_archive_sort = 0;
} }
if (pctx->enable_archive_sort == -1) pctx->enable_archive_sort = 0;
if (pctx->rab_blk_size == -1) { if (pctx->rab_blk_size == -1) {
if (!pctx->enable_rabin_global) if (!pctx->enable_rabin_global)