]> git.pld-linux.org Git - packages/irssi.git/blobdiff - irssi-invalid_free.patch
- release 5 (by relup.sh)
[packages/irssi.git] / irssi-invalid_free.patch
index f5d2bcf86ad4486f6c2279cecf35859fd1396a7b..fbfa4ff37aa9412c7ab6cb9fe945754301e5b01b 100644 (file)
@@ -1,8 +1,5 @@
-after call of g_slist_remove() the `pos` points to released area,
-so dereferencing pos->data isn't acceptable.
-
---- irssi-0.8.10/src/irc/dcc/dcc.c.orig        2005-10-19 04:13:31.000000000 +0200
-+++ irssi-0.8.10/src/irc/dcc/dcc.c     2006-05-02 22:33:11.000000000 +0200
+--- irssi-0.8.11/src/irc/dcc/dcc.c     2007-06-07 01:49:35.928848024 +0200
++++ irssi-0.8.11/src/irc/dcc/dcc.c-new 2007-06-07 01:52:47.442154599 +0200
 @@ -55,11 +55,13 @@
  void dcc_unregister_type(const char *type)
  {
@@ -11,8 +8,8 @@ so dereferencing pos->data isn't acceptable.
  
        pos = gslist_find_string(dcc_types, type);
        if (pos != NULL) {
--                dcc_types = g_slist_remove(dcc_types, pos->data);
 -              g_free(pos->data);
+-                dcc_types = g_slist_remove(dcc_types, pos->data);
 +              data = pos->data;
 +              dcc_types = g_slist_remove(dcc_types, data);
 +              g_free(data);
This page took 0.047161 seconds and 4 git commands to generate.