X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=util%2Fres.c;h=d3307e75eef7a263cc4164c5ced2f77566567c47;hb=087298c5eeb7746a1d0ded9067b1d582bd641a25;hp=b21e706e6f9f49994e850aa7a6bb0720ebb7fd1a;hpb=ef696645cc3b7e0f4027008d1dc589c0f0f90c1f;p=idzebra-moved-to-github.git diff --git a/util/res.c b/util/res.c index b21e706..d3307e7 100644 --- a/util/res.c +++ b/util/res.c @@ -4,7 +4,17 @@ * Sebastian Hammer, Adam Dickmeiss * * $Log: res.c,v $ - * Revision 1.25 1999-05-26 07:49:14 adam + * Revision 1.28 2000-12-01 17:59:08 adam + * Fixed bug regarding online updates on WIN32. + * When zebra.cfg is not available the server will not abort. + * + * Revision 1.27 1999/11/30 13:48:04 adam + * Improved installation. Updated for inclusion of YAZ header files. + * + * Revision 1.26 1999/10/07 09:48:36 adam + * Allow res_get / res_get_def with NULL res. + * + * Revision 1.25 1999/05/26 07:49:14 adam * C++ compilation. * * Revision 1.24 1999/02/02 14:51:42 adam @@ -92,7 +102,7 @@ #endif #include -#include +#include static struct res_entry *add_entry (Res r) { @@ -240,7 +250,8 @@ Res res_open (const char *name) void res_close (Res r) { - assert (r); + if (!r) + return; if (r->init) { struct res_entry *re, *re1; @@ -262,7 +273,8 @@ char *res_get (Res r, const char *name) { struct res_entry *re; - assert (r); + if (!r) + return NULL; if (!r->init) reread (r); for (re = r->first; re; re=re->next) @@ -288,6 +300,8 @@ int res_get_match (Res r, const char *name, const char *value, const char *s) { const char *cn = res_get (r, name); + if (!cn) + cn = s; if (cn && !yaz_matchstr (cn, value)) return 1; return 0; @@ -319,7 +333,8 @@ int res_trav (Res r, const char *prefix, void *p, int l = 0; int no = 0; - assert (r); + if (!r) + return 0; if (prefix) l = strlen(prefix); if (!r->init)