/pidgin/main: 1c33866c1ae9: irc: Use new purple_gio_graceful_clo...
Mike Ruprecht <[email protected]> Sun, 28 Aug 2016 23:58:01 -0400
| Newsgroups | gmane.comp.gnome.gaim.cvs |
|---|---|
| Message-ID | <[email protected]> |
Changeset: 1c33866c1ae9f85090cc50bde6753b5915e9b445 Author: Mike Ruprecht <[email protected]> Date: 2016-08-26 00:00 -0500 Branch: default URL: https://hg.pidgin.im/pidgin/main/rev/1c33866c1ae9 Description: irc: Use new purple_gio_graceful_close() function This fixes an assertion in the GTlsConnectionGnutls object by closing connections more nicely. See purple_gio_graceful_close() and the commit it was added in for more details. diffstat: libpurple/protocols/irc/irc.c | 20 ++++++++------------ 1 files changed, 8 insertions(+), 12 deletions(-) diffs (40 lines): diff --git a/libpurple/protocols/irc/irc.c b/libpurple/protocols/irc/irc.c --- a/libpurple/protocols/irc/irc.c +++ b/libpurple/protocols/irc/irc.c @@ -32,6 +32,7 @@ #include "notify.h" #include "protocol.h" #include "plugins.h" +#include "purple-gio.h" #include "tls-certificate.h" #include "util.h" #include "version.h" @@ -460,21 +461,16 @@ static void irc_close(PurpleConnection * g_clear_object(&irc->cancellable); } + if (irc->conn != NULL) { + purple_gio_graceful_close(G_IO_STREAM(irc->conn), + G_INPUT_STREAM(irc->input), + G_OUTPUT_STREAM(irc->output)); + } + g_clear_object(&irc->input); g_clear_object(&irc->output); + g_clear_object(&irc->conn); - if (irc->conn != NULL) { - GError *error = NULL; - - if (!g_io_stream_close(G_IO_STREAM(irc->conn), NULL, &error)) { - purple_debug_warning("irc", - "Error closing connection: %s", - error->message); - g_clear_error(&error); - } - - g_clear_object(&irc->conn); - } if (irc->timer) purple_timeout_remove(irc->timer); g_hash_table_destroy(irc->cmds); _______________________________________________ Commits mailing list [email protected] https://pidgin.im/cgi-bin/mailman/listinfo/commits