git://git.onelab.eu
/
linux-2.6.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
vserver 2.0 rc7
[linux-2.6.git]
/
fs
/
ext3
/
acl.c
diff --git
a/fs/ext3/acl.c
b/fs/ext3/acl.c
index
926af62
..
638c13a
100644
(file)
--- a/
fs/ext3/acl.c
+++ b/
fs/ext3/acl.c
@@
-197,8
+197,7
@@
ext3_get_acl(struct inode *inode, int type)
acl = NULL;
else
acl = ERR_PTR(retval);
acl = NULL;
else
acl = ERR_PTR(retval);
- if (value)
- kfree(value);
+ kfree(value);
if (!IS_ERR(acl)) {
switch(type) {
if (!IS_ERR(acl)) {
switch(type) {
@@
-267,8
+266,7
@@
ext3_set_acl(handle_t *handle, struct inode *inode, int type,
error = ext3_xattr_set_handle(handle, inode, name_index, "",
value, size, 0);
error = ext3_xattr_set_handle(handle, inode, name_index, "",
value, size, 0);
- if (value)
- kfree(value);
+ kfree(value);
if (!error) {
switch(type) {
case ACL_TYPE_ACCESS:
if (!error) {
switch(type) {
case ACL_TYPE_ACCESS:
@@
-288,6
+286,8
@@
ext3_check_acl(struct inode *inode, int mask)
{
struct posix_acl *acl = ext3_get_acl(inode, ACL_TYPE_ACCESS);
{
struct posix_acl *acl = ext3_get_acl(inode, ACL_TYPE_ACCESS);
+ if (IS_ERR(acl))
+ return PTR_ERR(acl);
if (acl) {
int error = posix_acl_permission(inode, acl, mask);
posix_acl_release(acl);
if (acl) {
int error = posix_acl_permission(inode, acl, mask);
posix_acl_release(acl);