summaryrefslogtreecommitdiff
path: root/libbb/trim.c (plain)
blob: 16cb4fbb07f256794e1047041d710d3b923dd816
1/* vi: set sw=4 ts=4: */
2/*
3 * Utility routines.
4 *
5 * Copyright (C) many different people.
6 * If you wrote this, please acknowledge your work.
7 *
8 * Licensed under GPLv2 or later, see file LICENSE in this source tree.
9 */
10
11#include "libbb.h"
12
13void FAST_FUNC trim(char *s)
14{
15 size_t len = strlen(s);
16
17 /* trim trailing whitespace */
18 while (len && isspace(s[len-1]))
19 --len;
20
21 /* trim leading whitespace */
22 if (len) {
23 char *nws = skip_whitespace(s);
24 if ((nws - s) != 0) {
25 len -= (nws - s);
26 memmove(s, nws, len);
27 }
28 }
29 s[len] = '\0';
30}
31