version 1.20, 2009/11/13 18:13:18 |
version 1.21, 2009/11/18 13:16:33 |
|
|
job_tree_init(&c->status_jobs); |
job_tree_init(&c->status_jobs); |
|
|
c->message_string = NULL; |
c->message_string = NULL; |
|
ARRAY_INIT(&c->message_log); |
|
|
c->prompt_string = NULL; |
c->prompt_string = NULL; |
c->prompt_buffer = NULL; |
c->prompt_buffer = NULL; |
|
|
void |
void |
server_client_lost(struct client *c) |
server_client_lost(struct client *c) |
{ |
{ |
u_int i; |
struct message_entry *msg; |
|
u_int i; |
|
|
for (i = 0; i < ARRAY_LENGTH(&clients); i++) { |
for (i = 0; i < ARRAY_LENGTH(&clients); i++) { |
if (ARRAY_ITEM(&clients, i) == c) |
if (ARRAY_ITEM(&clients, i) == c) |
|
|
if (c->message_string != NULL) |
if (c->message_string != NULL) |
xfree(c->message_string); |
xfree(c->message_string); |
evtimer_del(&c->message_timer); |
evtimer_del(&c->message_timer); |
|
for (i = 0; i < ARRAY_LENGTH(&c->message_log); i++) { |
|
msg = &ARRAY_ITEM(&c->message_log, i); |
|
xfree(msg->msg); |
|
} |
|
ARRAY_FREE(&c->message_log); |
|
|
if (c->prompt_string != NULL) |
if (c->prompt_string != NULL) |
xfree(c->prompt_string); |
xfree(c->prompt_string); |