diff options
Diffstat (limited to 'Objects/bytesobject.c')
-rw-r--r-- | Objects/bytesobject.c | 22 |
1 files changed, 21 insertions, 1 deletions
diff --git a/Objects/bytesobject.c b/Objects/bytesobject.c index 66fd2ec..2f7e0a6 100644 --- a/Objects/bytesobject.c +++ b/Objects/bytesobject.c @@ -5,6 +5,7 @@ #include "Python.h" #include "pycore_abstract.h" // _PyIndex_Check() #include "pycore_bytes_methods.h" // _Py_bytes_startswith() +#include "pycore_bytesobject.h" // struct _Py_bytes_state #include "pycore_call.h" // _PyObject_CallNoArgs() #include "pycore_format.h" // F_LJUST #include "pycore_initconfig.h" // _PyStatus_OK() @@ -3086,7 +3087,7 @@ error: PyStatus -_PyBytes_Init(PyInterpreterState *interp) +_PyBytes_InitGlobalObjects(PyInterpreterState *interp) { struct _Py_bytes_state *state = &interp->bytes; if (bytes_create_empty_string_singleton(state) < 0) { @@ -3096,6 +3097,25 @@ _PyBytes_Init(PyInterpreterState *interp) } +PyStatus +_PyBytes_InitTypes(PyInterpreterState *interp) +{ + if (!_Py_IsMainInterpreter(interp)) { + return _PyStatus_OK(); + } + + if (PyType_Ready(&PyBytes_Type) < 0) { + return _PyStatus_ERR("Can't initialize bytes type"); + } + + if (PyType_Ready(&PyBytesIter_Type) < 0) { + return _PyStatus_ERR("Can't initialize bytes iterator type"); + } + + return _PyStatus_OK(); +} + + void _PyBytes_Fini(PyInterpreterState *interp) { |