diff options
| author | Victor Stinner <victor.stinner@haypocalc.com> | 2010-08-16 22:03:11 +0000 | 
|---|---|---|
| committer | Victor Stinner <victor.stinner@haypocalc.com> | 2010-08-16 22:03:11 +0000 | 
| commit | ef8d95c4987cc5dd358e718c992c6bb629380702 (patch) | |
| tree | d2a587c813ca20d453608e309d393e5829cd2b1a /Objects/unicodeobject.c | |
| parent | 405038ac1c49f8d02e43d9542e70bc3beb2820c1 (diff) | |
| download | cpython-git-ef8d95c4987cc5dd358e718c992c6bb629380702.tar.gz | |
Issue #9425: Create Py_UNICODE_strncmp() function
The code is based on strncmp() of the libiberty library,
function in the public domain.
Diffstat (limited to 'Objects/unicodeobject.c')
| -rw-r--r-- | Objects/unicodeobject.c | 17 | 
1 files changed, 17 insertions, 0 deletions
diff --git a/Objects/unicodeobject.c b/Objects/unicodeobject.c index 676c693040..9fd342bf0d 100644 --- a/Objects/unicodeobject.c +++ b/Objects/unicodeobject.c @@ -9986,6 +9986,23 @@ Py_UNICODE_strcmp(const Py_UNICODE *s1, const Py_UNICODE *s2)      return 0;  } +int +Py_UNICODE_strncmp(const Py_UNICODE *s1, const Py_UNICODE *s2, size_t n) +{ +    register Py_UNICODE u1, u2; +    for (; n != 0; n--) { +        u1 = *s1; +        u2 = *s2; +        if (u1 != u2) +            return (u1 < u2) ? -1 : +1; +        if (u1 == '\0') +            return 0; +        s1++; +        s2++; +    } +    return 0; +} +  Py_UNICODE*  Py_UNICODE_strchr(const Py_UNICODE *s, Py_UNICODE c)  {  | 
