Mercurial > pidgin
changeset 30199:24ed54cf50b9
jabber: Don't use a static array when it might not be sufficient.
JabberData:cid may come from the network, in which case the one I changed
here would result in truncation.
author | Paul Aurich <paul@darkrain42.org> |
---|---|
date | Thu, 17 Jun 2010 01:45:44 +0000 |
parents | 0c41b5c08cdc |
children | fcc36743697c |
files | libpurple/protocols/jabber/data.c |
diffstat | 1 files changed, 5 insertions(+), 3 deletions(-) [+] |
line wrap: on
line diff
--- a/libpurple/protocols/jabber/data.c Thu Jun 17 01:30:06 2010 +0000 +++ b/libpurple/protocols/jabber/data.c Thu Jun 17 01:45:44 2010 +0000 @@ -43,7 +43,7 @@ { JabberData *data; gchar *checksum; - gchar cid[256]; + gchar cid[256]; /* "Big enough" for a SHA1 hex hash value */ g_return_val_if_fail(rawdata != NULL, NULL); g_return_val_if_fail(size > 0, NULL); @@ -191,15 +191,17 @@ jabber_data_get_xhtml_im(const JabberData *data, const gchar *alt) { xmlnode *img; - char src[128]; + char *src; g_return_val_if_fail(data != NULL, NULL); g_return_val_if_fail(alt != NULL, NULL); img = xmlnode_new("img"); xmlnode_set_attrib(img, "alt", alt); - g_snprintf(src, sizeof(src), "cid:%s", data->cid); + + src = g_strconcat("cid:", data->cid, NULL); xmlnode_set_attrib(img, "src", src); + g_free(src); return img; }