union wimlib_progress_info *progress)
{
struct lookup_table_entry *lte;
- struct inode *inode;
u64 total_bytes = 0;
u64 num_streams = 0;
ret = ops->apply_dentry(dentry, args);
if (ret != 0)
goto out;
- if (args->progress.extract.completed_bytes >= next_progress) {
+ if (progress_func &&
+ args->progress.extract.completed_bytes >= next_progress &&
+ args->progress.extract.total_bytes != 0)
+ {
progress_func(WIMLIB_PROGRESS_MSG_EXTRACT_STREAMS,
&args->progress);
next_progress += bytes_per_progress;
args.progress_func = progress_func;
if (progress_func) {
- args.progress.extract.image = image;
+ args.progress.extract.wimfile_name = w->filename;
+ args.progress.extract.image = image;
+ args.progress.extract.extract_flags = (extract_flags &
+ WIMLIB_EXTRACT_MASK_PUBLIC);
args.progress.extract.image_name = wimlib_get_image_name(w, image);
- args.progress.extract.target = target;
+ args.progress.extract.target = target;
}
#ifdef WITH_NTFS_3G