X-Git-Url: https://wimlib.net/git/?p=wimlib;a=blobdiff_plain;f=src%2Fsymlink.c;h=538b3e8548b1b5ec11fd3762349089a360d997f4;hp=70301b35269d266b93f0c15b507939de9654648f;hb=062465170ddb4520ca6fbc64a0f6e27e786de101;hpb=650997e4865a090b6856c7ca34b02f42994e8e29 diff --git a/src/symlink.c b/src/symlink.c index 70301b35..538b3e85 100644 --- a/src/symlink.c +++ b/src/symlink.c @@ -171,7 +171,7 @@ make_symlink_reparse_data_buf(const char *symlink_target, */ ssize_t inode_readlink(const struct wim_inode *inode, char *buf, size_t buf_len, - const WIMStruct *w, int read_resource_flags) + const WIMStruct *w, bool threadsafe) { const struct wim_lookup_table_entry *lte; int ret; @@ -186,7 +186,7 @@ inode_readlink(const struct wim_inode *inode, char *buf, size_t buf_len, return -EIO; u8 res_buf[wim_resource_size(lte)]; - ret = read_full_wim_resource(lte, res_buf, read_resource_flags); + ret = read_full_resource_into_buf(lte, res_buf, threadsafe); if (ret != 0) return -EIO; return get_symlink_name(res_buf, wim_resource_size(lte), buf, @@ -219,7 +219,7 @@ inode_set_symlink(struct wim_inode *inode, ret = make_symlink_reparse_data_buf(target, &symlink_buf_len, &symlink_buf); - if (ret != 0) + if (ret) return ret; DEBUG("Made symlink reparse data buf (len = %zu, name len = %zu)", @@ -243,7 +243,6 @@ inode_set_symlink(struct wim_inode *inode, lte->resource_location = RESOURCE_IN_ATTACHED_BUFFER; lte->attached_buffer = symlink_buf; lte->resource_entry.original_size = symlink_buf_len; - lte->resource_entry.size = symlink_buf_len; copy_hash(lte->hash, symlink_buf_hash); }