busybox/libbb/trim.c
<<
>>
Prefs
   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 tarball for details.
   9 */
  10
  11#include "libbb.h"
  12
  13void FAST_FUNC trim(char *s)
  14{
  15        size_t len = strlen(s);
  16        size_t lws;
  17
  18        /* trim trailing whitespace */
  19        while (len && isspace(s[len-1]))
  20                --len;
  21
  22        /* trim leading whitespace */
  23        if (len) {
  24                lws = strspn(s, " \n\r\t\v");
  25                if (lws) {
  26                        len -= lws;
  27                        memmove(s, s + lws, len);
  28                }
  29        }
  30        s[len] = '\0';
  31}
  32