Show More
@@ -323,15 +323,32 b' def synthesize(ui, repo, descpath, **opt' | |||||
323 | initcount = int(opts['initfiles']) |
|
323 | initcount = int(opts['initfiles']) | |
324 | if initcount and initdirs: |
|
324 | if initcount and initdirs: | |
325 | pctx = repo[None].parents()[0] |
|
325 | pctx = repo[None].parents()[0] | |
|
326 | dirs = set(pctx.dirs()) | |||
326 | files = {} |
|
327 | files = {} | |
|
328 | ||||
|
329 | def validpath(path): | |||
|
330 | # Don't pick filenames which are already directory names. | |||
|
331 | if path in dirs: | |||
|
332 | return False | |||
|
333 | # Don't pick directories which were used as file names. | |||
|
334 | while path: | |||
|
335 | if path in files: | |||
|
336 | return False | |||
|
337 | path = os.path.dirname(path) | |||
|
338 | return True | |||
|
339 | ||||
327 | for i in xrange(0, initcount): |
|
340 | for i in xrange(0, initcount): | |
328 | ui.progress(_synthesizing, i, unit=_files, total=initcount) |
|
341 | ui.progress(_synthesizing, i, unit=_files, total=initcount) | |
329 |
|
342 | |||
330 | path = pickpath() |
|
343 | path = pickpath() | |
331 |
while path |
|
344 | while not validpath(path): | |
332 | path = pickpath() |
|
345 | path = pickpath() | |
333 | data = '%s contents\n' % path |
|
346 | data = '%s contents\n' % path | |
334 | files[path] = context.memfilectx(repo, path, data) |
|
347 | files[path] = context.memfilectx(repo, path, data) | |
|
348 | dir = os.path.dirname(path) | |||
|
349 | while dir and dir not in dirs: | |||
|
350 | dirs.add(dir) | |||
|
351 | dir = os.path.dirname(dir) | |||
335 |
|
352 | |||
336 | def filectxfn(repo, memctx, path): |
|
353 | def filectxfn(repo, memctx, path): | |
337 | return files[path] |
|
354 | return files[path] |
General Comments 0
You need to be logged in to leave comments.
Login now