diff --git a/fs/hfsplus/dir.c b/fs/hfsplus/dir.c index d236d85ec9d73f703384ecaa9d6522fe7433c775..e490aaf35174d73f31e24c8e0b3af1b40fa85068 100644 --- a/fs/hfsplus/dir.c +++ b/fs/hfsplus/dir.c @@ -317,8 +317,10 @@ static int hfsplus_unlink(struct inode *dir, struct dentry *dentry) res = hfsplus_rename_cat(inode->i_ino, dir, &dentry->d_name, sbi->hidden_dir, &str); - if (!res) + if (!res) { inode->i_flags |= S_DEAD; + drop_nlink(inode); + } goto out; } res = hfsplus_delete_cat(cnid, dir, &dentry->d_name);