engine: log error when reactor.listenTCP fails instead of failing

This commit is contained in:
Pablo Hoffman 2009-06-18 09:44:02 -03:00
parent d23dcbb390
commit e716fad03d
1 changed files with 5 additions and 1 deletions

View File

@ -7,6 +7,7 @@ For more information see docs/topics/architecture.rst
from datetime import datetime
from twisted.internet import defer, reactor, task
from twisted.internet.error import CannotListenError
from twisted.python.failure import Failure
from pydispatch import dispatcher
@ -126,7 +127,10 @@ class ExecutionEngine(object):
for tsk, interval, now in self.tasks:
tsk.start(interval, now)
for args, kwargs in [t for t in self.ports if isinstance(t, tuple)]:
reactor.listenTCP(*args, **kwargs)
try:
reactor.listenTCP(*args, **kwargs)
except CannotListenError:
log.msg("Cannot listen on TCP port %d" % args[0], level=log.ERROR)
self.running = True
if control_reactor:
reactor.run() # blocking call