aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--lib/http_client.c3
-rw-r--r--protocols/jabber/s5bytestream.c6
-rw-r--r--protocols/jabber/si.c3
3 files changed, 12 insertions, 0 deletions
diff --git a/lib/http_client.c b/lib/http_client.c
index 18c393f8..590b8143 100644
--- a/lib/http_client.c
+++ b/lib/http_client.c
@@ -210,7 +210,10 @@ static gboolean http_incoming_data( gpointer data, int source, b_input_condition
int st;
if( req->inpa > 0 )
+ {
b_event_remove( req->inpa );
+ req->inpa = 0;
+ }
if( req->ssl )
{
diff --git a/protocols/jabber/s5bytestream.c b/protocols/jabber/s5bytestream.c
index f4618cef..6b22d95f 100644
--- a/protocols/jabber/s5bytestream.c
+++ b/protocols/jabber/s5bytestream.c
@@ -122,10 +122,16 @@ void jabber_bs_free_transfer( file_transfer_t *ft) {
}
if ( tf->watch_in )
+ {
b_event_remove( tf->watch_in );
+ tf->watch_in = 0;
+ }
if( tf->watch_out )
+ {
b_event_remove( tf->watch_out );
+ tf->watch_out = 0;
+ }
g_free( bt->pseudoadr );
diff --git a/protocols/jabber/si.c b/protocols/jabber/si.c
index f5f3b2fe..f3060fff 100644
--- a/protocols/jabber/si.c
+++ b/protocols/jabber/si.c
@@ -34,7 +34,10 @@ void jabber_si_free_transfer( file_transfer_t *ft)
struct jabber_data *jd = tf->ic->proto_data;
if ( tf->watch_in )
+ {
b_event_remove( tf->watch_in );
+ tf->watch_in = 0;
+ }
jd->filetransfers = g_slist_remove( jd->filetransfers, tf );