diff options
author | Hiroki Hattori <seagull.kamome@gmail.com> | 2008-02-24 02:57:34 +0900 |
---|---|---|
committer | Lars Hjemli <hjemli@gmail.com> | 2008-02-23 20:11:59 +0100 |
commit | eacde43d7184452e1fdc90b982b531f1f5239923 (patch) | |
tree | d2cc9342fd96a7c5a7287b708d958631a446d274 | |
parent | CGIT 0.7.2 (diff) | |
download | cgit-pink-eacde43d7184452e1fdc90b982b531f1f5239923.tar.gz cgit-pink-eacde43d7184452e1fdc90b982b531f1f5239923.zip |
Fix segfault
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
Diffstat (limited to '')
-rw-r--r-- | html.c | 20 |
1 files changed, 5 insertions, 15 deletions
diff --git a/html.c b/html.c index 6c9cc8b..d531c20 100644 --- a/html.c +++ b/html.c @@ -48,9 +48,7 @@ void html_txt(char *txt) while(t && *t){ int c = *t; if (c=='<' || c=='>' || c=='&') { - *t = '\0'; - html(txt); - *t = c; + write(htmlfd, txt, t - txt); if (c=='>') html(">"); else if (c=='<') @@ -71,9 +69,7 @@ void html_ntxt(int len, char *txt) while(t && *t && len--){ int c = *t; if (c=='<' || c=='>' || c=='&') { - *t = '\0'; - html(txt); - *t = c; + write(htmlfd, txt, t - txt); if (c=='>') html(">"); else if (c=='<') @@ -84,12 +80,8 @@ void html_ntxt(int len, char *txt) } t++; } - if (t!=txt) { - char c = *t; - *t = '\0'; - html(txt); - *t = c; - } + if (t!=txt) + write(htmlfd, txt, t - txt); if (len<0) html("..."); } @@ -100,9 +92,7 @@ void html_attr(char *txt) while(t && *t){ int c = *t; if (c=='<' || c=='>' || c=='\'') { - *t = '\0'; - html(txt); - *t = c; + write(htmlfd, txt, t - txt); if (c=='>') html(">"); else if (c=='<') |