summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Include/unicodeobject.h4
-rw-r--r--Objects/unicodeobject.c13
2 files changed, 17 insertions, 0 deletions
diff --git a/Include/unicodeobject.h b/Include/unicodeobject.h
index 6448cdab80..7f5e8fdacf 100644
--- a/Include/unicodeobject.h
+++ b/Include/unicodeobject.h
@@ -1622,6 +1622,10 @@ PyAPI_FUNC(Py_UNICODE*) Py_UNICODE_strchr(
const Py_UNICODE *s, Py_UNICODE c
);
+PyAPI_FUNC(Py_UNICODE*) Py_UNICODE_strrchr(
+ const Py_UNICODE *s, Py_UNICODE c
+ );
+
#ifdef __cplusplus
}
#endif
diff --git a/Objects/unicodeobject.c b/Objects/unicodeobject.c
index f2d666de12..478f9a976e 100644
--- a/Objects/unicodeobject.c
+++ b/Objects/unicodeobject.c
@@ -9965,6 +9965,19 @@ Py_UNICODE_strchr(const Py_UNICODE *s, Py_UNICODE c)
return NULL;
}
+Py_UNICODE*
+Py_UNICODE_strrchr(const Py_UNICODE *s, Py_UNICODE c)
+{
+ const Py_UNICODE *p;
+ p = s + Py_UNICODE_strlen(s);
+ while (p != s) {
+ p--;
+ if (*p == c)
+ return (Py_UNICODE*)p;
+ }
+ return NULL;
+}
+
#ifdef __cplusplus
}