X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=fs%2Fncpfs%2Finode.c;h=bea651fd2f94308acde143bbb2167e4dfb212236;hb=9bf4aaab3e101692164d49b7ca357651eb691cb6;hp=cda1ffd34bbd57a4741382a4ef47af562a03dd97;hpb=db216c3d5e4c040e557a50f8f5d35d5c415e8c1c;p=linux-2.6.git diff --git a/fs/ncpfs/inode.c b/fs/ncpfs/inode.c index cda1ffd34..bea651fd2 100644 --- a/fs/ncpfs/inode.c +++ b/fs/ncpfs/inode.c @@ -873,7 +873,9 @@ int ncp_notify_change(struct dentry *dentry, struct iattr *attr) tmpattr.ia_valid = ATTR_MODE; tmpattr.ia_mode = attr->ia_mode; - inode_setattr(inode, &tmpattr); + result = inode_setattr(inode, &tmpattr); + if (result) + goto out; } } #endif @@ -899,13 +901,17 @@ int ncp_notify_change(struct dentry *dentry, struct iattr *attr) closing the file */ ncp_inode_close(inode); result = ncp_make_closed(inode); + if (result) + goto out; { struct iattr tmpattr; tmpattr.ia_valid = ATTR_SIZE; tmpattr.ia_size = attr->ia_size; - inode_setattr(inode, &tmpattr); + result = inode_setattr(inode, &tmpattr); + if (result) + goto out; } } if ((attr->ia_valid & ATTR_CTIME) != 0) { @@ -951,7 +957,7 @@ int ncp_notify_change(struct dentry *dentry, struct iattr *attr) #endif } if (!result) - inode_setattr(inode, attr); + result = inode_setattr(inode, attr); out: unlock_kernel(); return result;