bpo-45355: More use of sizeof(_Py_CODEUNIT) (GH-28720)

This commit is contained in:
Serhiy Storchaka 2021-10-04 14:11:26 +03:00 committed by GitHub
parent 9be930f9b1
commit 252b7bcb23
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 9 additions and 13 deletions

View file

@ -656,15 +656,13 @@ _PyCode_Addr2Offset(PyCodeObject* co, int addrq)
if (co->co_columntable == Py_None || addrq < 0) {
return -1;
}
if (addrq % 2 == 1) {
--addrq;
}
if (addrq >= PyBytes_GET_SIZE(co->co_columntable)) {
addrq /= sizeof(_Py_CODEUNIT);
if (addrq*2 >= PyBytes_GET_SIZE(co->co_columntable)) {
return -1;
}
unsigned char* bytes = (unsigned char*)PyBytes_AS_STRING(co->co_columntable);
return bytes[addrq] - 1;
return bytes[addrq*2] - 1;
}
int
@ -673,15 +671,13 @@ _PyCode_Addr2EndOffset(PyCodeObject* co, int addrq)
if (co->co_columntable == Py_None || addrq < 0) {
return -1;
}
if (addrq % 2 == 0) {
++addrq;
}
if (addrq >= PyBytes_GET_SIZE(co->co_columntable)) {
addrq /= sizeof(_Py_CODEUNIT);
if (addrq*2+1 >= PyBytes_GET_SIZE(co->co_columntable)) {
return -1;
}
unsigned char* bytes = (unsigned char*)PyBytes_AS_STRING(co->co_columntable);
return bytes[addrq] - 1;
return bytes[addrq*2+1] - 1;
}
void