Let git cl format be runnable outside of the root
This will also enable git cl format to be more easily runnable by
presubmit within a subdirectory.
BUG=none
Review URL: https://codereview.chromium.org/108353005
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@239821 0039d316-1c4b-4281-b951-d872f2087c98
diff --git a/git_cl.py b/git_cl.py
index bad3e65..c401f0e 100755
--- a/git_cl.py
+++ b/git_cl.py
@@ -2248,6 +2248,12 @@
if args:
parser.error('Unrecognized args: %s' % ' '.join(args))
+ # git diff generates paths against the root of the repository. Change
+ # to that directory so clang-format can find files even within subdirs.
+ rel_base_path = RunGit(['rev-parse', '--show-cdup']).strip()
+ if rel_base_path:
+ os.chdir(rel_base_path)
+
# Generate diff for the current branch's changes.
diff_cmd = ['diff', '--no-ext-diff', '--no-prefix']
if opts.full: