X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=util%2Fres.c;h=202d35129ab9c1da8bbbb3c66fe57f255d199ecc;hb=b9bbdf9c3eb24d29c3181c693204d7cb790bc318;hp=c1f3d3ce9505cc1e0bf530dd96d27338370654ec;hpb=68d94f14f5dc211c46689f33a9f61ad4682b8d0e;p=idzebra-moved-to-github.git diff --git a/util/res.c b/util/res.c index c1f3d3c..202d351 100644 --- a/util/res.c +++ b/util/res.c @@ -1,10 +1,16 @@ /* - * Copyright (C) 1994, Index Data I/S + * Copyright (C) 1994-1998, Index Data ApS * All rights reserved. * Sebastian Hammer, Adam Dickmeiss * * $Log: res.c,v $ - * Revision 1.21 1997-11-18 10:04:03 adam + * Revision 1.23 1998-10-28 15:18:55 adam + * Fix for DOS-formatted configuration files. + * + * Revision 1.22 1998/01/12 15:04:32 adam + * Removed exit - call. + * + * Revision 1.21 1997/11/18 10:04:03 adam * Function res_trav returns number of 'hits'. * * Revision 1.20 1997/10/31 12:39:15 adam @@ -115,8 +121,8 @@ static void reread (Res r) fr = fopen (r->name, "r"); if (!fr) { - logf (LOG_FATAL|LOG_ERRNO, "Cannot open %s", r->name); - exit (1); + logf (LOG_WARN|LOG_ERRNO, "Cannot open %s", r->name); + return ; } while (1) { @@ -162,7 +168,7 @@ static void reread (Res r) val_size = 0; while (1) { - if (fr_buf[no] == '\0' || fr_buf[no] == '\n') + if (fr_buf[no] == '\0' || strchr("\n\r\f", fr_buf[no])) { while (val_size > 0 && (val_buf[val_size-1] == ' ' || @@ -175,7 +181,7 @@ static void reread (Res r) resp->name, resp->value); break; } - else if (fr_buf[no] == '\\' && fr_buf[no+1] == '\n') + else if (fr_buf[no] == '\\' && strchr ("\n\r\f", fr_buf[no+1])) { line = fgets (fr_buf, sizeof(fr_buf)-1, fr); if (!line) @@ -214,7 +220,10 @@ Res res_open (const char *name) #else if (access (name, R_OK)) #endif - logf (LOG_LOG|LOG_ERRNO, "Cannot access `%s'", name); + { + logf (LOG_LOG|LOG_ERRNO, "Cannot access resource file `%s'", name); + return NULL; + } r = xmalloc (sizeof(*r)); r->init = 0; r->first = r->last = NULL;