aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDan Winship <danw@src.gnome.org>2001-09-09 00:34:21 +0800
committerDan Winship <danw@src.gnome.org>2001-09-09 00:34:21 +0800
commitf6a949c3494dae54458085196770cee70b7ad259 (patch)
treecf2fc74e790754d9fad84cb8c6a8feb572994fa4
parent1cf0994cec0d6504fafd8a56438939af88dd81df (diff)
downloadgsoc2013-evolution-f6a949c3494dae54458085196770cee70b7ad259.tar
gsoc2013-evolution-f6a949c3494dae54458085196770cee70b7ad259.tar.gz
gsoc2013-evolution-f6a949c3494dae54458085196770cee70b7ad259.tar.bz2
gsoc2013-evolution-f6a949c3494dae54458085196770cee70b7ad259.tar.lz
gsoc2013-evolution-f6a949c3494dae54458085196770cee70b7ad259.tar.xz
gsoc2013-evolution-f6a949c3494dae54458085196770cee70b7ad259.tar.zst
gsoc2013-evolution-f6a949c3494dae54458085196770cee70b7ad259.zip
Fix some broken calls to check_size that could result in memory corruption
* e-html-utils.c (e_text_to_html_full): Fix some broken calls to check_size that could result in memory corruption displaying short replies. svn path=/trunk/; revision=12705
-rw-r--r--e-util/ChangeLog6
-rw-r--r--e-util/e-html-utils.c6
2 files changed, 9 insertions, 3 deletions
diff --git a/e-util/ChangeLog b/e-util/ChangeLog
index b664b9a45c..bb0ebf0a21 100644
--- a/e-util/ChangeLog
+++ b/e-util/ChangeLog
@@ -1,3 +1,9 @@
+2001-09-08 Dan Winship <danw@ximian.com>
+
+ * e-html-utils.c (e_text_to_html_full): Fix some broken calls to
+ check_size that could result in memory corruption displaying short
+ replies.
+
2001-09-06 Dan Winship <danw@ximian.com>
* e-html-utils.c (e_text_to_html_full): Add E_TEXT_TO_HTML_CITE,
diff --git a/e-util/e-html-utils.c b/e-util/e-html-utils.c
index 03c1c36117..a2759f91a8 100644
--- a/e-util/e-html-utils.c
+++ b/e-util/e-html-utils.c
@@ -231,14 +231,14 @@ e_text_to_html_full (const char *input, unsigned int flags, guint32 color)
g_snprintf (font, 25, "<FONT COLOR=\"#%06x\">", color);
- check_size (&buffer, &buffer_size, out, 25);
+ out = check_size (&buffer, &buffer_size, out, 25);
out += sprintf (out, "%s", font);
colored = TRUE;
}
} else if (colored) {
gchar *no_font = "</FONT>";
- check_size (&buffer, &buffer_size, out, 9);
+ out = check_size (&buffer, &buffer_size, out, 9);
out += sprintf (out, "%s", no_font);
colored = FALSE;
}
@@ -247,7 +247,7 @@ e_text_to_html_full (const char *input, unsigned int flags, guint32 color)
if (*cur == '>' && !saw_citation)
cur++;
} else if (flags & E_TEXT_TO_HTML_CITE && col == 0) {
- check_size (&buffer, &buffer_size, out, 5);
+ out = check_size (&buffer, &buffer_size, out, 5);
out += sprintf (out, "&gt; ");
}