From f78fab56c779effaa4d859c99f8585ccf46f9033 Mon Sep 17 00:00:00 2001 From: James Bursa Date: Tue, 21 May 2002 21:27:29 +0000 Subject: [project @ 2002-05-21 21:27:29 by bursa] Add squash_whitespace(). svn path=/import/netsurf/; revision=17 --- utils/utils.c | 19 ++++++++++++++++++- utils/utils.h | 4 +++- 2 files changed, 21 insertions(+), 2 deletions(-) diff --git a/utils/utils.c b/utils/utils.c index a5df77f7b..8440c7b12 100644 --- a/utils/utils.c +++ b/utils/utils.c @@ -1,5 +1,5 @@ /** - * $Id: utils.c,v 1.1.1.1 2002/04/22 09:24:34 bursa Exp $ + * $Id: utils.c,v 1.2 2002/05/21 21:27:29 bursa Exp $ */ #include @@ -73,3 +73,20 @@ char * load(const char * const path) fclose(fp); return buf; } + +char * squash_whitespace(const char * s) +{ + char * c = malloc(strlen(s) + 1); + int i = 0, j = 0; + if (c == 0) die("Out of memory in squash_whitespace()"); + do { + if (isspace(s[i])) { + c[j++] = ' '; + while (s[i] != 0 && isspace(s[i])) + i++; + } + c[j++] = s[i++]; + } while (s[i - 1] != 0); + return c; +} + diff --git a/utils/utils.h b/utils/utils.h index ced14cb6f..445c7167e 100644 --- a/utils/utils.h +++ b/utils/utils.h @@ -1,5 +1,5 @@ /** - * $Id: utils.h,v 1.1.1.1 2002/04/22 09:24:34 bursa Exp $ + * $Id: utils.h,v 1.2 2002/05/21 21:27:29 bursa Exp $ */ void die(const char * const error); @@ -9,3 +9,5 @@ void * xcalloc(const size_t n, const size_t size); void * xrealloc(void * p, const size_t size); char * xstrdup(const char * const s); char * load(const char * const path); +char * squash_whitespace(const char * s); + -- cgit v1.2.3