Index: Objects/stringlib/fastsearch.h =================================================================== --- Objects/stringlib/fastsearch.h (revision 80473) +++ Objects/stringlib/fastsearch.h (working copy) @@ -140,13 +140,13 @@ /* got a match! */ return i; /* miss: check if previous character is part of pattern */ - if (!STRINGLIB_BLOOM(mask, s[i-1])) + if (i > 0 && !STRINGLIB_BLOOM(mask, s[i-1])) i = i - m; else i = i - skip; } else { /* skip: check if previous character is part of pattern */ - if (!STRINGLIB_BLOOM(mask, s[i-1])) + if (i > 0 && !STRINGLIB_BLOOM(mask, s[i-1])) i = i - m; } }