From 80d3c4d36eea0a40d6c636a53bfc3b14db0e8899 Mon Sep 17 00:00:00 2001 From: Louis Rilling Date: Thu, 12 Jun 2008 17:26:47 +0200 Subject: [PATCH] --- yaml --- r: 102343 b: refs/heads/master c: e75206517504461778c283b942440ef312e437d5 h: refs/heads/master i: 102341: 77bc2781e0fd1d6ef54cfbf80a7ab45b934bf450 102339: a86cfb30e5c83692a56868f9105c4888a6c69a61 102335: f98d4f8c78aa45516e48d1f3e20421967791d71f v: v3 --- [refs] | 2 +- trunk/fs/configfs/symlink.c | 6 +++++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/[refs] b/[refs] index b5e2b4ca1c39..dfddb80c1ffe 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 11c3b79218390a139f2d474ee1e983a672d5839a +refs/heads/master: e75206517504461778c283b942440ef312e437d5 diff --git a/trunk/fs/configfs/symlink.c b/trunk/fs/configfs/symlink.c index faeb4417a10d..0004d18c40ac 100644 --- a/trunk/fs/configfs/symlink.c +++ b/trunk/fs/configfs/symlink.c @@ -140,8 +140,12 @@ int configfs_symlink(struct inode *dir, struct dentry *dentry, const char *symna goto out_put; ret = type->ct_item_ops->allow_link(parent_item, target_item); - if (!ret) + if (!ret) { ret = create_link(parent_item, target_item, dentry); + if (ret && type->ct_item_ops->drop_link) + type->ct_item_ops->drop_link(parent_item, + target_item); + } config_item_put(target_item); path_put(&nd.path);