mirror of
https://github.com/openvswitch/ovs
synced 2025-09-05 00:35:33 +00:00
checkpatch: Normalize exit code for Windows
Using python `sys.exit(-1)` on Windows produces mixed results. Let's take the following results from different shells: CMD >python -c "import sys; sys.exit(-1)" & echo %errorlevel% 1 MSYS $ python -c "import sys; sys.exit(-1)" && echo $? 0 WSL $ python -c "import sys; sys.exit(-1)"; echo $? 255 this results in the following tests to fail: checkpatch 10: checkpatch - sign-offs FAILED (checkpatch.at:32) 11: checkpatch - parenthesized constructs FAILED (checkpatch.at:32) 12: checkpatch - parenthesized constructs - for FAILED (checkpatch.at:32) 13: checkpatch - comments FAILED (checkpatch.at:32) because of: ./checkpatch.at:32: exit code was 0, expected 255 This patch introduces a positive constant for the default exit code (1) similar to other OVS utilities. Signed-off-by: Alin Gabriel Serdean <aserdean@ovn.org> Acked-by: Ben Pfaff <blp@ovn.org> Acked-by: Aaron Conole <aconole@redhat.com>
This commit is contained in:
@@ -24,6 +24,7 @@ import sys
|
||||
RETURN_CHECK_INITIAL_STATE = 0
|
||||
RETURN_CHECK_STATE_WITH_RETURN = 1
|
||||
RETURN_CHECK_AWAITING_BRACE = 2
|
||||
EXIT_FAILURE = 1
|
||||
__errors = 0
|
||||
__warnings = 0
|
||||
empty_return_check_state = 0
|
||||
@@ -842,7 +843,7 @@ def ovs_checkpatch_parse(text, filename, author=None, committer=None):
|
||||
|
||||
run_file_checks(text)
|
||||
if __errors or __warnings:
|
||||
return -1
|
||||
return EXIT_FAILURE
|
||||
return 0
|
||||
|
||||
|
||||
@@ -868,10 +869,10 @@ Check options:
|
||||
% sys.argv[0])
|
||||
|
||||
|
||||
def ovs_checkpatch_print_result(result):
|
||||
def ovs_checkpatch_print_result():
|
||||
global quiet, __warnings, __errors, total_line
|
||||
|
||||
if result < 0:
|
||||
if __errors or __warnings:
|
||||
print("Lines checked: %d, Warnings: %d, Errors: %d\n" %
|
||||
(total_line, __warnings, __errors))
|
||||
elif not quiet:
|
||||
@@ -891,7 +892,7 @@ def ovs_checkpatch_file(filename):
|
||||
result = ovs_checkpatch_parse(part.get_payload(decode=False), filename,
|
||||
mail.get('Author', mail['From']),
|
||||
mail['Commit'])
|
||||
ovs_checkpatch_print_result(result)
|
||||
ovs_checkpatch_print_result()
|
||||
return result
|
||||
|
||||
|
||||
@@ -925,7 +926,7 @@ if __name__ == '__main__':
|
||||
"quiet"])
|
||||
except:
|
||||
print("Unknown option encountered. Please rerun with -h for help.")
|
||||
sys.exit(-1)
|
||||
sys.exit(EXIT_FAILURE)
|
||||
|
||||
for o, a in optlist:
|
||||
if o in ("-h", "--help"):
|
||||
@@ -951,7 +952,7 @@ if __name__ == '__main__':
|
||||
quiet = True
|
||||
else:
|
||||
print("Unknown option '%s'" % o)
|
||||
sys.exit(-1)
|
||||
sys.exit(EXIT_FAILURE)
|
||||
|
||||
if sys.stdout.isatty():
|
||||
colors = True
|
||||
@@ -977,17 +978,17 @@ Subject: %s
|
||||
if not quiet:
|
||||
print('== Checking %s ("%s") ==' % (revision[0:12], name))
|
||||
result = ovs_checkpatch_parse(patch, revision)
|
||||
ovs_checkpatch_print_result(result)
|
||||
ovs_checkpatch_print_result()
|
||||
if result:
|
||||
status = -1
|
||||
status = EXIT_FAILURE
|
||||
sys.exit(status)
|
||||
|
||||
if not args:
|
||||
if sys.stdin.isatty():
|
||||
usage()
|
||||
sys.exit(-1)
|
||||
sys.exit(EXIT_FAILURE)
|
||||
result = ovs_checkpatch_parse(sys.stdin.read(), '-')
|
||||
ovs_checkpatch_print_result(result)
|
||||
ovs_checkpatch_print_result()
|
||||
sys.exit(result)
|
||||
|
||||
status = 0
|
||||
@@ -996,5 +997,5 @@ Subject: %s
|
||||
print('== Checking "%s" ==' % filename)
|
||||
result = ovs_checkpatch_file(filename)
|
||||
if result:
|
||||
status = -1
|
||||
status = EXIT_FAILURE
|
||||
sys.exit(status)
|
||||
|
Reference in New Issue
Block a user