Author: Pekka Riikonen <priikone@silcnet.org>
- Copyright (C) 2001 - 2007 Pekka Riikonen
+ Copyright (C) 2001 - 2008 Pekka Riikonen
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
NULL, NULL, NULL, TRUE);
if (!client_entry->channels) {
silc_free(client_entry->realname);
- silc_atomic_uninit32(&client_entry->internal.deleted);
- silc_atomic_uninit32(&client_entry->internal.refcnt);
- silc_rwlock_free(client_entry->internal.lock);
+ silc_atomic_uninit32(&client_entry->internal.deleted);
+ silc_atomic_uninit32(&client_entry->internal.refcnt);
+ silc_rwlock_free(client_entry->internal.lock);
silc_free(client_entry);
return NULL;
}
if (!nick) {
silc_hash_table_free(client_entry->channels);
silc_free(client_entry->realname);
- silc_atomic_uninit32(&client_entry->internal.deleted);
- silc_atomic_uninit32(&client_entry->internal.refcnt);
- silc_rwlock_free(client_entry->internal.lock);
+ silc_atomic_uninit32(&client_entry->internal.deleted);
+ silc_atomic_uninit32(&client_entry->internal.refcnt);
+ silc_rwlock_free(client_entry->internal.lock);
silc_free(client_entry);
return NULL;
}
silc_free(nick);
silc_hash_table_free(client_entry->channels);
silc_free(client_entry->realname);
- silc_atomic_uninit32(&client_entry->internal.deleted);
- silc_atomic_uninit32(&client_entry->internal.refcnt);
- silc_rwlock_free(client_entry->internal.lock);
+ silc_atomic_uninit32(&client_entry->internal.deleted);
+ silc_atomic_uninit32(&client_entry->internal.refcnt);
+ silc_rwlock_free(client_entry->internal.lock);
silc_free(client_entry);
silc_mutex_unlock(conn->internal->lock);
return NULL;
if (!channel->channel_name) {
silc_rwlock_free(channel->internal.lock);
silc_atomic_uninit32(&channel->internal.refcnt);
- silc_atomic_uninit32(&channel->internal.deleted);
+ silc_atomic_uninit32(&channel->internal.deleted);
silc_free(channel);
return NULL;
}
if (!channel->user_list) {
silc_rwlock_free(channel->internal.lock);
silc_atomic_uninit32(&channel->internal.refcnt);
- silc_atomic_uninit32(&channel->internal.deleted);
+ silc_atomic_uninit32(&channel->internal.deleted);
silc_free(channel->channel_name);
silc_free(channel);
return NULL;
if (!channel_namec) {
silc_rwlock_free(channel->internal.lock);
silc_atomic_uninit32(&channel->internal.refcnt);
- silc_atomic_uninit32(&channel->internal.deleted);
+ silc_atomic_uninit32(&channel->internal.deleted);
silc_free(channel->channel_name);
silc_hash_table_free(channel->user_list);
silc_free(channel);
&channel->id, channel)) {
silc_rwlock_free(channel->internal.lock);
silc_atomic_uninit32(&channel->internal.refcnt);
- silc_atomic_uninit32(&channel->internal.deleted);
+ silc_atomic_uninit32(&channel->internal.deleted);
silc_free(channel_namec);
silc_free(channel->channel_name);
silc_hash_table_free(channel->user_list);
return FALSE;
if (silc_atomic_sub_int32(&server->internal.deleted, 1) != 0)
- {
- SILC_LOG_DEBUG(("** WARNING ** Deleting a server twice %p", server));
-// asm("int3");
- return FALSE;
- }
+ return FALSE;
silc_client_unref_server(client, conn, server);
return TRUE;