This issue tracker has been migrated to GitHub ,
and is currently read-only.
For more information,
see the GitHub FAQs in the Python's Developer Guide.
Created on 2014年01月05日 21:21 by serhiy.storchaka, last changed 2022年04月11日 14:57 by admin. This issue is now closed.
| Files | ||||
|---|---|---|---|---|
| File name | Uploaded | Description | Edit | |
| audioop_clinic.patch | serhiy.storchaka, 2014年01月18日 12:49 | review | ||
| Messages (10) | |||
|---|---|---|---|
| msg207401 - (view) | Author: Serhiy Storchaka (serhiy.storchaka) * (Python committer) | Date: 2014年01月05日 21:21 | |
Here is a patch which converts the audioop module to use Argument Clinic. 26 functions are converted. Also it adds docstrings for audioop functions. There are two problems: * Test test_string crashes. Perhaps here is a bug in Argument Clinic (Py_buffer arguments are not initialized). * Pydoc for ratecv (and only for this function) returns: ratecv = <built-in function ratecv> |
|||
| msg207595 - (view) | Author: Larry Hastings (larry) * (Python committer) | Date: 2014年01月07日 20:54 | |
Can you refresh the patch? I think all the problems you cited are fixed, and also the comments Argument Clinic uses were all changed. I'll review when you have a fresh patch. |
|||
| msg207626 - (view) | Author: Serhiy Storchaka (serhiy.storchaka) * (Python committer) | Date: 2014年01月07日 23:56 | |
Here is refreshed patch. |
|||
| msg207645 - (view) | Author: Larry Hastings (larry) * (Python committer) | Date: 2014年01月08日 00:25 | |
Serhiy: Assigning to you because you wrote a patch; if you don't want the issue, sorry, please undo it. |
|||
| msg208084 - (view) | Author: Serhiy Storchaka (serhiy.storchaka) * (Python committer) | Date: 2014年01月14日 08:59 | |
Patch updated to tip (a little different generated code for Py_buffer). I don't want to use return converters here because I want to add support for float32 and float64 in 3.5. |
|||
| msg208245 - (view) | Author: Larry Hastings (larry) * (Python committer) | Date: 2014年01月16日 07:24 | |
I don't understand. Python already has "double" which is float64. Why would Python need a second floating-point type which isn't as good? In any case, if somehow you get float32 in, we could just change the return converters then. So I would still prefer float return converters for now. |
|||
| msg208252 - (view) | Author: Serhiy Storchaka (serhiy.storchaka) * (Python committer) | Date: 2014年01月16日 08:03 | |
I mean I want to add support for float32 and float64 in audioop functions. In that case return value of getsample(), max(), ets will be no longer integer for float format. |
|||
| msg209181 - (view) | Author: Roundup Robot (python-dev) (Python triager) | Date: 2014年01月25日 09:58 | |
New changeset d4099b8a7d0f by Serhiy Storchaka in branch 'default': Issue #20133: The audioop module now uses Argument Clinic. http://hg.python.org/cpython/rev/d4099b8a7d0f |
|||
| msg209261 - (view) | Author: Larry Hastings (larry) * (Python committer) | Date: 2014年01月26日 00:24 | |
Christian Heimes just posted this to python-dev: ____________________________________________________________ Coverity has detected an issue in this commit: ** CID 1164423: Division or modulo by zero (DIVIDE_BY_ZERO) /Modules/audioop.c: 1375 in audioop_ratecv_impl() ________________________________________________________________________________________________________ *** CID 1164423: Division or modulo by zero (DIVIDE_BY_ZERO) /Modules/audioop.c: 1375 in audioop_ratecv_impl() 1369 without spurious overflow is the challenge; we can 1370 settle for a reasonable upper bound, though, in this 1371 case ceiling(len/inrate) * outrate. */ 1372 1373 /* compute ceiling(len/inrate) without overflow */ 1374 Py_ssize_t q = len > 0 ? 1 + (len - 1) / inrate : 0; >>> CID 1164423: Division or modulo by zero (DIVIDE_BY_ZERO) >>> In expression "9223372036854775807L / q", division by expression "q" which may be zero has undefined behavior. 1375 if (outrate > PY_SSIZE_T_MAX / q / bytes_per_frame) 1376 str = NULL; 1377 else 1378 str = PyBytes_FromStringAndSize(NULL, 1379 q * outrate * bytes_per_frame); 1380 } |
|||
| msg209285 - (view) | Author: Serhiy Storchaka (serhiy.storchaka) * (Python committer) | Date: 2014年01月26日 07:38 | |
> Christian Heimes just posted this to python-dev: See issue20394. This is unrelated to clicalization patch. |
|||
| History | |||
|---|---|---|---|
| Date | User | Action | Args |
| 2022年04月11日 14:57:56 | admin | set | github: 64332 |
| 2014年01月26日 07:38:18 | serhiy.storchaka | set | messages: + msg209285 |
| 2014年01月26日 00:24:43 | larry | set | messages: + msg209261 |
| 2014年01月25日 10:01:08 | serhiy.storchaka | set | status: open -> closed resolution: fixed stage: patch review -> resolved |
| 2014年01月25日 09:58:14 | python-dev | set | nosy:
+ python-dev messages: + msg209181 |
| 2014年01月18日 12:49:53 | serhiy.storchaka | set | files: + audioop_clinic.patch |
| 2014年01月18日 12:48:37 | serhiy.storchaka | set | files: - audioop_clinic.patch |
| 2014年01月18日 12:48:04 | serhiy.storchaka | set | files: - audioop_clinic.patch |
| 2014年01月18日 12:47:09 | serhiy.storchaka | set | files: - audioop_clinic.patch |
| 2014年01月16日 08:03:13 | serhiy.storchaka | set | messages: + msg208252 |
| 2014年01月16日 07:24:15 | larry | set | messages: + msg208245 |
| 2014年01月14日 08:59:38 | serhiy.storchaka | set | files: + audioop_clinic.patch |
| 2014年01月14日 08:59:12 | serhiy.storchaka | set | messages: + msg208084 |
| 2014年01月08日 01:36:37 | r.david.murray | link | issue20187 dependencies |
| 2014年01月08日 00:33:08 | larry | unlink | issue20187 dependencies |
| 2014年01月08日 00:33:00 | larry | link | issue20187 dependencies |
| 2014年01月08日 00:25:28 | larry | set | assignee: serhiy.storchaka messages: + msg207645 |
| 2014年01月07日 23:56:51 | serhiy.storchaka | set | files:
+ audioop_clinic.patch messages: + msg207626 |
| 2014年01月07日 20:54:34 | larry | set | messages:
+ msg207595 title: Convert the audioop module to use Argument Clinic -> Derby: Convert the audioop module to use Argument Clinic |
| 2014年01月07日 09:40:11 | serhiy.storchaka | set | dependencies: + inspect.signature fails on some functions which use Argument Clinic |
| 2014年01月06日 17:07:59 | serhiy.storchaka | set | dependencies: + Argument Clinic: Py_buffer parameters are not initialized |
| 2014年01月05日 21:21:04 | serhiy.storchaka | create | |