[Python-checkins] cpython (2.7): Issue #13617: Document that the result PyUnicode_AsUnicode() and

victor.stinner python-checkins at python.org
Sun Dec 18 19:38:02 CET 2011


http://hg.python.org/cpython/rev/1c4d9534263e
changeset:   74054:1c4d9534263e
branch:      2.7
user:        Victor Stinner <victor.stinner at haypocalc.com>
date:        Sun Dec 18 19:39:53 2011 +0100
summary:
  Issue #13617: Document that the result PyUnicode_AsUnicode() and
PyUnicode_AsWideChar() may contain embedded null characters.

Patch written by Arnaud Calmettes.

files:
  Doc/ACKS.txt          |   1 +
  Doc/c-api/unicode.rst |  11 ++++++++---
  2 files changed, 9 insertions(+), 3 deletions(-)


diff --git a/Doc/ACKS.txt b/Doc/ACKS.txt
--- a/Doc/ACKS.txt
+++ b/Doc/ACKS.txt
@@ -33,6 +33,7 @@
    * Keith Briggs
    * Ian Bruntlett
    * Lee Busby
+   * Arnaud Calmettes
    * Lorenzo M. Catucci
    * Carl Cerecke
    * Mauro Cicognini
diff --git a/Doc/c-api/unicode.rst b/Doc/c-api/unicode.rst
--- a/Doc/c-api/unicode.rst
+++ b/Doc/c-api/unicode.rst
@@ -327,8 +327,11 @@
 
 .. cfunction:: Py_UNICODE* PyUnicode_AsUnicode(PyObject *unicode)
 
-   Return a read-only pointer to the Unicode object's internal :ctype:`Py_UNICODE`
-   buffer, *NULL* if *unicode* is not a Unicode object.
+   Return a read-only pointer to the Unicode object's internal
+   :c:type:`Py_UNICODE` buffer, *NULL* if *unicode* is not a Unicode object.
+   Note that the resulting :c:type:`Py_UNICODE*` string may contain embedded
+   null characters, which would cause the string to be truncated when used in
+   most C functions.
 
 
 .. cfunction:: Py_ssize_t PyUnicode_GetSize(PyObject *unicode)
@@ -391,7 +394,9 @@
    copied or -1 in case of an error.  Note that the resulting :ctype:`wchar_t`
    string may or may not be 0-terminated.  It is the responsibility of the caller
    to make sure that the :ctype:`wchar_t` string is 0-terminated in case this is
-   required by the application.
+   required by the application. Also, note that the :c:type:`wchar_t*` string
+   might contain null characters, which would cause the string to be truncated
+   when used with most C functions.
 
    .. versionchanged:: 2.5
       This function returned an :ctype:`int` type and used an :ctype:`int`

-- 
Repository URL: http://hg.python.org/cpython


More information about the Python-checkins mailing list