ENH: speed up for NOTFOUND

This commit is contained in:
Bill Hoffman 2004-05-21 11:52:07 -04:00
parent d655b65256
commit f49e76899c
1 changed files with 10 additions and 4 deletions

View File

@ -304,12 +304,18 @@ bool cmSystemTools::IsOn(const char* val)
bool cmSystemTools::IsNOTFOUND(const char* val)
{
cmsys::RegularExpression reg("-NOTFOUND$");
if(reg.find(val))
int len = strlen(val);
const char* notfound = "-NOTFOUND";
const int lenNotFound = 9;
if(len < lenNotFound-1)
{
return true;
return false;
}
return std::string("NOTFOUND") == val;
if(len == lenNotFound-1)
{
return ( strcmp(val, "NOTFOUND") == 0);
}
return ((strncmp((val + (len - lenNotFound)), notfound, lenNotFound) == 0));
}