X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=src%2Flog.c;h=859ca3af70ce7bcd2b3381e7a9f60f6b83df6d76;hb=cd08b51966f34ed2b871f87bc07dd51a0d3fd6a4;hp=6fd475d4b231cb608fd5be6a2ccec3e0305f0224;hpb=f4c095a042b1bcccb78136be87944e46412386aa;p=yaz-moved-to-github.git diff --git a/src/log.c b/src/log.c index 6fd475d..859ca3a 100644 --- a/src/log.c +++ b/src/log.c @@ -1,8 +1,8 @@ /* - * Copyright (c) 1995-2004, Index Data + * Copyright (C) 1995-2005, Index Data ApS * See the file LICENSE for details. * - * $Id: log.c,v 1.18 2004-12-13 14:21:55 heikki Exp $ + * $Id: log.c,v 1.21 2005-01-15 19:47:13 adam Exp $ */ /** @@ -136,7 +136,13 @@ void yaz_log_reopen(void) if (!*l_fname) new_file = stderr; else if (!(new_file = fopen(l_fname, "a"))) + { + new_file=l_file; + l_file=stderr; /* just to be sure we don't rotate logs and recurse */ + yaz_log(YLOG_WARN|YLOG_ERRNO,"Could not open log file '%s'",l_fname); + l_file=new_file; /* restore to old value, probably stderr as well */ return; + } if (l_file != stderr) { fclose (l_file); @@ -397,15 +403,13 @@ int yaz_log_mask_str_x (const char *str, int level) { const char *p; int i; - int found; - int negated; char clean[255] = ""; char *n = clean; while (*str) { - found = 0; - negated=0; + int found = 0; + int negated = 0; for (p = str; *p && *p != ','; p++) ; if (*str=='-') @@ -413,7 +417,7 @@ int yaz_log_mask_str_x (const char *str, int level) negated=1; str++; } - if (isdigit(*str)) + if (isdigit(*(unsigned char *) str)) { level = atoi (str); found = 1;