*cp = 'A' + (ch - 'a');
*cp = PRUnichar('A' + (ch - 'a'));
PRInt32 ConvertCase2(char* aString,PRUint32 aCount,PRBool aToUpper){   PRUnichar* cp = (PRUnichar*)aString;  PRUnichar* end = cp + aCount-1;  PRInt32 result=0;#ifndef XPCOM_STANDALONE#if !defined(RICKG_TESTBED) && !defined(STANDALONE_STRING_TESTS)  static CCaseConversionServiceInitializer  gCaseConversionServiceInitializer;  // I18N code begin  if(gCaseConv) {    nsresult err=(aToUpper) ? gCaseConv->ToUpper(cp, cp, aCount) : gCaseConv->ToLower(cp, cp, aCount);    if(NS_SUCCEEDED(err))      return 0;  }  // I18N code end#endif#endif /* XPCOM_STANDALONE */  while (cp <= end) {    PRUnichar ch = *cp;    if(aToUpper) {      if ((ch >= 'a') && (ch <= 'z')) {        *cp = 'A' + (ch - 'a');      }    }    else {      if ((ch >= 'A') && (ch <= 'Z')) {        *cp = 'a' + (ch - 'A');      }    }    cp++;  }  return result;}