diff options
Diffstat (limited to 'src/common/proto-irc.c')
-rw-r--r-- | src/common/proto-irc.c | 10 |
1 files changed, 3 insertions, 7 deletions
diff --git a/src/common/proto-irc.c b/src/common/proto-irc.c index d5a8fc04..d3adef86 100644 --- a/src/common/proto-irc.c +++ b/src/common/proto-irc.c @@ -1481,13 +1481,10 @@ irc_inline (server *serv, char *buf, int len) char *type, *text; char *word[PDIWORDS+1]; char *word_eol[PDIWORDS+1]; - char pdibuf_static[522]; /* 1 line can potentially be 512*6 in utf8 */ - char *pdibuf = pdibuf_static; + char *pdibuf; message_tags_data tags_data = MESSAGE_TAGS_DATA_INIT; - /* need more than 522? fall back to malloc */ - if (len >= sizeof (pdibuf_static)) - pdibuf = malloc (len + 1); + pdibuf = g_malloc (len + 1); sess = serv->front_session; @@ -1566,8 +1563,7 @@ irc_inline (server *serv, char *buf, int len) } xit: - if (pdibuf != pdibuf_static) - free (pdibuf); + g_free (pdibuf); } void |