Mercurial > pidgin
diff libpurple/protocols/silc/ops.c @ 16391:24bbd7e46bfe
Change the imgstore and by extension, then the buddy icon code to take over
the references to icon data instead of calling g_memdup(). This eliminates
g_memdup()ing and g_free()ing in ~50% of the callers. For the rest, it's no
worse (they now do a g_memdup() instead of the core) and they may be able to
be modified in the future to avoid that.
| author | Richard Laager <rlaager@wiktel.com> |
|---|---|
| date | Wed, 25 Apr 2007 22:23:29 +0000 |
| parents | 391a79778f89 |
| children | 5e47b3427b28 |
line wrap: on
line diff
--- a/libpurple/protocols/silc/ops.c Wed Apr 25 21:48:56 2007 +0000 +++ b/libpurple/protocols/silc/ops.c Wed Apr 25 22:23:29 2007 +0000 @@ -161,7 +161,7 @@ if (channel && !convo) goto out; - imgid = purple_imgstore_add_with_id(data, data_len, ""); + imgid = purple_imgstore_add_with_id(g_memdup(data, data_len), data_len, ""); if (imgid) { cflags |= PURPLE_MESSAGE_IMAGES | PURPLE_MESSAGE_RECV; g_snprintf(tmp, sizeof(tmp), "<IMG ID=\"%d\">", imgid);
