X-Git-Url: http://git.indexdata.com/?p=idzebra-moved-to-github.git;a=blobdiff_plain;f=data1%2Fd1_handle.c;h=861f76f81cbbc81c9b53fc386ac33924c17fc988;hp=43fea530c85d0c33fcbb80e7705feae3c12dc892;hb=e2e073b5c947e996304ed7d577497af5e9a879ee;hpb=a66b7d79383ae700f3358731eecfe2aafed0e90d diff --git a/data1/d1_handle.c b/data1/d1_handle.c index 43fea53..861f76f 100644 --- a/data1/d1_handle.c +++ b/data1/d1_handle.c @@ -1,5 +1,5 @@ /* This file is part of the Zebra server. - Copyright (C) 1994-2010 Index Data + Copyright (C) Index Data Zebra is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free @@ -17,6 +17,9 @@ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ +#if HAVE_CONFIG_H +#include +#endif #include #include @@ -79,9 +82,9 @@ void data1_destroy (data1_handle dh) { if (!dh) return; - + /* *ostrich* - We need to destroy DFAs, in xp_element (xelm) definitions + We need to destroy DFAs, in xp_element (xelm) definitions pop, 2002-12-13 */ data1_absyn_destroy(dh); @@ -96,7 +99,7 @@ void data1_destroy (data1_handle dh) if (dh->map_buf) xfree (dh->map_buf); nmem_destroy (dh->mem); - + xfree (dh); } @@ -150,18 +153,21 @@ FILE *data1_path_fopen (data1_handle dh, const char *file, const char *mode) FILE *f; const char *path = data1_get_tabpath(dh); const char *root = data1_get_tabroot(dh); - if (!path || !*path) - { - yaz_log(YLOG_DEBUG, "data1_fath_fopen file=%s mode=%s no open", - file, mode); - return 0; - } - yaz_log(YLOG_DEBUG, "data1_fath_fopen path=%s root=%s " + + yaz_log(YLOG_DEBUG, "data1_path_fopen path=%s root=%s " "file=%s mode=%s", path ? path : "NULL", root ? root : "NULL", file, mode); - f = yaz_fopen(path, file, "r", root); + if (!path || !*path) + return 0; + f = yaz_fopen(path, file, mode, root); if (!f) + { yaz_log(YLOG_WARN|YLOG_ERRNO, "Couldn't open %s", file); + if (root) + yaz_log(YLOG_LOG, "for root=%s", root); + if (path) + yaz_log(YLOG_LOG, "for profilePath=%s", path); + } return f; }