diff options
| author | Keno Fischer <keno@juliacomputing.com> | 2018-06-29 12:32:10 +0200 |
|---|---|---|
| committer | Greg Kurz <groug@kaod.org> | 2018-06-29 12:32:10 +0200 |
| commit | 5c99fa375da1c7cc4a42a93e002e98b9fb34754b (patch) | |
| tree | 96dd1387a3a911dfb5ef5d97a4775028b87ba560 /util/cutils.c | |
| parent | 609ef9f451759151d0bfe7c3843410ab94d68f18 (diff) | |
| download | focaccia-qemu-5c99fa375da1c7cc4a42a93e002e98b9fb34754b.tar.gz focaccia-qemu-5c99fa375da1c7cc4a42a93e002e98b9fb34754b.zip | |
cutils: Provide strchrnul
strchrnul is a GNU extension and thus unavailable on a number of targets. In the review for a commit removing strchrnul from 9p, I was asked to create a qemu_strchrnul helper to factor out this functionality. Do so, and use it in a number of other places in the code base that inlined the replacement pattern in a place where strchrnul could be used. Signed-off-by: Keno Fischer <keno@juliacomputing.com> Acked-by: Greg Kurz <groug@kaod.org> Reviewed-by: Markus Armbruster <armbru@redhat.com> Signed-off-by: Greg Kurz <groug@kaod.org>
Diffstat (limited to 'util/cutils.c')
| -rw-r--r-- | util/cutils.c | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/util/cutils.c b/util/cutils.c index 0de69e6db4..9205e09031 100644 --- a/util/cutils.c +++ b/util/cutils.c @@ -545,6 +545,21 @@ int qemu_strtou64(const char *nptr, const char **endptr, int base, } /** + * Searches for the first occurrence of 'c' in 's', and returns a pointer + * to the trailing null byte if none was found. + */ +#ifndef HAVE_STRCHRNUL +const char *qemu_strchrnul(const char *s, int c) +{ + const char *e = strchr(s, c); + if (!e) { + e = s + strlen(s); + } + return e; +} +#endif + +/** * parse_uint: * * @s: String to parse |