Skip to content

Commit 48ac022

Browse files
committed
Set SIGPIPE to SIG_DFL in panxapi.py for consistency with panconf.py
and panwfapi.py. This is needed on some systems when piping to programs like head so we don't see BrokenPipeError. Also handle AttributeError for Windows which doesn't have SIGPIPE.
1 parent 8fc0183 commit 48ac022

File tree

3 files changed

+18
-2
lines changed

3 files changed

+18
-2
lines changed

bin/panconf.py

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,11 @@
3131

3232

3333
def main():
34-
signal.signal(signal.SIGPIPE, signal.SIG_DFL)
34+
try:
35+
signal.signal(signal.SIGPIPE, signal.SIG_DFL)
36+
except AttributeError:
37+
# Windows
38+
pass
3539

3640
options = parse_opts()
3741

bin/panwfapi.py

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,12 @@
3838

3939

4040
def main():
41-
signal.signal(signal.SIGPIPE, signal.SIG_DFL)
41+
try:
42+
signal.signal(signal.SIGPIPE, signal.SIG_DFL)
43+
except AttributeError:
44+
# Windows
45+
pass
46+
4247
# set_encoding()
4348
options = parse_opts()
4449

bin/panxapi.py

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@
2525
import pprint
2626
import logging
2727
import ssl
28+
import signal
2829

2930
libpath = os.path.dirname(os.path.abspath(__file__))
3031
sys.path[:0] = [os.path.join(libpath, os.pardir, 'lib')]
@@ -36,6 +37,12 @@
3637

3738

3839
def main():
40+
try:
41+
signal.signal(signal.SIGPIPE, signal.SIG_DFL)
42+
except AttributeError:
43+
# Windows
44+
pass
45+
3946
set_encoding()
4047
options = parse_opts()
4148

0 commit comments

Comments
 (0)