Fix unicode.rsplit()'s bug that ignores separater on the end of string when

using specialized splitter for 1 char sep.
This commit is contained in:
Hye-Shik Chang 2003-12-23 09:10:16 +00:00
parent 0490fe96d8
commit 7fc4cf57b8
2 changed files with 3 additions and 1 deletions

View File

@ -208,6 +208,8 @@ class CommonTest(unittest.TestCase):
self.checkequal(['a\x00b', 'c'], 'a\x00b\x00c', 'rsplit', '\x00', 1)
self.checkequal(['', ''], 'abcd', 'rsplit', 'abcd')
self.checkequal([u'a b', u'c', u'd'], 'a b c d', 'rsplit', u' ', 2)
self.checkequal(['', ' endcase'], '| endcase', 'rsplit', '|')
self.checkequal(['', ' endcase'], 'test endcase', 'rsplit', 'test')
def test_strip(self):
self.checkequal('hello', ' hello ', 'strip')

View File

@ -4294,7 +4294,7 @@ PyObject *rsplit_char(PyUnicodeObject *self,
} else
i--;
}
if (j >= 0) {
if (j >= -1) {
SPLIT_INSERT(self->str, 0, j + 1);
}
return list;