diff options
| author | Vicent Marti <tanoku@gmail.com> | 2014-09-04 18:38:14 +0200 | 
|---|---|---|
| committer | Vicent Marti <tanoku@gmail.com> | 2014-09-09 03:39:16 +0200 | 
| commit | 543c2c94d71adee42c7bd2f8027d75c87ed8120d (patch) | |
| tree | db9fb0931f043ba4ebb7c1d8853e2a64d34cdc3c /src/html | |
| parent | 3ec98f55bd78572195f355a2ccb891df1c91b798 (diff) | |
Rename to strbuf
Diffstat (limited to 'src/html')
| -rw-r--r-- | src/html/houdini.h | 22 | ||||
| -rw-r--r-- | src/html/houdini_href_e.c | 12 | ||||
| -rw-r--r-- | src/html/houdini_html_e.c | 10 | ||||
| -rw-r--r-- | src/html/html.c | 98 | 
4 files changed, 71 insertions, 71 deletions
| diff --git a/src/html/houdini.h b/src/html/houdini.h index 31fe917..1e54d20 100644 --- a/src/html/houdini.h +++ b/src/html/houdini.h @@ -25,17 +25,17 @@ extern "C" {  #define HOUDINI_ESCAPED_SIZE(x) (((x) * 12) / 10)  #define HOUDINI_UNESCAPED_SIZE(x) (x) -extern int houdini_escape_html(gh_buf *ob, const uint8_t *src, size_t size); -extern int houdini_escape_html0(gh_buf *ob, const uint8_t *src, size_t size, int secure); -extern int houdini_unescape_html(gh_buf *ob, const uint8_t *src, size_t size); -extern int houdini_escape_xml(gh_buf *ob, const uint8_t *src, size_t size); -extern int houdini_escape_uri(gh_buf *ob, const uint8_t *src, size_t size); -extern int houdini_escape_url(gh_buf *ob, const uint8_t *src, size_t size); -extern int houdini_escape_href(gh_buf *ob, const uint8_t *src, size_t size); -extern int houdini_unescape_uri(gh_buf *ob, const uint8_t *src, size_t size); -extern int houdini_unescape_url(gh_buf *ob, const uint8_t *src, size_t size); -extern int houdini_escape_js(gh_buf *ob, const uint8_t *src, size_t size); -extern int houdini_unescape_js(gh_buf *ob, const uint8_t *src, size_t size); +extern int houdini_escape_html(strbuf *ob, const uint8_t *src, size_t size); +extern int houdini_escape_html0(strbuf *ob, const uint8_t *src, size_t size, int secure); +extern int houdini_unescape_html(strbuf *ob, const uint8_t *src, size_t size); +extern int houdini_escape_xml(strbuf *ob, const uint8_t *src, size_t size); +extern int houdini_escape_uri(strbuf *ob, const uint8_t *src, size_t size); +extern int houdini_escape_url(strbuf *ob, const uint8_t *src, size_t size); +extern int houdini_escape_href(strbuf *ob, const uint8_t *src, size_t size); +extern int houdini_unescape_uri(strbuf *ob, const uint8_t *src, size_t size); +extern int houdini_unescape_url(strbuf *ob, const uint8_t *src, size_t size); +extern int houdini_escape_js(strbuf *ob, const uint8_t *src, size_t size); +extern int houdini_unescape_js(strbuf *ob, const uint8_t *src, size_t size);  #ifdef __cplusplus  } diff --git a/src/html/houdini_href_e.c b/src/html/houdini_href_e.c index b2a7d79..12456ce 100644 --- a/src/html/houdini_href_e.c +++ b/src/html/houdini_href_e.c @@ -49,7 +49,7 @@ static const char HREF_SAFE[] = {  };  int -houdini_escape_href(gh_buf *ob, const uint8_t *src, size_t size) +houdini_escape_href(strbuf *ob, const uint8_t *src, size_t size)  {  	static const uint8_t hex_chars[] = "0123456789ABCDEF";  	size_t  i = 0, org; @@ -63,7 +63,7 @@ houdini_escape_href(gh_buf *ob, const uint8_t *src, size_t size)  			i++;  		if (likely(i > org)) -			gh_buf_put(ob, src + org, i - org); +			strbuf_put(ob, src + org, i - org);  		/* escaping */  		if (i >= size) @@ -73,14 +73,14 @@ houdini_escape_href(gh_buf *ob, const uint8_t *src, size_t size)  		/* amp appears all the time in URLs, but needs  		 * HTML-entity escaping to be inside an href */  		case '&': -			gh_buf_puts(ob, "&"); +			strbuf_puts(ob, "&");  			break;  		/* the single quote is a valid URL character  		 * according to the standard; it needs HTML  		 * entity escaping too */  		case '\'': -			gh_buf_puts(ob, "'"); +			strbuf_puts(ob, "'");  			break;  		/* the space can be escaped to %20 or a plus @@ -89,7 +89,7 @@ houdini_escape_href(gh_buf *ob, const uint8_t *src, size_t size)  		 * when building GET strings */  #if 0  		case ' ': -			gh_buf_putc(ob, '+'); +			strbuf_putc(ob, '+');  			break;  #endif @@ -97,7 +97,7 @@ houdini_escape_href(gh_buf *ob, const uint8_t *src, size_t size)  		default:  			hex_str[1] = hex_chars[(src[i] >> 4) & 0xF];  			hex_str[2] = hex_chars[src[i] & 0xF]; -			gh_buf_put(ob, hex_str, 3); +			strbuf_put(ob, hex_str, 3);  		}  		i++; diff --git a/src/html/houdini_html_e.c b/src/html/houdini_html_e.c index 95b6c41..f2e86fe 100644 --- a/src/html/houdini_html_e.c +++ b/src/html/houdini_html_e.c @@ -45,7 +45,7 @@ static const char *HTML_ESCAPES[] = {  };  int -houdini_escape_html0(gh_buf *ob, const uint8_t *src, size_t size, int secure) +houdini_escape_html0(strbuf *ob, const uint8_t *src, size_t size, int secure)  {  	size_t  i = 0, org, esc = 0; @@ -55,7 +55,7 @@ houdini_escape_html0(gh_buf *ob, const uint8_t *src, size_t size, int secure)  			i++;  		if (i > org) -			gh_buf_put(ob, src + org, i - org); +			strbuf_put(ob, src + org, i - org);  		/* escaping */  		if (unlikely(i >= size)) @@ -63,9 +63,9 @@ houdini_escape_html0(gh_buf *ob, const uint8_t *src, size_t size, int secure)  		/* The forward slash is only escaped in secure mode */  		if ((src[i] == '/' || src[i] == '\'') && !secure) { -			gh_buf_putc(ob, src[i]); +			strbuf_putc(ob, src[i]);  		} else { -			gh_buf_puts(ob, HTML_ESCAPES[esc]); +			strbuf_puts(ob, HTML_ESCAPES[esc]);  		}  		i++; @@ -75,7 +75,7 @@ houdini_escape_html0(gh_buf *ob, const uint8_t *src, size_t size, int secure)  }  int -houdini_escape_html(gh_buf *ob, const uint8_t *src, size_t size) +houdini_escape_html(strbuf *ob, const uint8_t *src, size_t size)  {  	return houdini_escape_html0(ob, src, size, 1);  } diff --git a/src/html/html.c b/src/html/html.c index 41b8fda..a9356dd 100644 --- a/src/html/html.c +++ b/src/html/html.c @@ -10,7 +10,7 @@  // Functions to convert block and inline lists to HTML strings. -static void escape_html(gh_buf *dest, const unsigned char *source, int length) +static void escape_html(strbuf *dest, const unsigned char *source, int length)  {  	if (length < 0)  		length = strlen((char *)source); @@ -18,7 +18,7 @@ static void escape_html(gh_buf *dest, const unsigned char *source, int length)  	houdini_escape_html0(dest, source, (size_t)length, 0);  } -static void escape_href(gh_buf *dest, const unsigned char *source, int length) +static void escape_href(strbuf *dest, const unsigned char *source, int length)  {  	if (length < 0)  		length = strlen((char *)source); @@ -26,14 +26,14 @@ static void escape_href(gh_buf *dest, const unsigned char *source, int length)  	houdini_escape_href(dest, source, (size_t)length);  } -static inline void cr(gh_buf *html) +static inline void cr(strbuf *html)  {  	if (html->size && html->ptr[html->size - 1] != '\n') -		gh_buf_putc(html, '\n'); +		strbuf_putc(html, '\n');  }  // Convert a block list to HTML.  Returns 0 on success, and sets result. -void blocks_to_html(gh_buf *html, block *b, bool tight) +void blocks_to_html(strbuf *html, block *b, bool tight)  {  	struct ListData *data; @@ -48,25 +48,25 @@ void blocks_to_html(gh_buf *html, block *b, bool tight)  					inlines_to_html(html, b->inline_content);  				} else {  					cr(html); -					gh_buf_puts(html, "<p>"); +					strbuf_puts(html, "<p>");  					inlines_to_html(html, b->inline_content); -					gh_buf_puts(html, "</p>\n"); +					strbuf_puts(html, "</p>\n");  				}  				break;  			case block_quote:  				cr(html); -				gh_buf_puts(html, "<blockquote>\n"); +				strbuf_puts(html, "<blockquote>\n");  				blocks_to_html(html, b->children, false); -				gh_buf_puts(html, "</blockquote>\n"); +				strbuf_puts(html, "</blockquote>\n");  				break;  			case list_item:  				cr(html); -				gh_buf_puts(html, "<li>"); +				strbuf_puts(html, "<li>");  				blocks_to_html(html, b->children, tight); -				gh_buf_trim(html); /* TODO: rtrim */ -				gh_buf_puts(html, "</li>\n"); +				strbuf_trim(html); /* TODO: rtrim */ +				strbuf_puts(html, "</li>\n");  				break;  			case list: @@ -75,58 +75,58 @@ void blocks_to_html(gh_buf *html, block *b, bool tight)  				data = &(b->attributes.list_data);  				if (data->start > 1) { -					gh_buf_printf(html, "<%s start=\"%d\">\n", +					strbuf_printf(html, "<%s start=\"%d\">\n",  							data->list_type == bullet ? "ul" : "ol",  							data->start);  				} else { -					gh_buf_puts(html, data->list_type == bullet ? "<ul>\n" : "<ol>\n"); +					strbuf_puts(html, data->list_type == bullet ? "<ul>\n" : "<ol>\n");  				}  				blocks_to_html(html, b->children, data->tight); -				gh_buf_puts(html, data->list_type == bullet ? "</ul>" : "</ol>"); -				gh_buf_putc(html, '\n'); +				strbuf_puts(html, data->list_type == bullet ? "</ul>" : "</ol>"); +				strbuf_putc(html, '\n');  				break;  			case atx_header:  			case setext_header:  				cr(html); -				gh_buf_printf(html, "<h%d>", b->attributes.header_level); +				strbuf_printf(html, "<h%d>", b->attributes.header_level);  				inlines_to_html(html, b->inline_content); -				gh_buf_printf(html, "</h%d>\n", b->attributes.header_level); +				strbuf_printf(html, "</h%d>\n", b->attributes.header_level);  				break;  			case indented_code:  			case fenced_code:  				cr(html); -				gh_buf_puts(html, "<pre"); +				strbuf_puts(html, "<pre");  				if (b->tag == fenced_code) { -					gh_buf *info = &b->attributes.fenced_code_data.info; +					strbuf *info = &b->attributes.fenced_code_data.info; -					if (gh_buf_len(info) > 0) { -						int first_tag = gh_buf_strchr(info, ' ', 0); +					if (strbuf_len(info) > 0) { +						int first_tag = strbuf_strchr(info, ' ', 0);  						if (first_tag < 0) -							first_tag = gh_buf_len(info); +							first_tag = strbuf_len(info); -						gh_buf_puts(html, " class=\""); +						strbuf_puts(html, " class=\"");  						escape_html(html, info->ptr, first_tag); -						gh_buf_putc(html, '"'); +						strbuf_putc(html, '"');  					}  				} -				gh_buf_puts(html, "><code>"); +				strbuf_puts(html, "><code>");  				escape_html(html, b->string_content.ptr, b->string_content.size); -				gh_buf_puts(html, "</code></pre>\n"); +				strbuf_puts(html, "</code></pre>\n");  				break;  			case html_block: -				gh_buf_put(html, b->string_content.ptr, b->string_content.size); +				strbuf_put(html, b->string_content.ptr, b->string_content.size);  				break;  			case hrule: -				gh_buf_puts(html, "<hr />\n"); +				strbuf_puts(html, "<hr />\n");  				break;  			case reference_def: @@ -141,9 +141,9 @@ void blocks_to_html(gh_buf *html, block *b, bool tight)  }  // Convert an inline list to HTML.  Returns 0 on success, and sets result. -void inlines_to_html(gh_buf *html, inl* ils) +void inlines_to_html(strbuf *html, inl* ils)  { -	gh_buf scrap = GH_BUF_INIT; +	strbuf scrap = GH_BUF_INIT;  	while(ils != NULL) {  		switch(ils->tag) { @@ -152,70 +152,70 @@ void inlines_to_html(gh_buf *html, inl* ils)  				break;  			case INL_LINEBREAK: -				gh_buf_puts(html, "<br />\n"); +				strbuf_puts(html, "<br />\n");  				break;  			case INL_SOFTBREAK: -				gh_buf_putc(html, '\n'); +				strbuf_putc(html, '\n');  				break;  			case INL_CODE: -				gh_buf_puts(html, "<code>"); +				strbuf_puts(html, "<code>");  				escape_html(html, ils->content.literal.data, ils->content.literal.len); -				gh_buf_puts(html, "</code>"); +				strbuf_puts(html, "</code>");  				break;  			case INL_RAW_HTML:  			case INL_ENTITY: -				gh_buf_put(html, +				strbuf_put(html,  						ils->content.literal.data,  						ils->content.literal.len);  				break;  			case INL_LINK: -				gh_buf_puts(html, "<a href=\""); +				strbuf_puts(html, "<a href=\"");  				if (ils->content.linkable.url)  					escape_href(html, ils->content.linkable.url, -1);  				if (ils->content.linkable.title) { -					gh_buf_puts(html, "\" title=\""); +					strbuf_puts(html, "\" title=\"");  					escape_html(html, ils->content.linkable.title, -1);  				} -				gh_buf_puts(html, "\">"); +				strbuf_puts(html, "\">");  				inlines_to_html(html, ils->content.inlines); -				gh_buf_puts(html, "</a>"); +				strbuf_puts(html, "</a>");  				break;  			case INL_IMAGE: -				gh_buf_puts(html, "<img src=\""); +				strbuf_puts(html, "<img src=\"");  				if (ils->content.linkable.url)  					escape_href(html, ils->content.linkable.url, -1);  				inlines_to_html(&scrap, ils->content.inlines); -				gh_buf_puts(html, "\" alt=\""); +				strbuf_puts(html, "\" alt=\"");  				if (scrap.size)  					escape_html(html, scrap.ptr, scrap.size); -				gh_buf_clear(&scrap); +				strbuf_clear(&scrap);  				if (ils->content.linkable.title) { -					gh_buf_puts(html, "\" title=\""); +					strbuf_puts(html, "\" title=\"");  					escape_html(html, ils->content.linkable.title, -1);  				} -				gh_buf_puts(html, "\"/>"); +				strbuf_puts(html, "\"/>");  				break;  			case INL_STRONG: -				gh_buf_puts(html, "<strong>"); +				strbuf_puts(html, "<strong>");  				inlines_to_html(html, ils->content.inlines); -				gh_buf_puts(html, "</strong>"); +				strbuf_puts(html, "</strong>");  				break;  			case INL_EMPH: -				gh_buf_puts(html, "<em>"); +				strbuf_puts(html, "<em>");  				inlines_to_html(html, ils->content.inlines); -				gh_buf_puts(html, "</em>"); +				strbuf_puts(html, "</em>");  				break;  		}  		ils = ils->next; | 
