Mercurial > libavutil.hg
changeset 860:536c2e94defa libavutil
Add av_stristr() function
This is a case-insensitive version of strstr().
author | mru |
---|---|
date | Sat, 06 Mar 2010 19:41:22 +0000 |
parents | d0230d2b1696 |
children | a8444182f978 |
files | avstring.c avstring.h |
diffstat | 2 files changed, 26 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/avstring.c Sat Mar 06 14:24:59 2010 +0000 +++ b/avstring.c Sat Mar 06 19:41:22 2010 +0000 @@ -48,6 +48,19 @@ return !*pfx; } +char *av_stristr(const char *s1, const char *s2) +{ + if (!*s2) + return s1; + + do { + if (av_stristart(s1, s2, NULL)) + return s1; + } while (*s1++); + + return NULL; +} + size_t av_strlcpy(char *dst, const char *src, size_t size) { size_t len = 0;
--- a/avstring.h Sat Mar 06 14:24:59 2010 +0000 +++ b/avstring.h Sat Mar 06 19:41:22 2010 +0000 @@ -47,6 +47,19 @@ int av_stristart(const char *str, const char *pfx, const char **ptr); /** + * Locate the first case-independent occurrence in the string s1 of + * the string s2. A zero-length string s2 is considered to match at + * the start of s1. + * + * This function is a case-insensitive version of the standard strstr(). + * + * @param s1 string to search in + * @param s2 string to search for + * @return pointer to the located match within s1 or a null pointer if no match + */ +char *av_stristr(const char *s1, const char *s2); + +/** * Copy the string src to dst, but no more than size - 1 bytes, and * null-terminate dst. *