X-Git-Url: http://git.indexdata.com/?p=idzebra-moved-to-github.git;a=blobdiff_plain;f=dfa%2Fbset.c;h=6ca49e43ce5a8da48e596db2e8a945c380207638;hp=701778e9b4cf5304c7c6769eea36c8549c3f693e;hb=aeea139423b8eaf28a4de53b3d7b2ad1f22284e7;hpb=aec7e0b196785323777262d3c6ca3e6c770a696d diff --git a/dfa/bset.c b/dfa/bset.c index 701778e..6ca49e4 100644 --- a/dfa/bset.c +++ b/dfa/bset.c @@ -1,5 +1,5 @@ /* This file is part of the Zebra server. - Copyright (C) 1994-2009 Index Data + Copyright (C) 1994-2011 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 @@ -18,6 +18,9 @@ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ +#if HAVE_CONFIG_H +#include +#endif #include #include @@ -28,17 +31,17 @@ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA #include #include "imalloc.h" -#define GET_BIT(s,m) (s[(m)/(sizeof(BSetWord)*8)]&(1<<(m&(sizeof(BSetWord)*8-1)))) +#define GET_BIT(s,m) (s[(m)/(sizeof(BSetWord)*8)]&(1<<(m&(sizeof(BSetWord)*8-1)))) #define SET_BIT(s,m) (s[(m)/(sizeof(BSetWord)*8)]|=(1<<(m&(sizeof(BSetWord)*8-1)))) BSetHandle *mk_BSetHandle (int size, int chunk) { - int wsize = 1+size/(sizeof(BSetWord)*8); + int wsize = 1+size/(sizeof(BSetWord)*8); BSetHandle *sh; if (chunk <= 1) chunk = 32; - sh = (BSetHandle *) imalloc (sizeof(BSetHandle) + + sh = (BSetHandle *) imalloc (sizeof(BSetHandle) + chunk*sizeof(BSetWord)*wsize); sh->size = size; @@ -91,7 +94,7 @@ BSet mk_BSet (BSetHandle **shp) off = sh->offset; if ((off + sh->wsize) > sh->chunk) { - sh1 = (BSetHandle *) imalloc (sizeof(BSetHandle) + + sh1 = (BSetHandle *) imalloc (sizeof(BSetHandle) + sh->chunk*sizeof(BSetWord)); sh1->size = sh->size; sh1->wsize = sh->wsize;