" [--check] [--debug] [--streams-interface=INTERFACE]\n"
" [--staging-dir=DIR]\n",
[OPTIMIZE] =
-"imagex optimize WIMFILE [--check] [--recompress]\n",
+"imagex optimize WIMFILE [--check] [--recompress] [--compress=TYPE]\n",
[SPLIT] =
"imagex split WIMFILE SPLIT_WIMFILE PART_SIZE_MB [--check]\n",
[UNMOUNT] =
putchar('\n');
break;
case WIMLIB_PROGRESS_MSG_EXTRACT_IMAGE_BEGIN:
- /*printf("Applying image %d (%s) to `%s'\n",*/
- /*info->extract.image,*/
- /*info->extract.image_name,*/
- /*info->extract.target);*/
+ printf("Applying image %d (%s) from `%s' to %s `%s'\n",
+ info->extract.image,
+ info->extract.image_name,
+ info->extract.wimfile_name,
+ ((info->extract.extract_flags & WIMLIB_EXTRACT_FLAG_NTFS) ?
+ "NTFS volume" : "directory"),
+ info->extract.target);
+ break;
+ case WIMLIB_PROGRESS_MSG_EXTRACT_IMAGE_END:
+ printf("Done applying WIM image.\n");
+ if (info->extract.extract_flags & WIMLIB_EXTRACT_FLAG_NTFS) {
+ printf("Unmounting NTFS volume `%s'...\n",
+ info->extract.target);
+ }
break;
- /*case WIMLIB_PROGRESS_MSG_EXTRACT_IMAGE_END:*/
- /*printf("Done applying image %d!\n",*/
- /*info->extract.image);*/
- /*break;*/
/*case WIMLIB_PROGRESS_MSG_EXTRACT_DIR_STRUCTURE_BEGIN:*/
/*printf("Applying directory structure to %s\n",*/
/*info->extract.target);*/
ret = stat(target, &stbuf);
if (ret == 0) {
- if (S_ISBLK(stbuf.st_mode) || S_ISREG(stbuf.st_mode)) {
+ if (S_ISBLK(stbuf.st_mode) || S_ISREG(stbuf.st_mode))
extract_flags |= WIMLIB_EXTRACT_FLAG_NTFS;
- printf("Applying `%s' image %d to NTFS volume `%s'\n",
- wimfile, image, target);
- }
} else {
if (errno != ENOENT) {
imagex_error_with_errno("Failed to stat `%s'", target);
ret = wimlib_overwrite(w, write_flags, 0, imagex_progress_func);
- new_size = file_get_size(argv[0]);
- printf("`%s' optimized size: ", wimfile);
- if (new_size == -1)
- puts("Unknown");
- else
- printf("%"PRIu64" KiB\n", new_size >> 10);
+ if (ret == 0) {
+ new_size = file_get_size(argv[0]);
+ printf("`%s' optimized size: ", wimfile);
+ if (new_size == -1)
+ puts("Unknown");
+ else
+ printf("%"PRIu64" KiB\n", new_size >> 10);
- fputs("Space saved: ", stdout);
- if (new_size != -1 && old_size != -1) {
- printf("%lld KiB\n",
- ((long long)old_size - (long long)new_size) >> 10);
- } else {
- puts("Unknown");
+ fputs("Space saved: ", stdout);
+ if (new_size != -1 && old_size != -1) {
+ printf("%lld KiB\n",
+ ((long long)old_size - (long long)new_size) >> 10);
+ } else {
+ puts("Unknown");
+ }
}
wimlib_free(w);