Indeed, this seems to be a bug. It also tells us to write good
parsers. If the parsers do the right thing, this "bug" won't
appear....

Vadim Chekan wrote:
> 
> Hello!
> 
> I wrote my own external parser for WinWord document and done error in it.
> External parser must write to stdout "w \t <3 parameters>". But if
> parameters is less then 3 then Dig core dump. After debuging htdig.core i
> found problem in source code. Function strtok return null if no more tokens.
> But any chek don't done.
> 
> Vadim Chekan.
> 
> Index: ExternalParser.cc
> ===================================================================
> RCS file: /opt/htdig/cvs/htdig3/htdig/ExternalParser.cc,v
> retrieving revision 1.2
> diff -u -p -r1.2 ExternalParser.cc
> --- ExternalParser.cc 1997/03/24 04:33:16 1.2
> +++ ExternalParser.cc 1998/11/16 14:27:27
> @@ -156,7 +156,10 @@ ExternalParser::parse(Retriever &retriev
>    token1 = strtok(0, "\t");
>    token2 = strtok(0, "\t");
>    token3 = strtok(0, "\t");
> +if ( token1!=NULL & token2!=NULL & token3!=NULL )
>    retriever.got_word(token1, atoi(token2), atoi(token3));
> +else
> +cerr<< "External parser error in line:"<<line<<"\n";
>    break;
> 
>       case 'u': // href
> 
> ----------------------------------------------------------------------
> To unsubscribe from the htdig mailing list, send a message to
> [EMAIL PROTECTED] containing the single word "unsubscribe" in
> the body of the message.
----------------------------------------------------------------------
To unsubscribe from the htdig mailing list, send a message to
[EMAIL PROTECTED] containing the single word "unsubscribe" in
the body of the message.

Reply via email to