String attribute support for record filter interface.
[idzebra-moved-to-github.git] / recctrl / safari.c
index a21179f..b3b7d6e 100644 (file)
@@ -1,6 +1,6 @@
-/* $Id: safari.c,v 1.1 2004-11-29 21:55:28 adam Exp $
-   Copyright (C) 2004
-   Index Data Aps
+/* $Id: safari.c,v 1.4 2005-03-05 09:19:16 adam Exp $
+   Copyright (C) 1995-2005
+   Index Data ApS
 
 This file is part of the Zebra server.
 
@@ -130,7 +130,7 @@ static int safari_extract(void *clientData, struct recExtractCtrl *p)
        char field[40];
        char *cp;
        yaz_log(YLOG_LOG, "safari line: %s", line);
-       if (sscanf(line, "%lld %lld %lld %39s %n",
+       if (sscanf(line, ZINT_FORMAT " " ZINT_FORMAT " " ZINT_FORMAT " %39s %n",
                   &recWord.record_id, &recWord.section_id, &recWord.seqno,
                   field, &nor) < 4)
        {
@@ -139,8 +139,9 @@ static int safari_extract(void *clientData, struct recExtractCtrl *p)
        }
        for (cp = line + nor; *cp == ' '; cp++)
            ;
-       recWord.string = cp;
-       recWord.length = strlen(cp);
+       recWord.attrStr = field;
+       recWord.term_buf = cp;
+       recWord.term_len = strlen(cp);
        (*p->tokenAdd)(&recWord);
     }
     fi_close(fi);