
From grdetil@scrc.umanitoba.ca Wed Dec  8 14:50:02 1999
Date: Wed, 8 Dec 1999 13:52:03 -0600 (CST)
From: Gilles Detillieux <grdetil@scrc.umanitoba.ca>
To: Gilles Detillieux <grdetil@scrc.umanitoba.ca>
Cc: ghutchis@wso.williams.edu, jjah@cloud.ccsf.cc.ca.us,
    grdetil@scrc.umanitoba.ca, htdig3-dev@htdig.org
Subject: Re: [htdig3-dev] Re: htdig-3.1.4 prerelease

According to Gilles Detillieux:
> According to Geoff Hutchison:
> > At 8:54 AM -0800 12/8/99, Joe R. Jah wrote:
> > >Bingo;)  They were all in img alt text, in that particular search.
> > 
> > Phew! OK, barring any other showstoppers, I'll roll the release tomorrow!
> 
> D'oh!  I just found what I'd consider a showstopper.  I was playing around
> with a patch to Display.cc, which made use of the QuotedStringList class,
> and found that if you end off with an empty quoted string, that string
> gets thrown out.  I'll try to fix this pronto.

OK, here's the fix.  It seems to do the job, and I've walk through the
code and don't see how it would break anything.  (I could use more eyes,
though.)

Geoff, if it's OK, could you commit it to CVS and make the necessary
notations, please?  I'm very late for lunch.

Joe, no need to archive this one as it should be in 3.1.4 (you could put
it under 3.1.3 and earlier patches, though).

--- htlib/QuotedStringList.cc.orig	Tue Feb 16 23:03:56 1999
+++ htlib/QuotedStringList.cc	Wed Dec  8 13:39:35 1999
@@ -76,6 +76,7 @@ int
 QuotedStringList::Create(char *str, char *sep, int single)
 {
     char	quote = 0;
+    int	quoted = 0;
     String	word;
 
     while (str && *str)
@@ -91,11 +92,13 @@ QuotedStringList::Create(char *str, char
 	else if (*str == '"' || *str == '\'')
 	{
 	    quote = *str;
+	    quoted++;
 	}
 	else if (quote == 0 && strchr(sep, *str))
 	{
 	    List::Add(new String(word));
 	    word = 0;
+	    quoted = 0;
 	    if (!single)
 	    {
 		while (strchr(sep, *str))
@@ -111,7 +114,7 @@ QuotedStringList::Create(char *str, char
     //
     // Add the last word to the list
     //
-    if (word.length())
+    if (word.length() || quoted)
 	List::Add(new String(word));
     return Count();
 }

-- 
Gilles R. Detillieux              E-mail: <grdetil@scrc.umanitoba.ca>
Spinal Cord Research Centre       WWW:    http://www.scrc.umanitoba.ca/~grdetil
Dept. Physiology, U. of Manitoba  Phone:  (204)789-3766
Winnipeg, MB  R3E 3J7  (Canada)   Fax:    (204)789-3930

