From ce86abbe8ab9389fbad9d375e3754ed054d8b744 Mon Sep 17 00:00:00 2001 From: "Shawn O. Pearce" Date: Fri, 3 Jul 2009 16:52:28 -0700 Subject: [PATCH] Allow the manifest to be accessed it if is in work tree If the manifest's work tree is actually inside of the rest of the client work tree then its only fair that we include it as a project that the user can access. Signed-off-by: Shawn O. Pearce --- command.py | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/command.py b/command.py index 9e970e80..6e4e2c57 100644 --- a/command.py +++ b/command.py @@ -71,6 +71,12 @@ class Command(object): """A list of projects that match the arguments. """ all = self.manifest.projects + + mp = self.manifest.manifestProject + if mp.relpath == '.': + all = dict(all) + all[mp.name] = mp + result = [] if not args: @@ -91,7 +97,9 @@ class Command(object): for p in all.values(): by_path[p.worktree] = p - if os.path.exists(path): + try: + project = by_path[path] + except KeyError: while path \ and path != '/' \ and path != self.manifest.topdir: @@ -100,11 +108,6 @@ class Command(object): break except KeyError: path = os.path.dirname(path) - else: - try: - project = by_path[path] - except KeyError: - pass if not project: raise NoSuchProjectError(arg)