diff options
Diffstat (limited to 'freed-ora/current/F-12/linux-2.6-btrfs-fix-acl.patch')
-rw-r--r-- | freed-ora/current/F-12/linux-2.6-btrfs-fix-acl.patch | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/freed-ora/current/F-12/linux-2.6-btrfs-fix-acl.patch b/freed-ora/current/F-12/linux-2.6-btrfs-fix-acl.patch new file mode 100644 index 000000000..3e015da42 --- /dev/null +++ b/freed-ora/current/F-12/linux-2.6-btrfs-fix-acl.patch @@ -0,0 +1,25 @@ +diff -up linux-2.6.32.noarch/fs/btrfs/acl.c.orig linux-2.6.32.noarch/fs/btrfs/acl.c +--- linux-2.6.32.noarch/fs/btrfs/acl.c.orig 2009-12-02 22:51:21.000000000 -0500 ++++ linux-2.6.32.noarch/fs/btrfs/acl.c 2010-01-14 15:36:25.926371944 -0500 +@@ -110,13 +110,15 @@ static int btrfs_set_acl(struct inode *i + + switch (type) { + case ACL_TYPE_ACCESS: +- mode = inode->i_mode; +- ret = posix_acl_equiv_mode(acl, &mode); +- if (ret < 0) +- return ret; +- ret = 0; +- inode->i_mode = mode; + name = POSIX_ACL_XATTR_ACCESS; ++ if (acl) { ++ mode = inode->i_mode; ++ ret = posix_acl_equiv_mode(acl, &mode); ++ if (ret < 0) ++ return ret; ++ ret = 0; ++ inode->i_mode = mode; ++ } + break; + case ACL_TYPE_DEFAULT: + if (!S_ISDIR(inode->i_mode)) |