mirror of
https://github.com/python/cpython
synced 2024-10-14 10:48:24 +00:00
bpo-39573: Use Py_TYPE() macro in object.c (GH-18398)
Replace direct acccess to PyVarObject.ob_size with usage of the Py_SIZE() macro.
This commit is contained in:
parent
bec4186c67
commit
c65b320a95
|
@ -1041,13 +1041,11 @@ _PyObject_GetDictPtr(PyObject *obj)
|
|||
if (dictoffset == 0)
|
||||
return NULL;
|
||||
if (dictoffset < 0) {
|
||||
Py_ssize_t tsize;
|
||||
size_t size;
|
||||
|
||||
tsize = ((PyVarObject *)obj)->ob_size;
|
||||
if (tsize < 0)
|
||||
Py_ssize_t tsize = Py_SIZE(obj);
|
||||
if (tsize < 0) {
|
||||
tsize = -tsize;
|
||||
size = _PyObject_VAR_SIZE(tp, tsize);
|
||||
}
|
||||
size_t size = _PyObject_VAR_SIZE(tp, tsize);
|
||||
|
||||
dictoffset += (long)size;
|
||||
_PyObject_ASSERT(obj, dictoffset > 0);
|
||||
|
@ -1219,13 +1217,11 @@ _PyObject_GenericGetAttrWithDict(PyObject *obj, PyObject *name,
|
|||
dictoffset = tp->tp_dictoffset;
|
||||
if (dictoffset != 0) {
|
||||
if (dictoffset < 0) {
|
||||
Py_ssize_t tsize;
|
||||
size_t size;
|
||||
|
||||
tsize = ((PyVarObject *)obj)->ob_size;
|
||||
if (tsize < 0)
|
||||
Py_ssize_t tsize = Py_SIZE(obj);
|
||||
if (tsize < 0) {
|
||||
tsize = -tsize;
|
||||
size = _PyObject_VAR_SIZE(tp, tsize);
|
||||
}
|
||||
size_t size = _PyObject_VAR_SIZE(tp, tsize);
|
||||
_PyObject_ASSERT(obj, size <= PY_SSIZE_T_MAX);
|
||||
|
||||
dictoffset += (Py_ssize_t)size;
|
||||
|
|
Loading…
Reference in a new issue