On Mon, Mar 26, 2007 at 02:32:26PM +0400, Teodor Sigaev wrote:
> >FWIW, it looks like it failed to reject stopwords.  Is it possible you
> Right.
> 
> I suppose the problem is with '\r\n'... Try attached patch.
> -- 
> Teodor Sigaev                                   E-mail: [EMAIL PROTECTED]
>                                                    WWW: 
>                                                    http://www.sigaev.ru/

> *** ./contrib/tsearch2/stopword.c.orig        Mon Mar 26 14:25:16 2007
> --- ./contrib/tsearch2/stopword.c     Mon Mar 26 14:28:25 2007
> ***************
> *** 47,53 ****
>   
>               while (fgets(buf, sizeof(buf), hin))
>               {
> !                     buf[strlen(buf) - 1] = '\0';
>                       pg_verifymbstr(buf, strlen(buf), false);
>                       if (*buf == '\0')
>                               continue;
> --- 47,57 ----
>   
>               while (fgets(buf, sizeof(buf), hin))
>               {
> !                     pbuf = buf;
> !                     while( !isspace( *pbuf ) )
> !                             pbuf++;
> !                     *pbuf = '\0';
> ! 
>                       pg_verifymbstr(buf, strlen(buf), false);
>                       if (*buf == '\0')
>                               continue;


Yup, that solved the problem, thanks.

Wouldn't it be more efficiently written to walk the string backwards until
!isspace instead? Not sure that it matters at all, but then you'll
normallyi never step over more than two bytes...

//Magnus

---------------------------(end of broadcast)---------------------------
TIP 3: Have you checked our extensive FAQ?

               http://www.postgresql.org/docs/faq

Reply via email to