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 2010年06月10日 23:03 by vstinner, last changed 2022年04月11日 14:57 by admin. This issue is now closed.
| Files | ||||
|---|---|---|---|---|
| File name | Uploaded | Description | Edit | |
| ctypes_conversion.patch | vstinner, 2010年06月10日 23:03 | |||
| ctypes_s_set.patch | vstinner, 2010年06月10日 23:03 | |||
| ctypes_tests-2.patch | vstinner, 2010年06月11日 21:58 | |||
| Messages (4) | |||
|---|---|---|---|
| msg107499 - (view) | Author: STINNER Victor (vstinner) * (Python committer) | Date: 2010年06月10日 23:03 | |
ctypes doesn't have strict separation between bytes and characters, whereas Python3 splitted str/unicode of Python2 into bytes/str which a strict separation. The result is that sometimes it works (no error), sometimes it fails (the first time that the user inserts a non-ASCII character). I wrote 3 patches: - ctypes_s_set.patch: fix s_set(), return an unicode string instead of a bytes string - ctypes_conversion.patch: remove ctypes.set_conversion_mode() and all code using it (remove the implicit conversions) - ctypes_tests.patch: fix all tests according the changes introduced by the two previous patches ctypes_s_set.patch is trivial and fixes a real bug. ctypes_conversion.patch does basically remove code. ctypes_tests.patch is the biggest part because the test suite is mostly based on the implicit conversion. Except the parts removing the calls to ctypes.set_conversion_mode() and the tests testing the implicit conversion, ctypes_tests.patch can be commited alone because it improves the test suite (use the right types). |
|||
| msg107590 - (view) | Author: STINNER Victor (vstinner) * (Python committer) | Date: 2010年06月11日 21:53 | |
I commited ctypes_s_set.patch in Python 3.2 (r81911) because it does fix a real bug. |
|||
| msg107591 - (view) | Author: STINNER Victor (vstinner) * (Python committer) | Date: 2010年06月11日 21:58 | |
Update ctypes_tests.patch against last changes: ctypes_tests-2.patch. |
|||
| msg111750 - (view) | Author: STINNER Victor (vstinner) * (Python committer) | Date: 2010年07月28日 00:22 | |
I commited both patches to 3.2, but I splitted them in a different way: - r83191 "fixes" tests (remove implicit conversion) - r83195 removes the implicit conversion in ctypes So it's easier to review the commits and revert the second commit. |
|||
| History | |||
|---|---|---|---|
| Date | User | Action | Args |
| 2022年04月11日 14:57:02 | admin | set | github: 53212 |
| 2010年07月28日 00:22:40 | vstinner | set | status: open -> closed resolution: fixed messages: + msg111750 |
| 2010年07月27日 21:47:51 | flox | set | nosy:
+ flox |
| 2010年06月11日 21:58:42 | vstinner | set | files: - ctypes_tests.patch |
| 2010年06月11日 21:58:34 | vstinner | set | files:
+ ctypes_tests-2.patch messages: + msg107591 |
| 2010年06月11日 21:53:39 | vstinner | set | messages: + msg107590 |
| 2010年06月10日 23:04:03 | vstinner | set | files: - ctypes_conversion.patch |
| 2010年06月10日 23:03:59 | vstinner | set | files: + ctypes_tests.patch |
| 2010年06月10日 23:03:51 | vstinner | set | files: + ctypes_s_set.patch |
| 2010年06月10日 23:03:41 | vstinner | set | files: + ctypes_conversion.patch |
| 2010年06月10日 23:03:25 | vstinner | create | |