Mercurial > hg > mercurial-crew-with-dirclash
comparison mercurial/util.py @ 3906:1063a631cb8e
merge with crew-stable
author | Alexis S. L. Carvalho <alexis@cecm.usp.br> |
---|---|
date | Sat, 16 Dec 2006 02:51:16 -0200 |
parents | 6b4127c7d52a a8c0365b2ace |
children | 1cc60eebc71f |
comparison
equal
deleted
inserted
replaced
3903:f9136599700f | 3906:1063a631cb8e |
---|---|
498 oldenv = {} | 498 oldenv = {} |
499 for k in environ: | 499 for k in environ: |
500 oldenv[k] = os.environ.get(k) | 500 oldenv[k] = os.environ.get(k) |
501 if cwd is not None: | 501 if cwd is not None: |
502 oldcwd = os.getcwd() | 502 oldcwd = os.getcwd() |
503 origcmd = cmd | |
504 if os.name == 'nt': | |
505 cmd = '"%s"' % cmd | |
503 try: | 506 try: |
504 for k, v in environ.iteritems(): | 507 for k, v in environ.iteritems(): |
505 os.environ[k] = py2shell(v) | 508 os.environ[k] = py2shell(v) |
506 if cwd is not None and oldcwd != cwd: | 509 if cwd is not None and oldcwd != cwd: |
507 os.chdir(cwd) | 510 os.chdir(cwd) |
508 rc = os.system(cmd) | 511 rc = os.system(cmd) |
509 if rc and onerr: | 512 if rc and onerr: |
510 errmsg = '%s %s' % (os.path.basename(cmd.split(None, 1)[0]), | 513 errmsg = '%s %s' % (os.path.basename(origcmd.split(None, 1)[0]), |
511 explain_exit(rc)[0]) | 514 explain_exit(rc)[0]) |
512 if errprefix: | 515 if errprefix: |
513 errmsg = '%s: %s' % (errprefix, errmsg) | 516 errmsg = '%s: %s' % (errprefix, errmsg) |
514 try: | 517 try: |
515 onerr.warn(errmsg + '\n') | 518 onerr.warn(errmsg + '\n') |