From: Erez Zadok <[EMAIL PROTECTED]>

Signed-off-by: Erez Zadok <[EMAIL PROTECTED]>
Signed-off-by: Josef 'Jeff' Sipek <[EMAIL PROTECTED]>
---
 fs/unionfs/main.c |    9 ++++++---
 1 files changed, 6 insertions(+), 3 deletions(-)

diff --git a/fs/unionfs/main.c b/fs/unionfs/main.c
index bc5c105..ce08d96 100644
--- a/fs/unionfs/main.c
+++ b/fs/unionfs/main.c
@@ -337,8 +337,12 @@ static int parse_dirs_option(struct super_block *sb, 
struct unionfs_dentry_info
                int perms;
                char *mode = strchr(name, '=');
 
-               if (!name || !*name)
+               if (!name)
                        continue;
+               if (!*name) {   /* bad use of ':' (extra colons) */
+                       err = -EINVAL;
+                       goto out;
+               }
 
                branches++;
 
@@ -404,10 +408,9 @@ static int parse_dirs_option(struct super_block *sb, 
struct unionfs_dentry_info
         * branch-overlapping test.
         */
        for (i = 0; i < branches; i++) {
+               dent1 = lower_root_info->lower_paths[i].dentry;
                for (j = i + 1; j < branches; j++) {
-                       dent1 = lower_root_info->lower_paths[i].dentry;
                        dent2 = lower_root_info->lower_paths[j].dentry;
-
                        if (is_branch_overlap(dent1, dent2)) {
                                printk(KERN_WARNING "unionfs: branches %d and "
                                       "%d overlap\n", i, j);
-- 
1.5.2.2.238.g7cbf2f2

-
To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to