Better current_host, current_port

This commit is contained in:
Jesse van den Kieboom 2006-01-05 23:25:23 +00:00
parent 80e30ed758
commit c06362a750
1 changed files with 20 additions and 5 deletions

View File

@ -72,8 +72,11 @@ gboolean on_gm_net_connect_timeout(GmNet *net);
static void
gm_net_finalize(GObject *object) {
//GmNet *net = GM_NET(object);
GmNet *net = GM_NET(object);
g_free(net->priv->current_host);
g_free(net->priv->current_port);
G_OBJECT_CLASS(gm_net_parent_class)->finalize(object);
}
@ -145,6 +148,18 @@ gm_net_init(GmNet *net) {
net->priv->connect_check_id = 0;
}
static void
gm_net_set_host(GmNet *net, gchar const *host) {
g_free(net->priv->current_host);
net->priv->current_host = g_strdup(host);
}
static void
gm_net_set_port(GmNet *net, gchar const *port) {
g_free(net->priv->current_port);
net->priv->current_port = g_strdup(port);
}
void
gm_net_set_state(GmNet *net, GmNetState state) {
g_signal_emit(net, net_signals[STATE_CHANGING], 0, state);
@ -269,8 +284,8 @@ gm_net_connect_next(GmNet *net) {
return;
}
net->priv->current_host = host;
net->priv->current_port = port;
gm_net_set_host(net, host);
gm_net_set_port(net, port);
gm_net_set_state(net, GM_NET_STATE_TRY_ADDRESS);
net->priv->socket = socket(tmp->ai_family, tmp->ai_socktype,
@ -381,8 +396,8 @@ gm_net_connect(GmNet *net, const gchar *host, const gchar *port) {
snprintf(shost, NI_MAXHOST - 1, "%s", host);
snprintf(sport, NI_MAXSERV - 1, "%s", port);
net->priv->current_host = shost;
net->priv->current_port = sport;
gm_net_set_host(net, shost);
gm_net_set_port(net, sport);
gm_net_set_state(net, GM_NET_STATE_CONNECTING);