Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 986cdb86 authored by Al Viro's avatar Al Viro
Browse files

gfs2: bugger off early if O_CREAT open finds a directory



Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
parent cac7f242
Loading
Loading
Loading
Loading
+5 −0
Original line number Diff line number Diff line
@@ -624,6 +624,11 @@ static int gfs2_create_inode(struct inode *dir, struct dentry *dentry,
	inode = gfs2_dir_search(dir, &dentry->d_name, !S_ISREG(mode) || excl);
	error = PTR_ERR(inode);
	if (!IS_ERR(inode)) {
		if (S_ISDIR(inode->i_mode)) {
			iput(inode);
			inode = ERR_PTR(-EISDIR);
			goto fail_gunlock;
		}
		d = d_splice_alias(inode, dentry);
		error = PTR_ERR(d);
		if (IS_ERR(d)) {