2006-03-20 Mikael Hallendal <micke@imendio.com>
* loudmouth/lm-connection.c: Fixes LM-16.
(_lm_connection_failed_with_error):
- Call connection_do_close to remove sources.
(connection_do_close): Always set the connection state to CLOSED.
--- a/ChangeLog Mon Jan 02 14:22:04 2006 +0000
+++ b/ChangeLog Mon Mar 20 10:53:45 2006 +0000
@@ -1,3 +1,10 @@
+2006-03-20 Mikael Hallendal <micke@imendio.com>
+
+ * loudmouth/lm-connection.c: Fixes LM-16.
+ (_lm_connection_failed_with_error):
+ - Call connection_do_close to remove sources.
+ (connection_do_close): Always set the connection state to CLOSED.
+
2006-01-02 Mikael Hallendal <micke@imendio.com>
* MAINTAINERS: Added
--- a/loudmouth/lm-connection.c Mon Jan 02 14:22:04 2006 +0000
+++ b/loudmouth/lm-connection.c Mon Mar 20 10:53:45 2006 +0000
@@ -424,7 +424,7 @@
}
if (connect_data->current_addr == NULL) {
- connection->state = LM_CONNECTION_STATE_CLOSED;
+ connection_do_close (connection);
if (connection->open_cb && connection->open_cb->func) {
LmCallback *cb = connection->open_cb;
@@ -715,17 +715,17 @@
connection->fd = -1;
}
-
g_source_destroy (connection->incoming_source);
g_source_unref (connection->incoming_source);
if (!lm_connection_is_open (connection)) {
+ /* lm_connection_is_open is FALSE for state OPENING as well */
+ connection->state = LM_CONNECTION_STATE_CLOSED;
return;
}
connection->state = LM_CONNECTION_STATE_CLOSED;
-
if (connection->ssl) {
_lm_ssl_close (connection->ssl);
}