Example #1
0
void
soup_connection_set_state (SoupConnection *conn, SoupConnectionState state)
{
	g_return_if_fail (SOUP_IS_CONNECTION (conn));
	g_return_if_fail (state > SOUP_CONNECTION_NEW &&
			  state < SOUP_CONNECTION_DISCONNECTED);

	SOUP_CONNECTION_GET_PRIVATE (conn)->state = state;
	if (state == SOUP_CONNECTION_IDLE)
		clear_current_request (conn);
}
static void
dispose (GObject *object)
{
	SoupConnection *conn = SOUP_CONNECTION (object);
	SoupConnectionPrivate *priv = SOUP_CONNECTION_GET_PRIVATE (conn);

	stop_idle_timer (priv);
	/* Make sure clear_current_request doesn't re-establish the timeout */
	priv->idle_timeout = 0;

	clear_current_request (conn);
	soup_connection_disconnect (conn);

	G_OBJECT_CLASS (soup_connection_parent_class)->dispose (object);
}
void
soup_connection_set_state (SoupConnection *conn, SoupConnectionState state)
{
	SoupConnectionPrivate *priv;
	SoupConnectionState old_state;

	g_return_if_fail (SOUP_IS_CONNECTION (conn));
	g_return_if_fail (state >= SOUP_CONNECTION_NEW &&
			  state <= SOUP_CONNECTION_DISCONNECTED);

	priv = SOUP_CONNECTION_GET_PRIVATE (conn);
	old_state = priv->state;
	priv->state = state;
	if (state == SOUP_CONNECTION_IDLE &&
	    old_state == SOUP_CONNECTION_IN_USE)
		clear_current_request (conn);

	g_object_notify (G_OBJECT (conn), "state");
}