X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=index%2Freckeys.c;h=dec3e05cbdd01b1badb75bb5a58ded05b63dbf26;hb=ce556bc293c5eed60090acaf82cc668d333abd7b;hp=002e1fc075291430bc31f88fa4913ad7eb803126;hpb=89d3a004b7c651fd5673abfc192e1472dc4d4197;p=idzebra-moved-to-github.git diff --git a/index/reckeys.c b/index/reckeys.c index 002e1fc..dec3e05 100644 --- a/index/reckeys.c +++ b/index/reckeys.c @@ -1,8 +1,5 @@ -/* $Id: reckeys.c,v 1.12 2007-01-15 15:10:17 adam Exp $ - Copyright (C) 1995-2007 - Index Data ApS - -This file is part of the Zebra server. +/* This file is part of the Zebra server. + Copyright (C) 1995-2008 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 @@ -64,6 +61,7 @@ struct zebra_rec_keys_t_ { void *encode_handle; void *decode_handle; char owner_of_buffer; + zint custom_record_id; NMEM nmem; size_t hash_size; @@ -133,6 +131,7 @@ zebra_rec_keys_t zebra_rec_keys_open(void) p->encode_handle = iscz1_start(); p->decode_handle = iscz1_start(); + p->custom_record_id = 0; p->nmem = nmem_create(); p->hash_size = 32767; p->entries = 0; @@ -289,6 +288,10 @@ void zebra_rec_keys_write(zebra_rec_keys_t keys, assert(keys->owner_of_buffer); + if (key->mem[1]) /* record_id custom */ + { + keys->custom_record_id = key->mem[1]; + } #if 1 if (!zebra_rec_keys_add_hash(keys, str, slen, key)) { @@ -410,6 +413,12 @@ int zebra_rec_keys_read(zebra_rec_keys_t keys, } return 1; } + +zint zebra_rec_keys_get_custom_record_id(zebra_rec_keys_t keys) +{ + return keys->custom_record_id; +} + /* * Local variables: * c-basic-offset: 4