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