Use glib for all allocations

- Removes need to check for malloc failure
- Removes need for NULL checks on free
- Adds checks for integer overflows
- Removes some extra memset calls
- Removes chance of mixing libc and glib malloc/free
This commit is contained in:
TingPing
2014-12-28 06:37:25 -05:00
parent c4cb1b25ec
commit 83032b1aa3
46 changed files with 796 additions and 1082 deletions

View File

@@ -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