summaryrefslogtreecommitdiff
path: root/Objects/bytesobject.c
diff options
context:
space:
mode:
Diffstat (limited to 'Objects/bytesobject.c')
-rw-r--r--Objects/bytesobject.c14
1 files changed, 10 insertions, 4 deletions
diff --git a/Objects/bytesobject.c b/Objects/bytesobject.c
index 52479ca41d..bfb4ff8fd3 100644
--- a/Objects/bytesobject.c
+++ b/Objects/bytesobject.c
@@ -1163,8 +1163,11 @@ string_split(PyBytesObject *self, PyObject *args)
PyBuffer_Release(&vsub);
return NULL;
}
- else if (n == 1)
- return split_char(self, len, sub[0], maxsplit);
+ else if (n == 1) {
+ list = split_char(self, len, sub[0], maxsplit);
+ PyBuffer_Release(&vsub);
+ return list;
+ }
list = PyList_New(PREALLOC_SIZE(maxsplit));
if (list == NULL) {
@@ -1379,8 +1382,11 @@ string_rsplit(PyBytesObject *self, PyObject *args)
PyBuffer_Release(&vsub);
return NULL;
}
- else if (n == 1)
- return rsplit_char(self, len, sub[0], maxsplit);
+ else if (n == 1) {
+ list = rsplit_char(self, len, sub[0], maxsplit);
+ PyBuffer_Release(&vsub);
+ return list;
+ }
list = PyList_New(PREALLOC_SIZE(maxsplit));
if (list == NULL) {