projects
/
pazpar2-moved-to-github.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Fixed bug 2021: non-merged , brief meta data not included.
[pazpar2-moved-to-github.git]
/
src
/
logic.c
diff --git
a/src/logic.c
b/src/logic.c
index
afc84a9
..
92a0ecf
100644
(file)
--- a/
src/logic.c
+++ b/
src/logic.c
@@
-1225,8
+1225,10
@@
struct record *ingest_record(struct client *cl, Z_External *rec,
value, type);
continue;
}
value, type);
continue;
}
- rec_md->next = record->metadata[md_field_id];
- record->metadata[md_field_id] = rec_md;
+ wheretoput = &record->metadata[md_field_id];
+ while (*wheretoput)
+ wheretoput = &(*wheretoput)->next;
+ *wheretoput = rec_md;
// merged metadata
rec_md = record_metadata_init(se->nmem, (char *) value,
// merged metadata
rec_md = record_metadata_init(se->nmem, (char *) value,
@@
-1235,6
+1237,12
@@
struct record *ingest_record(struct client *cl, Z_External *rec,
// and polulate with data:
// assign cluster or record based on merge action
// and polulate with data:
// assign cluster or record based on merge action
+ if (ser_md->merge == Metadata_merge_no)
+ {
+ while (*wheretoput)
+ wheretoput = &(*wheretoput)->next;
+ *wheretoput = rec_md;
+ }
if (ser_md->merge == Metadata_merge_unique)
{
struct record_metadata *mnode;
if (ser_md->merge == Metadata_merge_unique)
{
struct record_metadata *mnode;