diff options
| author | Wilmer van der Gaast <wilmer@gaast.net> | 2012-04-12 22:37:12 +0100 | 
|---|---|---|
| committer | Wilmer van der Gaast <wilmer@gaast.net> | 2012-04-12 22:37:12 +0100 | 
| commit | 6d23c684bbe3d4b919dc75fe39ee8bf0f5fbb916 (patch) | |
| tree | 753a12b2e9d3daa4564cda5419a7b02857f5bec9 /protocols/skype/skype.c | |
| parent | 632f3d45178f0d2810df934c32828a00912900de (diff) | |
| parent | 58b65b33cf6df50b89c3a0cc43ea226c208c0d1e (diff) | |
Merging ssl_disconnect() fix from meh/vmiklos.
Diffstat (limited to 'protocols/skype/skype.c')
| -rw-r--r-- | protocols/skype/skype.c | 7 | 
1 files changed, 6 insertions, 1 deletions
| diff --git a/protocols/skype/skype.c b/protocols/skype/skype.c index 248c9da0..6515a801 100644 --- a/protocols/skype/skype.c +++ b/protocols/skype/skype.c @@ -1143,8 +1143,9 @@ static gboolean skype_read_callback(gpointer data, gint fd,  		}  		g_strfreev(lines);  	} else if (st == 0 || (st < 0 && !sockerr_again())) { -		closesocket(sd->fd); +		ssl_disconnect(sd->ssl);  		sd->fd = -1; +		sd->ssl = NULL;  		imcb_error(ic, "Error while reading from server");  		imc_logout(ic, TRUE); @@ -1233,6 +1234,10 @@ static void skype_logout(struct im_connection *ic)  		struct skype_group *sg = (struct skype_group *)g_list_nth_data(sd->groups, i);  		skype_group_free(sg, FALSE);  	} + +	if (sd->ssl) +		ssl_disconnect(sd->ssl); +  	g_free(sd->username);  	g_free(sd->handle);  	g_free(sd); | 
