Fixed is_indicator
[yaz-moved-to-github.git] / retrieval / d1_marc.c
index 4ddf45e..1900855 100644 (file)
@@ -4,7 +4,16 @@
  * Sebastian Hammer, Adam Dickmeiss
  *
  * $Log: d1_marc.c,v $
- * Revision 1.15  1999-10-21 12:06:29  adam
+ * Revision 1.18  2002-05-27 12:34:24  adam
+ * Fixed is_indicator
+ *
+ * Revision 1.17  2002/04/04 20:49:46  adam
+ * New functions yaz_is_abspath, yaz_path_fopen_base
+ *
+ * Revision 1.16  1999/11/30 13:47:12  adam
+ * Improved installation. Moved header files to include/yaz.
+ *
+ * Revision 1.15  1999/10/21 12:06:29  adam
  * Retrieval module no longer uses ctype.h - functions.
  *
  * Revision 1.14  1999/08/27 09:40:32  adam
 #include <stdlib.h>
 #include <string.h>
 
-#include <oid.h>
-#include <log.h>
-#include <marcdisp.h>
-#include <readconf.h>
-#include <xmalloc.h>
-#include <data1.h>
-#include <tpath.h>
+#include <yaz/oid.h>
+#include <yaz/log.h>
+#include <yaz/marcdisp.h>
+#include <yaz/readconf.h>
+#include <yaz/xmalloc.h>
+#include <yaz/data1.h>
+#include <yaz/tpath.h>
 
 data1_marctab *data1_read_marctab (data1_handle dh, const char *file)
 {
@@ -80,7 +89,7 @@ data1_marctab *data1_read_marctab (data1_handle dh, const char *file)
     int lineno = 0;
     int argc;
     
-    if (!(f = yaz_path_fopen(data1_get_tabpath(dh), file, "r")))
+    if (!(f = data1_path_fopen(dh, file, "r")))
     {
        yaz_log(LOG_WARN|LOG_ERRNO, "%s", file);
        return 0;
@@ -237,10 +246,10 @@ static int is_indicator (data1_marctab *p, data1_node *subf)
 {
 #if 1
     if (p->indicator_length != 2 ||
-       (subf->which == DATA1N_tag && strlen(subf->u.tag.tag) == 2))
+       (subf && subf->which == DATA1N_tag && strlen(subf->u.tag.tag) == 2))
        return 1;
 #else
-    if (subf->which == DATA1N_tag && subf->child->which == DATA1N_tag)
+    if (subf && subf->which == DATA1N_tag && subf->child->which == DATA1N_tag)
        return 1;
 #endif
     return 0;