Skip to content

Commit 576adb5

Browse files
committed
make cheap
1 parent b1e147a commit 576adb5

1 file changed

Lines changed: 11 additions & 11 deletions

File tree

‎Modules/_collectionsmodule.c‎

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -175,17 +175,11 @@ struct dequeobject {
175175

176176
static inline block *
177177
newblock(dequeobject *deque) {
178-
block *b;
179178
if (deque->numfreeblocks) {
180179
deque->numfreeblocks--;
181180
return deque->freeblocks[deque->numfreeblocks];
182181
}
183-
b = PyMem_Malloc(sizeof(block));
184-
if (b != NULL) {
185-
return b;
186-
}
187-
PyErr_NoMemory();
188-
return NULL;
182+
return PyMem_Malloc(sizeof(block));
189183
}
190184

191185
static inline void
@@ -212,6 +206,7 @@ deque_new(PyTypeObject *type, PyObject *args, PyObject *kwds)
212206

213207
b = newblock(deque);
214208
if (b == NULL) {
209+
PyErr_NoMemory();
215210
Py_DECREF(deque);
216211
return NULL;
217212
}
@@ -343,6 +338,7 @@ deque_append_lock_held(dequeobject *deque, PyObject *item, Py_ssize_t maxlen)
343338
if (deque->rightindex == BLOCKLEN - 1) {
344339
block *b = newblock(deque);
345340
if (b == NULL) {
341+
PyErr_NoMemory();
346342
Py_DECREF(item);
347343
return -1;
348344
}
@@ -392,6 +388,7 @@ deque_appendleft_lock_held(dequeobject *deque, PyObject *item,
392388
if (deque->leftindex == 0) {
393389
block *b = newblock(deque);
394390
if (b == NULL) {
391+
PyErr_NoMemory();
395392
Py_DECREF(item);
396393
return -1;
397394
}
@@ -744,9 +741,7 @@ deque_clear(PyObject *self)
744741
adversary could cause it to never terminate).
745742
*/
746743

747-
PyObject *old_exc = PyErr_GetRaisedException();
748744
b = newblock(deque);
749-
PyErr_SetRaisedException(old_exc);
750745
if (b == NULL) {
751746
goto alternate_method;
752747
}
@@ -858,6 +853,7 @@ deque_inplace_repeat_impl(dequeobject *deque, Py_ssize_t n)
858853
if (deque->rightindex == BLOCKLEN - 1) {
859854
block *b = newblock(deque);
860855
if (b == NULL) {
856+
PyErr_NoMemory();
861857
Py_SET_SIZE(deque, Py_SIZE(deque) + i);
862858
return NULL;
863859
}
@@ -978,8 +974,10 @@ _deque_rotate(dequeobject *deque, Py_ssize_t n)
978974
if (leftindex == 0) {
979975
if (b == NULL) {
980976
b = newblock(deque);
981-
if (b == NULL)
977+
if (b == NULL) {
978+
PyErr_NoMemory();
982979
goto done;
980+
}
983981
}
984982
b->rightlink = leftblock;
985983
CHECK_END(leftblock->leftlink);
@@ -1022,8 +1020,10 @@ _deque_rotate(dequeobject *deque, Py_ssize_t n)
10221020
if (rightindex == BLOCKLEN - 1) {
10231021
if (b == NULL) {
10241022
b = newblock(deque);
1025-
if (b == NULL)
1023+
if (b == NULL) {
1024+
PyErr_NoMemory();
10261025
goto done;
1026+
}
10271027
}
10281028
b->leftlink = rightblock;
10291029
CHECK_END(rightblock->rightlink);

0 commit comments

Comments
 (0)