diff options
author | Lennart Poettering <lennart@poettering.net> | 2011-08-01 01:18:33 +0200 |
---|---|---|
committer | Lennart Poettering <lennart@poettering.net> | 2011-08-01 01:18:33 +0200 |
commit | 57a8eca84a1eda99c8cfb63889fa300ba982cb77 (patch) | |
tree | bc1270f0ae2f51f4efc20e6786b780bc59867a15 /src | |
parent | d937fbbd97760d4d1a59dc0fa6f3000e57a96998 (diff) |
util: optimize strstrip() a bit
Diffstat (limited to 'src')
-rw-r--r-- | src/util.c | 13 |
1 files changed, 5 insertions, 8 deletions
diff --git a/src/util.c b/src/util.c index cbfac6ec3b..1a61a26046 100644 --- a/src/util.c +++ b/src/util.c @@ -1411,21 +1411,18 @@ int reset_all_signal_handlers(void) { } char *strstrip(char *s) { - char *e, *l = NULL; + char *e; /* Drops trailing whitespace. Modifies the string in * place. Returns pointer to first non-space character */ s += strspn(s, WHITESPACE); - for (e = s; *e; e++) - if (!strchr(WHITESPACE, *e)) - l = e; + for (e = strchr(s, 0); e > s; e --) + if (!strchr(WHITESPACE, e[-1])) + break; - if (l) - *(l+1) = 0; - else - *s = 0; + *e = 0; return s; } |