static const struct option verify_options[] = {
{T("ref"), required_argument, NULL, IMAGEX_REF_OPTION},
+ {T("nocheck"), no_argument, NULL, IMAGEX_NOCHECK_OPTION},
{NULL, 0, NULL, 0},
};
T("NTFS volume") : T("directory")),
info->extract.target);
break;
+ case WIMLIB_PROGRESS_MSG_EXTRACT_FILE_STRUCTURE:
+ if (info->extract.end_file_count >= 2000) {
+ percent_done = TO_PERCENT(info->extract.current_file_count,
+ info->extract.end_file_count);
+ imagex_printf(T("\rCreating files: %"PRIu64" of %"PRIu64" (%u%%) done"),
+ info->extract.current_file_count,
+ info->extract.end_file_count, percent_done);
+ if (info->extract.current_file_count == info->extract.end_file_count)
+ imagex_printf(T("\n"));
+ }
+ break;
case WIMLIB_PROGRESS_MSG_EXTRACT_STREAMS:
percent_done = TO_PERCENT(info->extract.completed_bytes,
info->extract.total_bytes);
if (info->extract.completed_bytes >= info->extract.total_bytes)
imagex_printf(T("\n"));
break;
+ case WIMLIB_PROGRESS_MSG_EXTRACT_METADATA:
+ if (info->extract.end_file_count >= 2000) {
+ percent_done = TO_PERCENT(info->extract.current_file_count,
+ info->extract.end_file_count);
+ imagex_printf(T("\rApplying metadata to files: %"PRIu64" of %"PRIu64" (%u%%) done"),
+ info->extract.current_file_count,
+ info->extract.end_file_count, percent_done);
+ if (info->extract.current_file_count == info->extract.end_file_count)
+ imagex_printf(T("\n"));
+ }
+ break;
case WIMLIB_PROGRESS_MSG_EXTRACT_SPWM_PART_BEGIN:
if (info->extract.total_parts != 1) {
imagex_printf(T("\nReading split pipable WIM part %u of %u\n"),
imagex_capture_or_append(int argc, tchar **argv, int cmd)
{
int c;
- int open_flags = WIMLIB_OPEN_FLAG_WRITE_ACCESS;
+ int open_flags = 0;
int add_image_flags = WIMLIB_ADD_IMAGE_FLAG_EXCLUDE_VERBOSE |
WIMLIB_ADD_IMAGE_FLAG_WINCONFIG |
WIMLIB_ADD_IMAGE_FLAG_VERBOSE;
/* Open the existing WIM, or create a new one. */
if (cmd == CMD_APPEND) {
- ret = wimlib_open_wim_with_progress(wimfile, open_flags, &wim,
- imagex_progress_func, NULL);
+ ret = wimlib_open_wim_with_progress(wimfile,
+ open_flags | WIMLIB_OPEN_FLAG_WRITE_ACCESS,
+ &wim,
+ imagex_progress_func,
+ NULL);
if (ret)
goto out_free_capture_sources;
} else {
for (size_t i = 0; i < base_wimfiles.num_strings; i++) {
ret = wimlib_open_wim_with_progress(
- base_wimfiles.strings[i],
- open_flags, &base_wims[i],
- imagex_progress_func, NULL);
+ base_wimfiles.strings[i], open_flags,
+ &base_wims[i], imagex_progress_func, NULL);
if (ret)
goto out_free_base_wims;
if (ret)
goto out_free_refglobs;
break;
+ case IMAGEX_NOCHECK_OPTION:
+ open_flags &= ~WIMLIB_OPEN_FLAG_CHECK_INTEGRITY;
+ break;
default:
goto out_usage;
}