Dear all,

 

I am not a lucene dev subscriber and hope you can see this email. It is an intention to patch a bug that is related to multiple(continuous) trailing wildcards “?”. For example “cat” will match “ca??” .

 

The problem is at the file org.apache.lucene.search.WildcardTermEnum.java (referring to current src download from apache), line 135. three line is added:

                  //to prevent "cat" matches "ca??"

                  if(wildchar == WILDCARD_CHAR){

                        return false;

                  }          

 

To provide some context:

            if (wildchar != WILDCARD_CHAR && wildchar != WILDCARD_STRING)

            {

              justWildcardsLeft = false;

            }

            else

            {

                  //to prevent "cat" matches "ca??"

                  if(wildchar == WILDCARD_CHAR){

                        return false;

                  }          

              // Look at the next character

              wildcardSearchPos++;

            }

          }

 

A patch file is attached.

 

Thanks!

 

---

Xiaozheng Ma

--- WildcardTermEnum.org        2004-05-11 11:42:10.000000000 -0400
+++ WildcardTermEnum.java       2004-11-08 14:35:14.823610500 -0500
@@ -132,6 +132,10 @@
             }
             else
             {
+             //to prevent "cat" matches "ca??"
+             if(wildchar == WILDCARD_CHAR){
+               return false;
+             }       
               // Look at the next character
               wildcardSearchPos++;
             }
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to