From e3993d0602ce8b88ab8f408277fedf8baa2163d0 Mon Sep 17 00:00:00 2001 From: Kirill Korotaev Date: Fri, 14 Jul 2006 00:23:49 -0700 Subject: [PATCH] --- yaml --- r: 32608 b: refs/heads/master c: de45921535bfc3b1f63b426c2a9739635f864283 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/fs/namei.c | 8 +++++++- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/[refs] b/[refs] index 2ba3a83350e3..270616e9ee45 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 9ee8ab9fbf21e6b87ad227cd46c0a4be41ab749b +refs/heads/master: de45921535bfc3b1f63b426c2a9739635f864283 diff --git a/trunk/fs/namei.c b/trunk/fs/namei.c index c9750d755aff..e01070d7bf58 100644 --- a/trunk/fs/namei.c +++ b/trunk/fs/namei.c @@ -1712,8 +1712,14 @@ int open_namei(int dfd, const char *pathname, int flag, if (error) goto exit_dput; error = __do_follow_link(&path, nd); - if (error) + if (error) { + /* Does someone understand code flow here? Or it is only + * me so stupid? Anathema to whoever designed this non-sense + * with "intent.open". + */ + release_open_intent(nd); return error; + } nd->flags &= ~LOOKUP_PARENT; if (nd->last_type == LAST_BIND) goto ok;