X-Git-Url: https://wimlib.net/git/?p=wimlib;a=blobdiff_plain;f=src%2Fntfs-3g_capture.c;h=c26ca605382d86c970d5ce9cb4f226795b84e862;hp=444cccbd69af5c72e77984dbcab791d6249e6f6b;hb=1fc939b7bd0b37900d974b1cd5b11df128df71f5;hpb=5816eba3f41b63910c5d932a8ed22a2c9f65c492 diff --git a/src/ntfs-3g_capture.c b/src/ntfs-3g_capture.c index 444cccbd..c26ca605 100644 --- a/src/ntfs-3g_capture.c +++ b/src/ntfs-3g_capture.c @@ -171,7 +171,7 @@ capture_ntfs_streams(struct wim_inode *inode, int ret; struct wim_lookup_table_entry *lte; - DEBUG2("Capturing NTFS data streams from `%s'", path); + DEBUG("Capturing NTFS data streams from `%s'", path); /* Get context to search the streams of the NTFS file. */ actx = ntfs_attr_get_search_ctx(ni, NULL); @@ -183,7 +183,7 @@ capture_ntfs_streams(struct wim_inode *inode, /* Capture each data stream or reparse data stream. */ while (!ntfs_attr_lookup(type, NULL, 0, - CASE_SENSITIVE, 0, NULL, 0, actx)) + WIMLIB_CASE_SENSITIVE, 0, NULL, 0, actx)) { u64 data_size = ntfs_get_attribute_value_length(actx->attr); u64 name_length = actx->attr->name_length; @@ -296,7 +296,7 @@ out_free_ntfs_loc: out_put_actx: ntfs_attr_put_search_ctx(actx); if (ret == 0) - DEBUG2("Successfully captured NTFS streams from \"%s\"", path); + DEBUG("Successfully captured NTFS streams from \"%s\"", path); else ERROR("Failed to capture NTFS streams from \"%s\"", path); return ret; @@ -535,16 +535,14 @@ build_dentry_tree_ntfs_recursive(struct wim_dentry **root_ret, le32 attributes; int ret; struct wim_dentry *root = NULL; - struct wim_inode *inode; + struct wim_inode *inode = NULL; ATTR_TYPES stream_type; if (exclude_path(path, path_len, params->config, false)) { /* Exclude a file or directory tree based on the capture * configuration file. */ - params->progress.scan.cur_path = path; - do_capture_progress(params, WIMLIB_SCAN_DENTRY_EXCLUDED, NULL); ret = 0; - goto out; + goto out_progress; } /* Get file attributes */ @@ -585,7 +583,7 @@ build_dentry_tree_ntfs_recursive(struct wim_dentry **root_ret, if (inode->i_nlink > 1) { /* Shared inode; nothing more to do */ ret = 0; - goto out_progress_ok; + goto out_progress; } inode->i_creation_time = le64_to_cpu(ni->creation_time); @@ -680,10 +678,15 @@ build_dentry_tree_ntfs_recursive(struct wim_dentry **root_ret, DEBUG("No security ID for `%s'", path); } } + if (ret) + goto out; -out_progress_ok: +out_progress: params->progress.scan.cur_path = path; - do_capture_progress(params, WIMLIB_SCAN_DENTRY_OK, inode); + if (root == NULL) + do_capture_progress(params, WIMLIB_SCAN_DENTRY_EXCLUDED, NULL); + else + do_capture_progress(params, WIMLIB_SCAN_DENTRY_OK, inode); out: if (ret == 0) *root_ret = root;