diff options
author | Antoine Pitrou <solipsis@pitrou.net> | 2010-03-23 00:25:54 (GMT) |
---|---|---|
committer | Antoine Pitrou <solipsis@pitrou.net> | 2010-03-23 00:25:54 (GMT) |
commit | 39b3543174b53f907e629df830b192aa77455740 (patch) | |
tree | e849f18fa012b19f70d1e458fecfb427a2d1d163 | |
parent | 4c5475d1967abc63e9f611fbc26e82a2b8e2b9e6 (diff) | |
download | cpython-39b3543174b53f907e629df830b192aa77455740.zip cpython-39b3543174b53f907e629df830b192aa77455740.tar.gz cpython-39b3543174b53f907e629df830b192aa77455740.tar.bz2 |
Issue #8139: ossaudiodev didn't initialize its types properly, therefore
some methods (such as oss_mixer_device.fileno()) were not available.
Initial patch by Bertrand Janin.
-rw-r--r-- | Lib/test/test_ossaudiodev.py | 9 | ||||
-rw-r--r-- | Misc/ACKS | 1 | ||||
-rw-r--r-- | Misc/NEWS | 4 | ||||
-rw-r--r-- | Modules/ossaudiodev.c | 8 |
4 files changed, 21 insertions, 1 deletions
diff --git a/Lib/test/test_ossaudiodev.py b/Lib/test/test_ossaudiodev.py index dda6137..055ad6c 100644 --- a/Lib/test/test_ossaudiodev.py +++ b/Lib/test/test_ossaudiodev.py @@ -159,6 +159,15 @@ class OSSAudioDevTests(unittest.TestCase): dsp.close() self.assertTrue(dsp.closed) + def test_mixer_methods(self): + # Issue #8139: ossaudiodev didn't initialize its types properly, + # therefore some methods were unavailable. + mixer = ossaudiodev.openmixer() + try: + self.assertGreaterEqual(mixer.fileno(), 0) + finally: + mixer.close() + def test_main(): try: @@ -372,6 +372,7 @@ Ben Jackson David Jacobs Kevin Jacobs Kjetil Jacobsen +Bertrand Janin Geert Jansen Jack Jansen Bill Janssen @@ -287,6 +287,10 @@ C-API Library ------- +- Issue #8139: ossaudiodev didn't initialize its types properly, therefore + some methods (such as oss_mixer_device.fileno()) were not available. + Initial patch by Bertrand Janin. + - Issue #7512: shutil.copystat() could raise an OSError when the filesystem didn't support chflags() (for example ZFS under FreeBSD). The error is now silenced. diff --git a/Modules/ossaudiodev.c b/Modules/ossaudiodev.c index 7686902..6654d71 100644 --- a/Modules/ossaudiodev.c +++ b/Modules/ossaudiodev.c @@ -986,11 +986,17 @@ static struct PyModuleDef ossaudiodevmodule = { NULL }; -PyObject* +PyMODINIT_FUNC PyInit_ossaudiodev(void) { PyObject *m; + if (PyType_Ready(&OSSAudioType) < 0) + return NULL; + + if (PyType_Ready(&OSSMixerType) < 0) + return NULL; + m = PyModule_Create(&ossaudiodevmodule); if (m == NULL) return NULL; |