38 |
|
} log_type_table[LOG_TYPE_LAST]; |
39 |
|
|
40 |
|
|
41 |
< |
int |
42 |
< |
log_add_file(enum log_type type, size_t size, const char *path) |
41 |
> |
void |
42 |
> |
log_set_file(enum log_type type, size_t size, const char *path) |
43 |
|
{ |
44 |
– |
if (log_type_table[type].file) |
45 |
– |
fclose(log_type_table[type].file); |
46 |
– |
|
44 |
|
strlcpy(log_type_table[type].path, path, sizeof(log_type_table[type].path)); |
45 |
|
log_type_table[type].size = size; |
46 |
|
|
47 |
< |
return (log_type_table[type].file = fopen(path, "a")) != NULL; |
47 |
> |
if (type == LOG_TYPE_IRCD) |
48 |
> |
log_type_table[type].file = fopen(log_type_table[type].path, "a"); |
49 |
> |
} |
50 |
> |
|
51 |
> |
void |
52 |
> |
log_del_all(void) |
53 |
> |
{ |
54 |
> |
unsigned int type = 0; |
55 |
> |
|
56 |
> |
while (++type < LOG_TYPE_LAST) |
57 |
> |
log_type_table[type].path[0] = '\0'; |
58 |
|
} |
59 |
|
|
60 |
|
void |
61 |
< |
log_close_all(void) |
61 |
> |
log_reopen_all(void) |
62 |
|
{ |
63 |
|
unsigned int type = 0; |
64 |
|
|
65 |
|
while (++type < LOG_TYPE_LAST) |
66 |
|
{ |
67 |
< |
if (log_type_table[type].file == NULL) |
68 |
< |
continue; |
67 |
> |
if (log_type_table[type].file) |
68 |
> |
{ |
69 |
> |
fclose(log_type_table[type].file); |
70 |
> |
log_type_table[type].file = NULL; |
71 |
> |
} |
72 |
|
|
73 |
< |
fclose(log_type_table[type].file); |
74 |
< |
log_type_table[type].file = NULL; |
73 |
> |
if (log_type_table[type].path[0]) |
74 |
> |
log_type_table[type].file = fopen(log_type_table[type].path, "a"); |
75 |
|
} |
76 |
|
} |
77 |
|
|
129 |
|
unlink(buf); |
130 |
|
rename(log_type_table[type].path, buf); |
131 |
|
|
132 |
< |
log_add_file(type, log_type_table[type].size, log_type_table[type].path); |
132 |
> |
log_set_file(type, log_type_table[type].size, log_type_table[type].path); |
133 |
> |
log_type_table[type].file = fopen(log_type_table[type].path, "a"); |
134 |
|
} |