annotations: prevent python broken pipe errors
authorAndrea Righi <andrea.righi@canonical.com>
Mon, 5 Dec 2022 15:07:38 +0000 (16:07 +0100)
committerAndrea Righi <andrea.righi@canonical.com>
Mon, 30 Jan 2023 08:12:28 +0000 (09:12 +0100)
Prevent broken pipe errors when showing output in pipe to other tools
(less for example).

Signed-off-by: Andrea Righi <andrea.righi@canonical.com>
annotations

index 7138e49dda06085e2c0729bbef682ccb6a7874ad..a61dd3ed0b7812ee16ee83bf5de17f5cf6df0af6 100755 (executable)
@@ -8,6 +8,7 @@ sys.dont_write_bytecode = True
 import argparse
 import json
 from kconfig.annotations import Annotation, KConfig
+from signal import signal, SIGPIPE, SIG_DFL
 
 VERSION = '0.1'
 
@@ -206,6 +207,11 @@ def autodetect_annotations(args):
         arg_fail('error: could not determine DEBDIR, try using: --file/-f')
 
 def main():
+    # Prevent broken pipe errors when showing output in pipe to other tools
+    # (less for example)
+    signal(SIGPIPE, SIG_DFL)
+
+    # Main annotations program
     args = _ARGPARSER.parse_args()
     autodetect_annotations(args)
     if args.value: