summaryrefslogtreecommitdiffstats
path: root/Lib
diff options
context:
space:
mode:
Diffstat (limited to 'Lib')
-rw-r--r--Lib/logging/config.py8
-rw-r--r--Lib/test/test_logging.py2
2 files changed, 6 insertions, 4 deletions
diff --git a/Lib/logging/config.py b/Lib/logging/config.py
index fdf4397..1438388 100644
--- a/Lib/logging/config.py
+++ b/Lib/logging/config.py
@@ -803,6 +803,8 @@ def listen(port=DEFAULT_LOGGING_CONFIG_PORT):
raise
except:
traceback.print_exc()
+ if self.server.ready:
+ self.server.ready.set()
except socket.error, e:
if not isinstance(e.args, tuple):
raise
@@ -819,12 +821,13 @@ def listen(port=DEFAULT_LOGGING_CONFIG_PORT):
allow_reuse_address = 1
def __init__(self, host='localhost', port=DEFAULT_LOGGING_CONFIG_PORT,
- handler=None):
+ handler=None, ready=None):
ThreadingTCPServer.__init__(self, (host, port), handler)
logging._acquireLock()
self.abort = 0
logging._releaseLock()
self.timeout = 1
+ self.ready = ready
def serve_until_stopped(self):
import select
@@ -849,7 +852,8 @@ def listen(port=DEFAULT_LOGGING_CONFIG_PORT):
self.ready = threading.Event()
def run(self):
- server = self.rcvr(port=self.port, handler=self.hdlr)
+ server = self.rcvr(port=self.port, handler=self.hdlr,
+ ready=self.ready)
self.ready.set()
global _listener
logging._acquireLock()
diff --git a/Lib/test/test_logging.py b/Lib/test/test_logging.py
index 77db96a..dcd75ce 100644
--- a/Lib/test/test_logging.py
+++ b/Lib/test/test_logging.py
@@ -1594,7 +1594,6 @@ class ConfigDictTest(BaseTest):
logging.config.stopListening()
t.join(2.0)
- #@unittest.skip("See issue #7857")
def test_listen_config_10_ok(self):
with captured_stdout() as output:
self.setup_via_listener(json.dumps(self.config10))
@@ -1614,7 +1613,6 @@ class ConfigDictTest(BaseTest):
('ERROR', '4'),
], stream=output)
- @unittest.skip("See issue #7857")
def test_listen_config_1_ok(self):
with captured_stdout() as output:
self.setup_via_listener(textwrap.dedent(ConfigFileTest.config1))