mirror of https://github.com/python/cpython
Fix for SF# 1701409: segfault in c_char_p of ctypes. The repr output
of c_char_p and c_wchar_p has changed as a sideeffect.
This commit is contained in:
parent
ad0cfe3dd7
commit
fa704c6ade
|
@ -226,6 +226,14 @@ _check_size(c_char)
|
||||||
|
|
||||||
class c_char_p(_SimpleCData):
|
class c_char_p(_SimpleCData):
|
||||||
_type_ = "z"
|
_type_ = "z"
|
||||||
|
if _os.name == "nt":
|
||||||
|
def __repr__(self):
|
||||||
|
if not windll.kernel32.IsBadStringPtrA(self, -1):
|
||||||
|
return "%s(%r)" % (self.__class__.__name__, self.value)
|
||||||
|
return "%s(%s)" % (self.__class__.__name__, cast(self, c_void_p).value)
|
||||||
|
else:
|
||||||
|
def __repr__(self):
|
||||||
|
return "%s(%s)" % (self.__class__.__name__, cast(self, c_void_p).value)
|
||||||
_check_size(c_char_p, "P")
|
_check_size(c_char_p, "P")
|
||||||
|
|
||||||
class c_void_p(_SimpleCData):
|
class c_void_p(_SimpleCData):
|
||||||
|
|
|
@ -234,6 +234,10 @@ Core and builtins
|
||||||
Library
|
Library
|
||||||
-------
|
-------
|
||||||
|
|
||||||
|
- Bug #1701409: Fix a segfault in printing ctypes.c_char_p and
|
||||||
|
ctypes.c_wchar_p when they point to an invalid location. As a
|
||||||
|
sideeffect the representation of these instances has changed.
|
||||||
|
|
||||||
- tarfile.py: Added "exclude" keyword argument to TarFile.add().
|
- tarfile.py: Added "exclude" keyword argument to TarFile.add().
|
||||||
|
|
||||||
- Bug #1734723: Fix repr.Repr() so it doesn't ignore the maxtuple attribute.
|
- Bug #1734723: Fix repr.Repr() so it doesn't ignore the maxtuple attribute.
|
||||||
|
|
Loading…
Reference in New Issue