Xiang Zhang <angwe...@126.com> added the comment:

In my mind I don't think here is any problem. The code

val = PyBytes_FromStringAndSize (NULL, 20);
Py_SIZE(val) = 0;

doesn't create a zero length bytes object. A resizing I think should always 
means reorganizing the internal representation, including changing the size 
attribute. Using Py_SIZE won't trigger a full resizing. The code is not 
resizing but just breaks the internal representation and then leads to bugs. In 
C level, if you want, it's easy to muck Python objects. And exposing that much 
implementation details in documentation seems unnecessary.

----------
nosy: +xiang.zhang

_______________________________________
Python tracker <rep...@bugs.python.org>
<https://bugs.python.org/issue32431>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to