ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/svn/ircd-hybrid/trunk/src/log.c
(Generate patch)

Comparing ircd-hybrid/trunk/src/log.c (file contents):
Revision 1737 by michael, Mon Jan 14 17:37:55 2013 UTC vs.
Revision 1831 by michael, Mon Apr 15 10:57:05 2013 UTC

# Line 38 | Line 38 | static struct {
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  
# Line 119 | Line 129 | ilog(enum log_type type, const char *fmt
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   }

Diff Legend

Removed lines
+ Added lines
< Changed lines (old)
> Changed lines (new)