diff options
author | James Bursa <james@netsurf-browser.org> | 2003-10-07 21:34:39 +0000 |
---|---|---|
committer | James Bursa <james@netsurf-browser.org> | 2003-10-07 21:34:39 +0000 |
commit | bbcdf13fe04bc56a3671db581df40307e65b81da (patch) | |
tree | 075633c4419aace71bb76295f303f9eefffe874a /utils/utils.c | |
parent | 4ccdd4c7d275b3734ea11adec95a0d28d3ddfda6 (diff) | |
download | netsurf-bbcdf13fe04bc56a3671db581df40307e65b81da.tar.gz netsurf-bbcdf13fe04bc56a3671db581df40307e65b81da.tar.bz2 |
[project @ 2003-10-07 21:34:39 by bursa]
Implement white-space property.
svn path=/import/netsurf/; revision=348
Diffstat (limited to 'utils/utils.c')
-rw-r--r-- | utils/utils.c | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/utils/utils.c b/utils/utils.c index a62f7256a..bc912fdc7 100644 --- a/utils/utils.c +++ b/utils/utils.c @@ -129,6 +129,31 @@ char * tolat1(xmlChar * s) return d0; } +char * tolat1_pre(xmlChar * s) +{ + unsigned int length = strlen((char*) s); + char *d = xcalloc(length + 1, sizeof(char)); + char *d0 = d; + int u, chars; + + while (*s != 0) { + chars = length; + u = xmlGetUTF8Char((unsigned char *) s, &chars); + s += chars; + length -= chars; + if (u == 0x09 || u == 0x0a || u == 0x0d || + (0x20 <= u && u <= 0x7f) || + (0xa0 <= u && u <= 0xff)) + *d = u; + else + *d = '?'; + d++; + } + *d = 0; + + return d0; +} + char *squash_tolat1(xmlChar *s) { /* TODO: optimize */ |