diff options
author | Victor Stinner <victor.stinner@haypocalc.com> | 2012-02-24 23:43:27 (GMT) |
---|---|---|
committer | Victor Stinner <victor.stinner@haypocalc.com> | 2012-02-24 23:43:27 (GMT) |
commit | abc649ddbe1894107218eb4a332a0476dab78a23 (patch) | |
tree | e3a8556118de0506964b3b58b62974216ba8fc55 /Objects | |
parent | c6fbf47b28173c7bbac9a9e19201876d945859d3 (diff) | |
download | cpython-abc649ddbe1894107218eb4a332a0476dab78a23.zip cpython-abc649ddbe1894107218eb4a332a0476dab78a23.tar.gz cpython-abc649ddbe1894107218eb4a332a0476dab78a23.tar.bz2 |
Issue #14107: fix bigmem tests on str.capitalize(), str.swapcase() and
str.title(). Compute correctly how much memory is required for the test
(memuse).
Diffstat (limited to 'Objects')
-rw-r--r-- | Objects/unicodeobject.c | 24 |
1 files changed, 18 insertions, 6 deletions
diff --git a/Objects/unicodeobject.c b/Objects/unicodeobject.c index 7cc6b1b..d73145b 100644 --- a/Objects/unicodeobject.c +++ b/Objects/unicodeobject.c @@ -10628,7 +10628,10 @@ unicode_title(PyObject *self) { if (PyUnicode_READY(self) == -1) return NULL; - return case_operation(self, do_title); + if (PyUnicode_IS_ASCII(self)) + return ascii_case_operation(self, ascii_do_title); + else + return case_operation(self, do_title); } PyDoc_STRVAR(capitalize__doc__, @@ -10644,7 +10647,10 @@ unicode_capitalize(PyObject *self) return NULL; if (PyUnicode_GET_LENGTH(self) == 0) return unicode_result_unchanged(self); - return case_operation(self, do_capitalize); + if (PyUnicode_IS_ASCII(self)) + return ascii_case_operation(self, ascii_do_capitalize); + else + return case_operation(self, do_capitalize); } PyDoc_STRVAR(casefold__doc__, @@ -10659,7 +10665,8 @@ unicode_casefold(PyObject *self) return NULL; if (PyUnicode_IS_ASCII(self)) return ascii_upper_or_lower(self, 1); - return case_operation(self, do_casefold); + else + return case_operation(self, do_casefold); } @@ -11893,7 +11900,8 @@ unicode_lower(PyObject *self) return NULL; if (PyUnicode_IS_ASCII(self)) return ascii_upper_or_lower(self, 1); - return case_operation(self, do_lower); + else + return case_operation(self, do_lower); } #define LEFTSTRIP 0 @@ -12784,7 +12792,10 @@ unicode_swapcase(PyObject *self) { if (PyUnicode_READY(self) == -1) return NULL; - return case_operation(self, do_swapcase); + if (PyUnicode_IS_ASCII(self)) + return ascii_case_operation(self, ascii_do_swapcase); + else + return case_operation(self, do_swapcase); } PyDoc_STRVAR(maketrans__doc__, @@ -12934,7 +12945,8 @@ unicode_upper(PyObject *self) return NULL; if (PyUnicode_IS_ASCII(self)) return ascii_upper_or_lower(self, 0); - return case_operation(self, do_upper); + else + return case_operation(self, do_upper); } PyDoc_STRVAR(zfill__doc__, |