Commit c130af45 authored by Thomas Heller's avatar Thomas Heller

Merged revisions 55027 via svnmerge from

svn+ssh://pythondev@svn.python.org/python/trunk/Modules/_ctypes

........
  r55027 | thomas.heller | 2007-04-30 18:04:57 +0200 (Mo, 30 Apr 2007) | 8 lines

  When accessing the .value attribute of a c_wchar_p instance, and the
  instance does not point to a valid wchar_t zero-terminated string,
  raise a ValueError.  c_char_p does this already.

  The ValueError message now contains the correct pointer address.

  Will backport to release25-maint.
........
parent 88447dce
......@@ -1333,7 +1333,7 @@ z_get(void *ptr, unsigned size)
if (IsBadStringPtrA(*(char **)ptr, -1)) {
PyErr_Format(PyExc_ValueError,
"invalid string pointer %p",
ptr);
*(char **)ptr);
return NULL;
}
#endif
......@@ -1414,9 +1414,17 @@ Z_get(void *ptr, unsigned size)
{
wchar_t *p;
p = *(wchar_t **)ptr;
if (p)
if (p) {
#if defined(MS_WIN32) && !defined(_WIN32_WCE)
if (IsBadStringPtrW(*(wchar_t **)ptr, -1)) {
PyErr_Format(PyExc_ValueError,
"invalid string pointer %p",
*(wchar_t **)ptr);
return NULL;
}
#endif
return PyUnicode_FromWideChar(p, wcslen(p));
else {
} else {
Py_INCREF(Py_None);
return Py_None;
}
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment