| Index: gcl.py
|
| diff --git a/gcl.py b/gcl.py
|
| index 2a52df5fb999f32d2c54407bdfdc619076230a9d..f6de1f7e92510e7e109c6a87d66db5dea5c22f9e 100755
|
| --- a/gcl.py
|
| +++ b/gcl.py
|
| @@ -1000,19 +1000,25 @@ def CMDcommit(change_info, args):
|
| handle, commit_filename = tempfile.mkstemp(text=True)
|
| os.write(handle, commit_message)
|
| os.close(handle)
|
| -
|
| - handle, targets_filename = tempfile.mkstemp(text=True)
|
| - os.write(handle, "\n".join(change_info.GetFileNames()))
|
| - os.close(handle)
|
| -
|
| - commit_cmd += ['--file=' + commit_filename]
|
| - commit_cmd += ['--targets=' + targets_filename]
|
| - # Change the current working directory before calling commit.
|
| - previous_cwd = os.getcwd()
|
| - os.chdir(change_info.GetLocalRoot())
|
| - output = RunShell(commit_cmd, True)
|
| - os.remove(commit_filename)
|
| - os.remove(targets_filename)
|
| + try:
|
| + handle, targets_filename = tempfile.mkstemp(text=True)
|
| + os.write(handle, "\n".join(change_info.GetFileNames()))
|
| + os.close(handle)
|
| + try:
|
| + commit_cmd += ['--file=' + commit_filename]
|
| + commit_cmd += ['--targets=' + targets_filename]
|
| + # Change the current working directory before calling commit.
|
| + previous_cwd = os.getcwd()
|
| + os.chdir(change_info.GetLocalRoot())
|
| + output = ''
|
| + try:
|
| + output = RunShell(commit_cmd, True)
|
| + except subprocess2.CalledProcessError, e:
|
| + ErrorExit('Commit failed.\n%s' % e)
|
| + finally:
|
| + os.remove(commit_filename)
|
| + finally:
|
| + os.remove(targets_filename)
|
| if output.find("Committed revision") != -1:
|
| change_info.Delete()
|
|
|
|
|