X-Git-Url: http://git.silcnet.org/gitweb/?p=silc.git;a=blobdiff_plain;f=lib%2Fsilcclient%2Fclient.c;fp=lib%2Fsilcclient%2Fclient.c;h=3ab7ba17b4aa96fc872496dce38c17ae078227d7;hp=7811bfa131963d5947f7e73c006f771cede605db;hb=90e14dc985628e0b0f86e604d511039d302dc956;hpb=35135dcd998899182a78e7742b753c2bec72d923 diff --git a/lib/silcclient/client.c b/lib/silcclient/client.c index 7811bfa1..3ab7ba17 100644 --- a/lib/silcclient/client.c +++ b/lib/silcclient/client.c @@ -55,7 +55,7 @@ static void silc_client_connection_finished(SilcFSMThread fsm, SilcClient client = silc_fsm_get_state_context(fsm); /* Signal client that we have finished */ - silc_atomic_sub_int16(&client->internal->conns, 1); + silc_atomic_sub_int32(&client->internal->conns, 1); client->internal->connection_closed = TRUE; SILC_FSM_EVENT_SIGNAL(&client->internal->wait_event); @@ -529,7 +529,7 @@ SILC_FSM_STATE(silc_client_st_run) /* A connection finished */ SILC_LOG_DEBUG(("Event: connection closed")); client->internal->connection_closed = FALSE; - if (silc_atomic_get_int16(&client->internal->conns) == 0 && + if (silc_atomic_get_int32(&client->internal->conns) == 0 && client->internal->stop) SILC_FSM_EVENT_SIGNAL(&client->internal->wait_event); return SILC_FSM_CONTINUE; @@ -538,7 +538,7 @@ SILC_FSM_STATE(silc_client_st_run) if (client->internal->stop) { /* Stop client libarry. If we have running connections, wait until they finish first. */ - if (silc_atomic_get_int16(&client->internal->conns) == 0) { + if (silc_atomic_get_int32(&client->internal->conns) == 0) { SILC_LOG_DEBUG(("Event: stop")); silc_fsm_next(fsm, silc_client_st_stop); } @@ -674,7 +674,7 @@ silc_client_add_connection(SilcClient client, silc_fsm_start(thread, silc_client_connection_st_start); SILC_LOG_DEBUG(("New connection %p", conn)); - silc_atomic_add_int16(&client->internal->conns, 1); + silc_atomic_add_int32(&client->internal->conns, 1); return conn; } @@ -938,7 +938,7 @@ SilcClient silc_client_alloc(SilcClientOperations *ops, nickname_format[sizeof(new_client->internal-> params->nickname_format) - 1] = 0; - silc_atomic_init16(&new_client->internal->conns, 0); + silc_atomic_init32(&new_client->internal->conns, 0); return new_client; } @@ -966,7 +966,7 @@ void silc_client_free(SilcClient client) silc_dlist_uninit(client->internal->ftp_sessions); if (client->internal->lock) silc_mutex_free(client->internal->lock); - silc_atomic_uninit16(&client->internal->conns); + silc_atomic_uninit32(&client->internal->conns); silc_free(client->username); silc_free(client->hostname); silc_free(client->realname);