Commit f3922382 authored by Matthew Garrett's avatar Matthew Garrett Committed by Al Viro

hfsplus: initialise userflags

The userflags field was being written to the filesystem without being
initialised. Make sure it's clear, since otherwise files end up with
garbage attributes.
Signed-off-by: default avatarMatthew Garrett <mjg@redhat.com>
Signed-off-by: default avatarChristoph Hellwig <hch@lst.de>
Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
parent 7cd916f6
...@@ -193,6 +193,7 @@ static struct dentry *hfsplus_file_lookup(struct inode *dir, ...@@ -193,6 +193,7 @@ static struct dentry *hfsplus_file_lookup(struct inode *dir,
mutex_init(&hip->extents_lock); mutex_init(&hip->extents_lock);
hip->extent_state = 0; hip->extent_state = 0;
hip->flags = 0; hip->flags = 0;
hip->userflags = 0;
set_bit(HFSPLUS_I_RSRC, &hip->flags); set_bit(HFSPLUS_I_RSRC, &hip->flags);
err = hfs_find_init(HFSPLUS_SB(sb)->cat_tree, &fd); err = hfs_find_init(HFSPLUS_SB(sb)->cat_tree, &fd);
...@@ -400,6 +401,7 @@ struct inode *hfsplus_new_inode(struct super_block *sb, umode_t mode) ...@@ -400,6 +401,7 @@ struct inode *hfsplus_new_inode(struct super_block *sb, umode_t mode)
atomic_set(&hip->opencnt, 0); atomic_set(&hip->opencnt, 0);
hip->extent_state = 0; hip->extent_state = 0;
hip->flags = 0; hip->flags = 0;
hip->userflags = 0;
memset(hip->first_extents, 0, sizeof(hfsplus_extent_rec)); memset(hip->first_extents, 0, sizeof(hfsplus_extent_rec));
memset(hip->cached_extents, 0, sizeof(hfsplus_extent_rec)); memset(hip->cached_extents, 0, sizeof(hfsplus_extent_rec));
hip->alloc_blocks = 0; hip->alloc_blocks = 0;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment