Remove obsolete references
[idzebra-moved-to-github.git] / index / recgrs.c
index ceb78a7..ef0acb4 100644 (file)
@@ -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
@@ -17,6 +17,9 @@ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
 
 */
 
+#if HAVE_CONFIG_H
+#include <config.h>
+#endif
 #include <stdio.h>
 #include <assert.h>
 #include <sys/types.h>
@@ -104,12 +107,18 @@ static int sp_range(struct source_parser *sp, data1_node *n, RecWord *wrd)
        return 0;       
     sp_lex(sp);
     
-    if (wrd->term_buf && wrd->term_len)
+    if (wrd->term_buf)
     {
-       wrd->term_buf += start;
-       wrd->term_len -= start;
-       if (wrd->term_len > len)
-           wrd->term_len = len;
+        if (start >= wrd->term_len)
+            wrd->term_len = 0;
+        else
+        {
+            wrd->term_len -= start;
+            wrd->term_buf += start;
+
+            if (wrd->term_len > len)
+                wrd->term_len = len;
+        }
     }
     return 1;
 }
@@ -563,7 +572,7 @@ static void index_xpath(struct source_parser *sp, data1_node *n,
                memcpy(&wrd_tl, wrd, sizeof(*wrd));
                if (tl->source)
                    sp_parse(sp, n, &wrd_tl, tl->source);
-                
+
                 /* this is just the old fashioned attribute based index */
                 wrd_tl.index_name = tl->index_name;
                 if (p->flagShowRecords)
@@ -724,8 +733,6 @@ static void index_termlist(struct source_parser *sp, data1_node *par,
                             struct recExtractCtrl *p, int level, RecWord *wrd)
 {
     data1_termlist *tlist = 0;
-    data1_datatype dtype = DATA1K_string;
-
     /*
      * cycle up towards the root until we find a tag with an att..
      * this has the effect of indexing locally defined tags with
@@ -737,9 +744,6 @@ static void index_termlist(struct source_parser *sp, data1_node *par,
             break;
     if (!par || !(tlist = par->u.tag.element->termlists))
         return;
-    if (par->u.tag.element->tag)
-        dtype = par->u.tag.element->tag->kind;
-
     for (; tlist; tlist = tlist->next)
     {
        /* consider source */
@@ -1164,7 +1168,6 @@ int zebra_grs_retrieve(void *clientData, struct recRetrieveCtrl *p,
        yaz_log(YLOG_DEBUG, "grs_retrieve: schema mapping");
        for (map = node->u.root.absyn->maptabs; map; map = map->next)
        {
-           // if (map->target_absyn_ref == requested_schema)
            if (!oid_oidcmp(map->oid, requested_schema))
            {
                onode = node;
@@ -1358,6 +1361,7 @@ int zebra_grs_retrieve(void *clientData, struct recRetrieveCtrl *p,
 /*
  * Local variables:
  * c-basic-offset: 4
+ * c-file-style: "Stroustrup"
  * indent-tabs-mode: nil
  * End:
  * vim: shiftwidth=4 tabstop=8 expandtab