Skip to content

Commit 5eb3593

Browse files
committed
now using pgSequenceFast_Check and tuple check simplifications
1 parent b2c1cde commit 5eb3593

File tree

1 file changed

+6
-21
lines changed

1 file changed

+6
-21
lines changed

src_c/surface.c

Lines changed: 6 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -2167,21 +2167,13 @@ surf_fblits(pgSurfaceObject *self, PyObject *const *args, Py_ssize_t nargs)
21672167
blit_sequence = args[0];
21682168

21692169
/* Fast path for Lists or Tuples */
2170-
if (PyList_Check(blit_sequence) || PyTuple_Check(blit_sequence)) {
2171-
Py_ssize_t i, sequence_len;
2172-
PyObject **sequence_items;
2173-
sequence_items = PySequence_Fast_ITEMS(blit_sequence);
2174-
sequence_len = PySequence_Fast_GET_SIZE(blit_sequence);
2175-
for (i = 0; i < sequence_len; i++) {
2170+
if (pgSequenceFast_Check(blit_sequence)) {
2171+
Py_ssize_t i;
2172+
PyObject **sequence_items = PySequence_Fast_ITEMS(blit_sequence);
2173+
for (i = 0; i < PySequence_Fast_GET_SIZE(blit_sequence); i++) {
21762174
/* Check that the item is a tuple of length 2 */
21772175
item = sequence_items[i];
2178-
if (PyTuple_Check(item)) {
2179-
if (PyTuple_GET_SIZE(item) != 2) {
2180-
error = FBLITS_ERR_TUPLE_REQUIRED;
2181-
goto on_error;
2182-
}
2183-
}
2184-
else {
2176+
if (!PyTuple_Check(item) || PyTuple_GET_SIZE(item) != 2) {
21852177
error = FBLITS_ERR_TUPLE_REQUIRED;
21862178
goto on_error;
21872179
}
@@ -2228,14 +2220,7 @@ surf_fblits(pgSurfaceObject *self, PyObject *const *args, Py_ssize_t nargs)
22282220
else if (PyIter_Check(blit_sequence)) {
22292221
while ((item = PyIter_Next(blit_sequence))) {
22302222
/* Check that the item is a tuple of length 2 */
2231-
if (PyTuple_Check(item)) {
2232-
if (PyTuple_GET_SIZE(item) != 2) {
2233-
error = FBLITS_ERR_TUPLE_REQUIRED;
2234-
Py_DECREF(item);
2235-
goto on_error;
2236-
}
2237-
}
2238-
else {
2223+
if (!PyTuple_Check(item) || PyTuple_GET_SIZE(item) != 2) {
22392224
error = FBLITS_ERR_TUPLE_REQUIRED;
22402225
Py_DECREF(item);
22412226
goto on_error;

0 commit comments

Comments
 (0)