mirror of
https://chromium.googlesource.com/chromium/tools/depot_tools.git
synced 2026-01-11 18:51:29 +00:00
Handle KeyboardInterrupt gracefully rather the printing a backtrace. Most users of these tools don't expect a backtrace when then hit Ctrl-C. Also, fix a few other inconsistencies found in the python startup code of these different scripts: - always call main function 'main' (rather than 'Main') - always return 0 from main function - if main takes args never include argv[0] Review URL: https://codereview.chromium.org/955993006 git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@294250 0039d316-1c4b-4281-b951-d872f2087c98
39 lines
831 B
Python
Executable File
39 lines
831 B
Python
Executable File
#!/usr/bin/env python
|
|
# Copyright 2014 The Chromium Authors. All rights reserved.
|
|
# Use of this source code is governed by a BSD-style license that can be
|
|
# found in the LICENSE file.
|
|
|
|
import sys
|
|
import optparse
|
|
|
|
import subcommand
|
|
|
|
from git_common import freeze, thaw
|
|
|
|
def CMDfreeze(parser, args):
|
|
"""Freeze a branch's changes."""
|
|
parser.parse_args(args)
|
|
return freeze()
|
|
|
|
|
|
def CMDthaw(parser, args):
|
|
"""Returns a frozen branch to the state before it was frozen."""
|
|
parser.parse_args(args)
|
|
return thaw()
|
|
|
|
|
|
def main(args):
|
|
dispatcher = subcommand.CommandDispatcher(__name__)
|
|
ret = dispatcher.execute(optparse.OptionParser(), args)
|
|
if ret:
|
|
print ret
|
|
return 0
|
|
|
|
|
|
if __name__ == '__main__':
|
|
try:
|
|
sys.exit(main(sys.argv[1:]))
|
|
except KeyboardInterrupt:
|
|
sys.stderr.write('interrupted\n')
|
|
sys.exit(1)
|