From: Volker Lendecke Date: Mon, 29 Sep 2025 12:33:18 +0000 (+0200) Subject: vfs_fruit: Make struct allocation in fruit_freaddir_attr() more common X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=c4d60b712bfa32f9cdad3cf570a4862461342e12;p=thirdparty%2Fsamba.git vfs_fruit: Make struct allocation in fruit_freaddir_attr() more common Just assign the output buffer on success Signed-off-by: Volker Lendecke Reviewed-by: Ralph Boehme --- diff --git a/source3/modules/vfs_fruit.c b/source3/modules/vfs_fruit.c index b997d810a80..c95a3bc5e84 100644 --- a/source3/modules/vfs_fruit.c +++ b/source3/modules/vfs_fruit.c @@ -4487,12 +4487,11 @@ static NTSTATUS fruit_freaddir_attr(struct vfs_handle_struct *handle, } } - *pattr_data = talloc_zero(mem_ctx, struct readdir_attr_data); - if (*pattr_data == NULL) { + attr_data = talloc(mem_ctx, struct readdir_attr_data); + if (attr_data == NULL) { return NT_STATUS_NO_MEMORY; } - attr_data = *pattr_data; - attr_data->type = RDATTR_AAPL; + *attr_data = (struct readdir_attr_data){.type = RDATTR_AAPL}; /* * Mac metadata: compressed FinderInfo, resource fork length @@ -4535,12 +4534,13 @@ static NTSTATUS fruit_freaddir_attr(struct vfs_handle_struct *handle, } } + *pattr_data = attr_data; return NT_STATUS_OK; fail: DBG_WARNING("Path [%s], error: %s\n", fsp_str_dbg(fsp), nt_errstr(status)); - TALLOC_FREE(*pattr_data); + TALLOC_FREE(attr_data); return status; }