Index: Tools/Scripts/webkitpy/common/checkout/scm/svn.py |
diff --git a/Tools/Scripts/webkitpy/common/checkout/scm/svn.py b/Tools/Scripts/webkitpy/common/checkout/scm/svn.py |
index 54f2fa8e750a76a46de89801ae281ce08c947191..4236d0931b5fbe34dcf6782ee2d1ee291bc27305 100644 |
--- a/Tools/Scripts/webkitpy/common/checkout/scm/svn.py |
+++ b/Tools/Scripts/webkitpy/common/checkout/scm/svn.py |
@@ -120,16 +120,21 @@ class SVN(SCM): |
field_count = 6 if self._svn_version() > "1.6" else 5 |
return "^(?P<status>[%s]).{%s} (?P<filename>.+)$" % (expected_types, field_count) |
- def _add_parent_directories(self, path): |
+ def _add_parent_directories(self, path, recurse): |
"""Does 'svn add' to the path and its parents.""" |
if self.in_working_directory(path): |
return |
- self.add(path) |
+ self.add(path, recurse=recurse) |
- def add_list(self, paths, return_exit_code=False): |
+ def add_list(self, paths, return_exit_code=False, recurse=True): |
for path in paths: |
- self._add_parent_directories(os.path.dirname(os.path.abspath(path))) |
- return self._run_svn(["add"] + paths, return_exit_code=return_exit_code) |
+ self._add_parent_directories(os.path.dirname(os.path.abspath(path)), |
+ recurse=False) |
+ if recurse: |
+ cmd = ["add"] + paths |
+ else: |
+ cmd = ["add", "--depth", "empty"] + paths |
+ return self._run_svn(cmd, return_exit_code=return_exit_code) |
def _delete_parent_directories(self, path): |
if not self.in_working_directory(path): |