if (inode && S_ISDIR(inode->i_mode)) { /* Don't allow creating an alias to a directory  */ struct dentry *alias = d_find_alias(inode); if (alias) { dput(alias); iput(inode); return ERR_PTR(-EIO); } 
if (inode && dir_alias(inode)) { iput(inode); return ERR_PTR(-EIO); 
static struct dentry *fuse_lookup(struct inode *dir, struct dentry *entry,				  struct nameidata *nd){	struct inode *inode;	int err;	err = fuse_lookup_iget(dir, entry, &inode);	if (err)		return ERR_PTR(err);	if (inode && S_ISDIR(inode->i_mode)) {		/* Don't allow creating an alias to a directory  */		struct dentry *alias = d_find_alias(inode);		if (alias) {			dput(alias);			iput(inode);			return ERR_PTR(-EIO);		}	}	d_add(entry, inode);	return NULL;}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/f007d5c961448170d0ec2998b1a80eef054b6235/dir.c/buggy/fs/fuse/dir.c