From qss@gtd.es Thu May  3 17:30:37 2001
Date: Thu, 3 May 2001 16:50:22 +0200
From: Quim Sanmarti <qss@gtd.es>
To: 'Tom Freeman' <Tom.Freeman@niss.ac.uk>
Cc: htdig-general@lists.sourceforge.net
Subject: RE: [htdig] Phrase searching with 3.2.0b3

Hi,

> -----Mensaje original-----
> De: htdig-general-admin@lists.sourceforge.net
> [mailto:htdig-general-admin@lists.sourceforge.net]En nombre de Tom
> Freeman
> Enviado el: jueves, 03 de mayo de 2001 15:24
> Para: Geoff Hutchison; htdig-general@lists.sourceforge.net
> Asunto: Re: [htdig] Phrase searching with 3.2.0b3
[snip]
> I've just noticed a bug I thought I should mention,
> If you do a search with any number less than a hundred,
> followed by the
> plus sign, the script returns an internal server error. For example, a
> search on '25+' returns the error, this wasn't the case with the
> previous release, i.e. 3.1.5.
>
Yes, it's a bug of htsearch, I reproduced it just right now, and it's
actually core-dumping.
To solve it, a one-liner patch is needed in parser.cc to append a 'return'
statement that lacked.
In fact, this whould happen with every query containing two successive
ignored words (e.g '10 20').
Remember that words with length under 3 will be ignored by default by htdig.

The patch is *so much* short that I append it herein. Used parser.cc version
1.22.2.8

--------------------Cut here---------------------
--- parser.cc.orig	Thu May  3 16:40:53 2001
+++ parser.cc	Thu May  3 16:41:14 2001
@@ -499,6 +499,7 @@ Parser::perform_and()
 	result->isIgnore = 1;
 	delete l1; delete l2;
 	stack.push(result);
+	return;
     }
     else if (l1->isIgnore)
     {
--------------------Cut here---------------------

Regards





    [ Part 2, Application/OCTET-STREAM (Name: "parser.cc.patch")  ]
    [ 267bytes. ]
    [ Unable to print this part. ]


