Update copyright year + FSF address
[idzebra-moved-to-github.git] / index / kcompare.c
index af02709..3fd1c7e 100644 (file)
@@ -1,6 +1,6 @@
-/* $Id: kcompare.c,v 1.52 2004-09-15 08:13:51 adam Exp $
-   Copyright (C) 1995,1996,1997,1998,1999,2000,2001,2002,2003,2004
-   Index Data Aps
+/* $Id: kcompare.c,v 1.60 2006-08-14 10:40:15 adam Exp $
+   Copyright (C) 1995-2006
+   Index Data ApS
 
 This file is part of the Zebra server.
 
@@ -15,9 +15,9 @@ FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
 for more details.
 
 You should have received a copy of the GNU General Public License
-along with Zebra; see the file LICENSE.zebra.  If not, write to the
-Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA
-02111-1307, USA.
+along with this program; if not, write to the Free Software
+Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
+
 */
 
 #include <stdlib.h>
@@ -33,9 +33,11 @@ Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA
 #define CODEC_INLINE
 #endif
 
-void key_logdump_txt (int logmask, const void *p, const char *txt)
+void key_logdump_txt(int logmask, const void *p, const char *txt)
 {
     struct it_key key;
+    if (!txt)
+       txt = "(none)";
     if (p)
     {
        char formstr[128];
@@ -46,17 +48,17 @@ void key_logdump_txt (int logmask, const void *p, const char *txt)
        *formstr = '\0';
        for (i = 0; i<key.len; i++)
        {
-           sprintf(formstr + strlen(formstr), ZINT_FORMAT, key.mem[i]);
            if (i)
-               strcat(formstr, " ");
+               strcat(formstr, ".");
+           sprintf(formstr + strlen(formstr), ZINT_FORMAT, key.mem[i]);
        }
-        logf (logmask, "%s %s", formstr, txt);
+        yaz_log(logmask, "%s %s", formstr, txt);
     }
     else
-        logf(logmask, " (null) %s",txt);
+        yaz_log(logmask, " (no key) %s",txt);
 }
 
-void key_logdump (int logmask, const void *p)
+void key_logdump(int logmask, const void *p)
 {
     key_logdump_txt(logmask,  p, "");
 }
@@ -116,6 +118,13 @@ zint key_get_seq(const void *p)
     return k.mem[k.len-1];
 }
 
+zint key_get_segment(const void *p)
+{
+    struct it_key k;
+    memcpy (&k, p, sizeof(k));
+    return k.mem[k.len-1] / KEY_SEGMENT_SIZE;
+}
+
 int key_qsort_compare (const void *p1, const void *p2)
 {
     int r;
@@ -281,7 +290,7 @@ ISAMS_M *key_isams_m (Res res, ISAMS_M *me)
 
 ISAMC_M *key_isamc_m (Res res, ISAMC_M *me)
 {
-    isc_getmethod (me);
+    isamc_getmethod (me);
 
     me->compare_item = key_compare;
     me->log_item = key_logdump_txt;
@@ -336,3 +345,11 @@ int key_SU_decode (int *ch, const unsigned char *out)
     return len;
 }
 
+/*
+ * Local variables:
+ * c-basic-offset: 4
+ * indent-tabs-mode: nil
+ * End:
+ * vim: shiftwidth=4 tabstop=8 expandtab
+ */
+