Date: Sun, 14 Jul 2013 10:29:55 GMT From: dpl@FreeBSD.org To: svn-soc-all@FreeBSD.org Subject: socsvn commit: r254778 - soc2013/dpl/head/contrib/xz/src/xz Message-ID: <201307141029.r6EATtqh003477@socsvn.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: dpl Date: Sun Jul 14 10:29:55 2013 New Revision: 254778 URL: http://svnweb.FreeBSD.org/socsvn/?view=rev&rev=254778 Log: Changed to work on all the files, that are opened before. Modified: soc2013/dpl/head/contrib/xz/src/xz/list.c Modified: soc2013/dpl/head/contrib/xz/src/xz/list.c ============================================================================== --- soc2013/dpl/head/contrib/xz/src/xz/list.c Sun Jul 14 10:28:36 2013 (r254777) +++ soc2013/dpl/head/contrib/xz/src/xz/list.c Sun Jul 14 10:29:55 2013 (r254778) @@ -1057,57 +1057,45 @@ extern void -list_file(const char *filename) +list_file(file_pair pairs[], int files) { int i; - - if (opt_format != FORMAT_XZ && opt_format != FORMAT_AUTO) - message_fatal(_("--list works only on .xz files " - "(--format=xz or --format=auto)")); - - for ( i = 0; i < files; i++) { - - message_filename(filename); - - if (filename == stdin_filename) { - message_error(_("--list does not support reading from " - "standard input")); - continue; - } + xz_file_info xfi = XZ_FILE_INFO_INIT; // Unset opt_stdout so that io_open_src() won't accept special files. // Set opt_force so that io_open_src() will follow symlinks. opt_stdout = false; opt_force = true; - file_pair *pair = io_open_src(filename); - if (pair == NULL) - continue; - xz_file_info xfi = XZ_FILE_INFO_INIT; - if (!parse_indexes(&xfi, pair)) { - bool fail; - - // We have three main modes: - // - --robot, which has submodes if --verbose is specified - // once or twice - // - Normal --list without --verbose - // - --list with one or two --verbose - if (opt_robot) - fail = print_info_robot(&xfi, pair); - else if (message_verbosity_get() <= V_WARNING) - fail = print_info_basic(&xfi, pair); - else - fail = print_info_adv(&xfi, pair); - - // Update the totals that are displayed after all - // the individual files have been listed. Don't count - // broken files. - if (!fail) - update_totals(&xfi); - - lzma_index_end(xfi.idx, NULL); + for (i = 0; i < files; i++) { + if (pairs[i] == NULL) + continue; + + if (!parse_indexes(&xfi, pairs[i])) { + bool fail; + + // We have three main modes: + // - --robot, which has submodes if --verbose is specified + // once or twice + // - Normal --list without --verbose + // - --list with one or two --verbose + if (opt_robot) + fail = print_info_robot(&xfi, pairs[i]); + else if (message_verbosity_get() <= V_WARNING) + fail = print_info_basic(&xfi, pairs[i]); + else + fail = print_info_adv(&xfi, pairs[i]); + + // Update the totals that are displayed after all + // the individual files have been listed. Don't count + // broken files. + if (!fail) + update_totals(&xfi); + + lzma_index_end(xfi.idx, NULL); + } + + io_close(pairs[i], false); } - - io_close(pair, false); return; }
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201307141029.r6EATtqh003477>