X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=index%2Freckeys.c;h=58582672a9dce844033960f7b942bb97c23ec7fd;hb=527dab66d9847bb7f8a931c558306a070064bf25;hp=286c2507dae17cdf801d8a7880d3b72a84e556fc;hpb=b2200ef6f97a9b967723643d27a4ffb388883f6d;p=idzebra-moved-to-github.git diff --git a/index/reckeys.c b/index/reckeys.c index 286c250..5858267 100644 --- a/index/reckeys.c +++ b/index/reckeys.c @@ -1,5 +1,5 @@ -/* $Id: reckeys.c,v 1.11 2006-12-05 08:14:59 adam Exp $ - Copyright (C) 1995-2006 +/* $Id: reckeys.c,v 1.13 2007-11-30 12:19:08 adam Exp $ + Copyright (C) 1995-2007 Index Data ApS This file is part of the Zebra server. @@ -64,6 +64,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 +134,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 +291,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 +416,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