Issue #14482: Raise a ValueError, not a NameError, when trying to create

a multiprocessing Client or Listener with an AF_UNIX type address under
Windows.  Patch by Popa Claudiu.
This commit is contained in:
Antoine Pitrou 2012-04-03 20:13:45 +02:00
commit 5c73e8eaf4
3 changed files with 12 additions and 0 deletions

View File

@ -111,6 +111,10 @@ def _validate_family(family):
if sys.platform != 'win32' and family == 'AF_PIPE': if sys.platform != 'win32' and family == 'AF_PIPE':
raise ValueError('Family %s is not recognized.' % family) raise ValueError('Family %s is not recognized.' % family)
if sys.platform == 'win32' and family == 'AF_UNIX':
# double check
if not hasattr(socket, family):
raise ValueError('Family %s is not recognized.' % family)
def address_type(address): def address_type(address):
''' '''

View File

@ -2649,6 +2649,10 @@ class TestInvalidFamily(unittest.TestCase):
with self.assertRaises(ValueError): with self.assertRaises(ValueError):
multiprocessing.connection.Listener(r'\\.\test') multiprocessing.connection.Listener(r'\\.\test')
@unittest.skipUnless(WIN32, "skipped on non-Windows platforms")
def test_invalid_family_win32(self):
with self.assertRaises(ValueError):
multiprocessing.connection.Listener('/var/test.pipe')
testcases_other = [OtherTest, TestInvalidHandle, TestInitializers, testcases_other = [OtherTest, TestInvalidHandle, TestInitializers,
TestStdinBadfiledescriptor, TestWait, TestInvalidFamily] TestStdinBadfiledescriptor, TestWait, TestInvalidFamily]

View File

@ -19,6 +19,10 @@ Core and Builtins
Library Library
------- -------
- Issue #14482: Raise a ValueError, not a NameError, when trying to create
a multiprocessing Client or Listener with an AF_UNIX type address under
Windows. Patch by Popa Claudiu.
- Issue #802310: Generate always unique tkinter font names if not directly passed. - Issue #802310: Generate always unique tkinter font names if not directly passed.
- Issue #14151: Raise a ValueError, not a NameError, when trying to create - Issue #14151: Raise a ValueError, not a NameError, when trying to create