Added support for 64 bit input file support.
[idzebra-moved-to-github.git] / recctrl / marcread.c
index 0edc5d4..a6924a8 100644 (file)
@@ -4,7 +4,19 @@
  * Sebastian Hammer, Adam Dickmeiss
  *
  * $Log: marcread.c,v $
- * Revision 1.7  1999-05-20 12:57:18  adam
+ * Revision 1.11  2000-05-15 15:32:51  adam
+ * Added support for 64 bit input file support.
+ *
+ * Revision 1.10  1999/11/30 13:48:04  adam
+ * Improved installation. Updated for inclusion of YAZ header files.
+ *
+ * Revision 1.9  1999/06/25 13:47:25  adam
+ * Minor change that prevents MSVC warning.
+ *
+ * Revision 1.8  1999/05/26 07:49:14  adam
+ * C++ compilation.
+ *
+ * Revision 1.7  1999/05/20 12:57:18  adam
  * Implemented TCL filter. Updated recctrl system.
  *
  * Revision 1.6  1999/02/02 14:51:27  adam
@@ -32,9 +44,9 @@
 #include <ctype.h>
 #include <assert.h>
 
-#include <log.h>
-#include <yaz-util.h>
-#include <marcdisp.h>
+#include <yaz/log.h>
+#include <yaz/yaz-util.h>
+#include <yaz/marcdisp.h>
 #include "grsread.h"
 
 data1_node *data1_mk_node_wp (data1_handle dh, NMEM mem, data1_node *parent)
@@ -71,7 +83,7 @@ data1_node *data1_mk_node_text (data1_handle dh, NMEM mem, data1_node *parent,
     res->u.data.what = DATA1I_text;
     res->u.data.len = len;
     if (res->u.data.len > DATA1_LOCALDATA) {
-        res->u.data.data = xmalloc (res->u.data.len);
+        res->u.data.data = (char *) xmalloc (res->u.data.len);
         res->destroy = destroy_data;
     }
     else
@@ -157,7 +169,8 @@ data1_node *grs_read_marc (struct grs_read_info *p)
     if (read_bytes == record_length - 4)
     {
         off_t cur_offset = (*p->tellf)(p->fh);
-        assert (cur_offset > 26);
+       if (cur_offset <= 27)
+           return NULL;
        if (p->endf)
            (*p->endf)(p->fh, cur_offset - 1);
     }
@@ -170,7 +183,7 @@ data1_node *grs_read_marc (struct grs_read_info *p)
     }
     res_root = data1_mk_node_wp (p->dh, p->mem, NULL);
     res_root->which = DATA1N_root;
-    res_root->u.root.type = nmem_malloc (p->mem, strlen(absynName)+1);
+    res_root->u.root.type = (char *) nmem_malloc (p->mem, strlen(absynName)+1);
     strcpy (res_root->u.root.type, absynName);
     res_root->u.root.absyn = absyn;
 
@@ -289,7 +302,7 @@ data1_node *grs_read_marc (struct grs_read_info *p)
     return res_root;
 } 
 
-static void *grs_init_marc()
+static void *grs_init_marc(void)
 {
     return 0;
 }