@@ -442,11 +442,19 @@ bytearray_iconcat(PyObject *op, PyObject *other)
442442 return ret ;
443443}
444444
445+ /*[clinic input]
446+ @critical_section
447+ bytearray.__mul__ as bytearray_repeat
448+
449+ count: Py_ssize_t
450+ /
451+ [clinic start generated code]*/
452+
445453static PyObject *
446- bytearray_repeat_lock_held (PyObject * op , Py_ssize_t count )
454+ bytearray_repeat_impl (PyByteArrayObject * self , Py_ssize_t count )
455+ /*[clinic end generated code: output=0889e9ebbe61890a input=3363528e6db1f39b]*/
447456{
448- _Py_CRITICAL_SECTION_ASSERT_OBJECT_LOCKED (op );
449- PyByteArrayObject * self = _PyByteArray_CAST (op );
457+ _Py_CRITICAL_SECTION_ASSERT_OBJECT_LOCKED (self );
450458 if (count < 0 ) {
451459 count = 0 ;
452460 }
@@ -464,21 +472,19 @@ bytearray_repeat_lock_held(PyObject *op, Py_ssize_t count)
464472 return (PyObject * )result ;
465473}
466474
467- static PyObject *
468- bytearray_repeat (PyObject * op , Py_ssize_t count )
469- {
470- PyObject * ret ;
471- Py_BEGIN_CRITICAL_SECTION (op );
472- ret = bytearray_repeat_lock_held (op , count );
473- Py_END_CRITICAL_SECTION ();
474- return ret ;
475- }
475+ /*[clinic input]
476+ @critical_section
477+ bytearray.__imul__ as bytearray_irepeat
478+
479+ count: Py_ssize_t
480+ /
481+ [clinic start generated code]*/
476482
477483static PyObject *
478- bytearray_irepeat_lock_held (PyObject * op , Py_ssize_t count )
484+ bytearray_irepeat_impl (PyByteArrayObject * self , Py_ssize_t count )
485+ /*[clinic end generated code: output=4cfee919b3489219 input=e12991c89153490b]*/
479486{
480- _Py_CRITICAL_SECTION_ASSERT_OBJECT_LOCKED (op );
481- PyByteArrayObject * self = _PyByteArray_CAST (op );
487+ _Py_CRITICAL_SECTION_ASSERT_OBJECT_LOCKED (self );
482488 if (count < 0 ) {
483489 count = 0 ;
484490 }
@@ -501,16 +507,6 @@ bytearray_irepeat_lock_held(PyObject *op, Py_ssize_t count)
501507 return Py_NewRef (self );
502508}
503509
504- static PyObject *
505- bytearray_irepeat (PyObject * op , Py_ssize_t count )
506- {
507- PyObject * ret ;
508- Py_BEGIN_CRITICAL_SECTION (op );
509- ret = bytearray_irepeat_lock_held (op , count );
510- Py_END_CRITICAL_SECTION ();
511- return ret ;
512- }
513-
514510static PyObject *
515511bytearray_getitem_lock_held (PyObject * op , Py_ssize_t i )
516512{
0 commit comments