Victor Stinner
c759f3e7ec
Ooops, avoid a division by zero in unicode_repeat()
2011-10-01 03:09:58 +02:00
Victor Stinner
d3a83d5eb3
PyUnicode_FromObject() ensures that its output is a ready string
2011-10-01 03:09:33 +02:00
Victor Stinner
67ca64ce54
I want a super fast 'a' * n!
...
* Optimize unicode_repeat() for a special case with memset()
* Simplify integer overflow checking; remove the second check because
PyUnicode_New() already does it and uses a smaller limit (Py_ssize_t vs
size_t)
2011-10-01 02:47:29 +02:00
Victor Stinner
4584a5ba1a
PyUnicode_CHARACTER_SIZE(): add a reference to PyUnicode_KIND_SIZE()
2011-10-01 02:39:37 +02:00
Victor Stinner
e9a2935c1f
Fix usage of PyUnicode_READY in unicodeobject.c
2011-10-01 02:14:59 +02:00
Victor Stinner
12bab6dace
Remove private substring() function, reuse public PyUnicode_Substring()
...
* PyUnicode_Substring() now fails if start or end is invalid
* PyUnicode_Substring() reuses PyUnicode_Copy() for non-exact strings
2011-10-01 01:53:49 +02:00
Victor Stinner
c841e7db1f
Optimize PyUnicode_Copy(): don't recompute maximum character
2011-10-01 01:34:32 +02:00
Victor Stinner
bec0fda264
Remove commented code: str+=str is no more super-optimized
2011-10-01 01:26:08 +02:00
Victor Stinner
2219e0a37e
PyUnicode_FromObject() reuses PyUnicode_Copy()
...
* PyUnicode_Copy() is faster than substring()
* Fix also a compiler warning
2011-10-01 01:16:59 +02:00
Victor Stinner
9e5bd6c544
pyexat uses the new Unicode API
2011-10-01 01:05:40 +02:00
Ezio Melotti
2a1e926d63
Fix ResourceWarnings in makeunicodedata.py.
2011-09-30 08:46:25 +03:00
Victor Stinner
034f6cf10c
Add PyUnicode_Copy() function, include it to the public API
2011-09-30 02:26:44 +02:00
Victor Stinner
b153615008
PyUnicode_CopyCharacters() uses exceptions instead of assertions
...
Call PyErr_BadInternalCall() if inputs are not unicode strings.
2011-09-30 02:26:10 +02:00
Victor Stinner
1fe99a2ea7
Fix a compiler warning
2011-09-30 01:55:49 +02:00
Victor Stinner
1fbcaeff55
Fix array.array('u') constructor
2011-09-30 01:54:04 +02:00
Victor Stinner
eb5657a0c5
posix module catches PyUnicode_AsUnicode() failure
...
* Replace PyUnicode_AS_UNICODE by PyUnicode_AsUnicode, PyUnicode_AS_UNICODE is
no more a real macro
* Replace Py_UNICODE by wchar_t in code specific to Windows
2011-09-30 01:44:27 +02:00
Victor Stinner
8dba4e004f
array module uses the new Unicode API
...
* Use Py_UCS4* buffer instead of Py_UNICODE*
* Use "I" or "L" format, instead of "u" format
2011-09-30 00:51:10 +02:00
Victor Stinner
f8bb7d02f6
array module stores the typecode in a char, instead of Py_UNICODE
2011-09-30 00:03:59 +02:00
Victor Stinner
c806fdcd8b
raw_unicode_escape() uses the new Unicode API
2011-09-29 23:50:23 +02:00
Victor Stinner
121aab4ba1
Strip trailing spaces of _pickle.c
2011-09-29 23:40:53 +02:00
Victor Stinner
6364927cec
PyLocale_strxfrm() uses the new Unicode API
2011-09-29 23:32:06 +02:00
Victor Stinner
fe9a861e74
fileio_init() checks for failure on conversion to Py_UNICODE*
2011-09-29 23:19:04 +02:00
Victor Stinner
ef17f12a39
Fix test_codeccallbacks for Windows: check size of wchar_t, not sys.maxunicode
2011-09-29 20:01:55 +02:00
Victor Stinner
182d90d9ee
Fix test_codecs for Windows: check size of wchar_t, not sys.maxunicode
2011-09-29 19:53:55 +02:00
Charles-François Natali
734e159b12
Merge.
2011-09-29 19:51:46 +02:00
Charles-François Natali
9624a764ff
Issue #13058 : ossaudiodev: fix a file descriptor leak on error. Patch by Thomas
...
Jarosch.
2011-09-29 19:49:37 +02:00
Charles-François Natali
5a4a109694
Issue #13058 : ossaudiodev: fix a file descriptor leak on error. Patch by Thomas
...
Jarosch.
2011-09-29 19:46:37 +02:00
Victor Stinner
d8f6510acc
_PyUnicode_Ready() cannot be used on ready strings anymore
...
* Change its prototype: PyObject* instead of PyUnicodeoObject*.
* Remove an old assertion, the result of PyUnicode_READY (_PyUnicode_Ready)
must be checked instead
2011-09-29 19:43:17 +02:00
Victor Stinner
bc8b81bc4e
Move _PyUnicode_UTF8() and _PyUnicode_UTF8_LENGTH() outside unicodeobject.h
...
Move these macros to unicodeobject.c
2011-09-29 19:31:34 +02:00
Victor Stinner
a0702ab1fe
Add a note in PyUnicode_CopyCharacters() doc: it doesn't write null character
...
Cleanup also the code (avoid the goto).
2011-09-29 14:14:38 +02:00
Martin v. Löwis
ff1ef074ed
Re-enable test.
2011-09-29 13:49:10 +02:00
Martin v. Löwis
22970667da
Port normalization to new API.
2011-09-29 13:39:38 +02:00
Victor Stinner
f0ddadcf2e
Rename Py_BUILD_ASSERT to Py_BUILD_ASSERT_EXPR
...
To make it clearer that Py_BUILD_ASSERT_EXPR(cond) cannot be used as
assert(cond).
2011-09-29 12:43:18 +02:00
Victor Stinner
573696a9ca
pymacro.h: Inline _Py_ARRAY_LENGTH_CHECK() and add http://ccodearchive.net/
2011-09-29 12:12:39 +02:00
Ezio Melotti
6f1ba077c0
Merge heads.
2011-09-29 08:36:23 +03:00
Ezio Melotti
397546ac2f
Update and reorganize the whatsnew entry for PEP 393.
2011-09-29 08:34:36 +03:00
Victor Stinner
6430fd56b4
Fix hex_digit_to_int() prototype: expect Py_UCS4, not Py_UNICODE
2011-09-29 04:02:13 +02:00
Victor Stinner
d9c563e84d
modsupport.c reuses Py_UNICODE_strlen()
2011-09-29 04:01:43 +02:00
Ezio Melotti
9d3579b7d6
Remove now useless redefinition of chr/ord for narrow builds in test_multibytecodec_support.py.
2011-09-29 04:36:38 +03:00
Victor Stinner
f7b8cb605d
_io.textio: fix character type, use Py_UCS4 instead of Py_UNICODE
2011-09-29 03:28:17 +02:00
Victor Stinner
0058b8603f
_sre: don't use Py_UNICODE anymore
...
* Downcasting from Py_UCS4 to Py_UNICODE is wrong is Py_UNICODE is 16-bit
wchar_t
* Remove old special case in getstring(), unicode is now handled separetely
2011-09-29 03:27:47 +02:00
Victor Stinner
7d637ab870
Complete What's New in 3.3 about PEP 393
2011-09-29 02:56:16 +02:00
Ezio Melotti
f503673c4d
Move UCS4-specific tests with the "normal" tests.
2011-09-29 03:14:56 +03:00
Victor Stinner
dfb866d127
Enhance Py_ARRAY_LENGTH(): fail at build time if the argument is not an array
...
Move other various macros to pymcacro.h
Thanks Rusty Russell for having written these amazing C macros!
2011-09-29 01:12:24 +02:00
Victor Stinner
2bdc7f591b
Move code related to compile from Python.h to compile.h
2011-09-29 01:04:08 +02:00
Victor Stinner
639418812f
Use the new Py_ARRAY_LENGTH macro
2011-09-29 00:42:28 +02:00
Victor Stinner
b9dcffb51e
Fix 'c' format of PyUnicode_Format()
...
formatbuf is now an array of Py_UCS4, not of Py_UNICODE
2011-09-29 00:39:24 +02:00
Victor Stinner
c17f540b7a
Oops, fix my previous commit: unicode => to
2011-09-29 00:16:58 +02:00
Victor Stinner
b15d4d899c
PyUnicode_CopyCharacters() marks the string as dirty (reset the hash)
2011-09-28 23:59:20 +02:00
Victor Stinner
f5ca1a21a5
PyUnicode_CopyCharacters() fails if 'to' has more than 1 reference
2011-09-28 23:54:59 +02:00