id,summary,reporter,owner,description,type,status,priority,milestone,component,resolution,keywords,cc,branch,branch_author,launchpad_bug
4361,[PATCH] Reactor sometimes refuses to start on Windows (can't assign requested address for InstallWaker),Szumo,,"Trying to start trial on Windows sometimes results in following traceback:
{{{
    from twisted.internet import reactor, protocol, error, defer
  File ""c:\python25\lib\site-packages\twisted-10.0.0-py2.5-win32.egg\twisted\internet\reactor.py"", line 38, in <module>
    selectreactor.install()
  File ""c:\python25\lib\site-packages\twisted-10.0.0-py2.5-win32.egg\twisted\internet\selectreactor.py"", line 200, in install
    reactor = SelectReactor()
  File ""c:\python25\lib\site-packages\twisted-10.0.0-py2.5-win32.egg\twisted\internet\selectreactor.py"", line 72, in __init__
    posixbase.PosixReactorBase.__init__(self)
  File ""c:\python25\lib\site-packages\twisted-10.0.0-py2.5-win32.egg\twisted\internet\posixbase.py"", line 171, in __init__
    ReactorBase.__init__(self)
  File ""c:\python25\lib\site-packages\twisted-10.0.0-py2.5-win32.egg\twisted\internet\base.py"", line 470, in __init__
    self._initThreads()
  File ""c:\python25\lib\site-packages\twisted-10.0.0-py2.5-win32.egg\twisted\internet\base.py"", line 892, in _initThreads
    self.installWaker()
  File ""c:\python25\lib\site-packages\twisted-10.0.0-py2.5-win32.egg\twisted\internet\posixbase.py"", line 207, in installWaker
    self.waker = _Waker(self)
  File ""c:\python25\lib\site-packages\twisted-10.0.0-py2.5-win32.egg\twisted\internet\posixbase.py"", line 75, in __init__
    client.connect(server.getsockname())
  File ""<string>"", line 1, in connect
socket.error: (10049, ""Can't assign requested address"")
}}}
It turns out socket.getsockname _sometimes_ returns ('0.0.0.0', port) instead of ('127.0.0.1', port) on Windows.

I use attached simple patch to fix the problem, could one of core developers please review/commit it.",defect,closed,normal,,core,duplicate,easy windows,,,Szumo,
