projects
/
idzebra-moved-to-github.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
27f0332
)
*** empty log message ***
author
Adam Dickmeiss
<adam@indexdata.dk>
Wed, 24 Sep 1997 13:36:51 +0000
(13:36 +0000)
committer
Adam Dickmeiss
<adam@indexdata.dk>
Wed, 24 Sep 1997 13:36:51 +0000
(13:36 +0000)
recctrl/marcread.c
patch
|
blob
|
history
diff --git
a/recctrl/marcread.c
b/recctrl/marcread.c
index
44d93f5
..
2efa90d
100644
(file)
--- a/
recctrl/marcread.c
+++ b/
recctrl/marcread.c
@@
-4,7
+4,10
@@
* Sebastian Hammer, Adam Dickmeiss
*
* $Log: marcread.c,v $
* Sebastian Hammer, Adam Dickmeiss
*
* $Log: marcread.c,v $
- * Revision 1.2 1997-09-17 12:19:21 adam
+ * Revision 1.3 1997-09-24 13:36:51 adam
+ * *** empty log message ***
+ *
+ * Revision 1.2 1997/09/17 12:19:21 adam
* Zebra version corresponds to YAZ version 1.4.
* Changed Zebra server so that it doesn't depend on global common_resource.
*
* Zebra version corresponds to YAZ version 1.4.
* Changed Zebra server so that it doesn't depend on global common_resource.
*
@@
-123,6
+126,7
@@
data1_node *grs_read_marc (struct grs_read_info *p)
data1_node *res_root;
data1_absyn *absyn;
char *absynName;
data1_node *res_root;
data1_absyn *absyn;
char *absynName;
+ data1_marctab *marctab;
if ((*p->readf)(p->fh, buf, 5) != 5)
return NULL;
if ((*p->readf)(p->fh, buf, 5) != 5)
return NULL;
@@
-158,12
+162,19
@@
data1_node *grs_read_marc (struct grs_read_info *p)
strcpy (res_root->u.root.type, absynName);
res_root->u.root.absyn = absyn;
strcpy (res_root->u.root.type, absynName);
res_root->u.root.absyn = absyn;
- indicator_length = atoi_n (buf+10, 1);
- identifier_length = atoi_n (buf+11, 1);
+ marctab = absyn->marc;
+
+ if (marctab && marctab->force_indicator_length >= 0)
+ indicator_length = marctab->force_indicator_length;
+ else
+ indicator_length = atoi_n (buf+10, 1);
+ if (marctab && marctab->force_identifier_length >= 0)
+ identifier_length = marctab->force_identifier_length;
+ else
+ identifier_length = atoi_n (buf+11, 1);
base_address = atoi_n (buf+12, 4);
base_address = atoi_n (buf+12, 4);
- length_data_entry = atoi_n (buf+20, 1);
- length_data_entry = atoi_n (buf+20, 1);
+
length_data_entry = atoi_n (buf+20, 1);
length_starting = atoi_n (buf+21, 1);
length_implementation = atoi_n (buf+22, 1);
length_data_entry = atoi_n (buf+20, 1);
length_starting = atoi_n (buf+21, 1);
length_implementation = atoi_n (buf+22, 1);