-/* $Id: recgrs.c,v 1.104 2005-08-03 07:44:27 adam Exp $
+/* $Id: recgrs.c,v 1.107 2006-02-06 23:22:29 adam Exp $
Copyright (C) 1995-2005
Index Data ApS
}
else if (sp->len > 0 && isdigit(*(unsigned char *)sp->tok))
{
- wrd->term_buf = nmem_malloc(sp->nmem, sp->len);
- memcpy(wrd->term_buf, sp->tok, sp->len);
+ char *b;
wrd->term_len = sp->len;
+ b = nmem_malloc(sp->nmem, sp->len);
+ memcpy(b, sp->tok, sp->len);
+ wrd->term_buf = b;
sp_lex(sp);
}
else if (sp->len > 2 && sp->tok[0] == '\'' && sp->tok[sp->len-1] == '\'')
{
+ char *b;
wrd->term_len = sp->len - 2;
- wrd->term_buf = nmem_malloc(sp->nmem, wrd->term_len);
- memcpy(wrd->term_buf, sp->tok+1, wrd->term_len);
+ b = nmem_malloc(sp->nmem, wrd->term_len);
+ memcpy(b, sp->tok+1, wrd->term_len);
+ wrd->term_buf = b;
sp_lex(sp);
}
else
p, wrd);
xpdone = 1;
} else {
- /* add attribute based index for the attribute */
+ /* index attribute value (only path/@attr) */
if (xp->value)
{
#if NATTR