zeroconf: suppress traceback during shutdown
If the read thred is in select when the main thread is in close, the main
thread may close the socket between select and read, generating a noisy
traceback. This can be ignored if the shutdown flag is set.
% init
adding a
% fold in the middle of the queue
popping p3
popping p2
now at: p1
--- a/a
+++ b/a
@@ -1,1 +1,2 @@
a
+a
p1
p3
--- a/a
+++ b/a
@@ -1,1 +1,3 @@
a
+a
+b
% fold with local changes
abort: local changes found, refresh first
--- a/a
+++ b/a
@@ -1,1 +1,3 @@
a
+a
+b
reverting a
% fold git patch into a regular patch, expect git patch
popping git
now at: regular
# HG changeset patch
# Parent
diff --git a/a b/a
--- a/a
+++ b/a
@@ -1,3 +1,4 @@
a
a
b
+a
diff --git a/a b/aa
copy from a
copy to aa
--- a/a
+++ b/aa
@@ -1,3 +1,4 @@
a
a
b
+a
popping regular
now at: p1
% fold regular patch into a git patch, expect git patch
popping regular
now at: git
# HG changeset patch
# Parent
diff --git a/a b/aa
copy from a
copy to aa
--- a/a
+++ b/aa
@@ -1,3 +1,4 @@
a
a
b
+b