Merged revisions 65780,65782,65785,65809,65812,65834,65846,65859,65861 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
........
r65780 | antoine.pitrou | 2008-08-17 15:15:07 -0500 (Sun, 17 Aug 2008) | 3 lines
#3580: fix a failure in test_os
........
r65782 | benjamin.peterson | 2008-08-17 15:33:45 -0500 (Sun, 17 Aug 2008) | 1 line
set svn:executable on a script
........
r65785 | amaury.forgeotdarc | 2008-08-17 16:05:18 -0500 (Sun, 17 Aug 2008) | 3 lines
Fix a refleak in bytearray.split and bytearray.rsplit, detected by
regrtest.py -R:: test_bytes
........
r65809 | nick.coghlan | 2008-08-18 07:42:46 -0500 (Mon, 18 Aug 2008) | 1 line
Belated NEWS entry for r65642
........
r65812 | nick.coghlan | 2008-08-18 08:32:19 -0500 (Mon, 18 Aug 2008) | 1 line
Fix typo
........
r65834 | amaury.forgeotdarc | 2008-08-18 14:23:47 -0500 (Mon, 18 Aug 2008) | 4 lines
#2234 distutils failed with mingw binutils 2.18.50.20080109.
Be less strict when parsing these version numbers,
they don't necessarily follow the python numbering scheme.
........
r65846 | georg.brandl | 2008-08-18 18:09:49 -0500 (Mon, 18 Aug 2008) | 2 lines
Fix grammar.
........
r65859 | thomas.heller | 2008-08-19 12:47:13 -0500 (Tue, 19 Aug 2008) | 2 lines
Fix strange character in the docstring.
........
r65861 | benjamin.peterson | 2008-08-19 12:59:23 -0500 (Tue, 19 Aug 2008) | 1 line
get unparse to at least unparse its self
........
diff --git a/Objects/bytearrayobject.c b/Objects/bytearrayobject.c
index dfe0a86..da11249 100644
--- a/Objects/bytearrayobject.c
+++ b/Objects/bytearrayobject.c
@@ -2215,8 +2215,11 @@
PyBuffer_Release(&vsub);
return NULL;
}
- if (n == 1)
- return split_char(s, len, sub[0], maxsplit);
+ if (n == 1) {
+ list = split_char(s, len, sub[0], maxsplit);
+ PyBuffer_Release(&vsub);
+ return list;
+ }
list = PyList_New(PREALLOC_SIZE(maxsplit));
if (list == NULL) {
@@ -2447,8 +2450,11 @@
PyBuffer_Release(&vsub);
return NULL;
}
- else if (n == 1)
- return rsplit_char(s, len, sub[0], maxsplit);
+ else if (n == 1) {
+ list = rsplit_char(s, len, sub[0], maxsplit);
+ PyBuffer_Release(&vsub);
+ return list;
+ }
list = PyList_New(PREALLOC_SIZE(maxsplit));
if (list == NULL) {