]> git.proxmox.com Git - mirror_ubuntu-artful-kernel.git/blobdiff - fs/hfsplus/dir.c
vfs: push dentry_unhash on rename_dir into file systems
[mirror_ubuntu-artful-kernel.git] / fs / hfsplus / dir.c
index 23451a955aa0a7522e341d4ee33489d27b517007..b28835091dd084d9f1fae4709dafbc2cb1d7fc0b 100644 (file)
@@ -469,10 +469,12 @@ static int hfsplus_rename(struct inode *old_dir, struct dentry *old_dentry,
 
        /* Unlink destination if it already exists */
        if (new_dentry->d_inode) {
-               if (S_ISDIR(new_dentry->d_inode->i_mode))
+               if (S_ISDIR(new_dentry->d_inode->i_mode)) {
+                       dentry_unhash(new_dentry);
                        res = hfsplus_rmdir(new_dir, new_dentry);
-               else
+               } else {
                        res = hfsplus_unlink(new_dir, new_dentry);
+               }
                if (res)
                        return res;
        }