if(aChar<256) { if(aIgnoreCase) { char theChar=(char)nsCRT::ToUpper(aChar); const char* ptr=aDest+(anOffset-1); const char* last=aDest+aLength; while(++ptr<last){ if(nsCRT::ToUpper(*ptr)==theChar) return ptr-aDest;
if(anOffset<0) anOffset=0;  if(aCount<0) aCount = (PRInt32)aDestLength;  if((0<aDestLength) && ((PRUint32)anOffset<aDestLength)) {  if(0<aCount) {  const char* left= aDest+anOffset; const char* last= left+aCount; const char* max = aDest+aDestLength; const char* end = (last<max) ? last : max;  if(aIgnoreCase) {  char theChar=(char)nsCRT::ToUpper(aChar); while(left<end){ if(nsCRT::ToUpper(*left)==theChar) return left-aDest; ++left; }
inline PRInt32 FindChar1(const char* aDest,PRUint32 aLength,PRUint32 anOffset,const PRUnichar aChar,PRBool aIgnoreCase) {  if(aChar<256) {    if(aIgnoreCase) {      char theChar=(char)nsCRT::ToUpper(aChar);      const char* ptr=aDest+(anOffset-1);      const char* last=aDest+aLength;      while(++ptr<last){        if(nsCRT::ToUpper(*ptr)==theChar)          return ptr-aDest;      }    }    else {      const char* ptr = aDest+anOffset;      char theChar=(char)aChar;      const char* result=(const char*)memchr(ptr, theChar,aLength-anOffset);      if(result) {        return result-aDest;      }    }  }  return kNotFound;}