for (PRUint16 i = 0; i < (0x2200 >> 5); i++) { map[i] = 0; }
SetUpFontCharSetInfo(nsFontCharSetInfo* aSelf){  nsCOMPtr<nsIAtom> charset;  nsresult res = gCharSetManager->GetCharsetAtom2(aSelf->mCharSet,    getter_AddRefs(charset));  if (NS_SUCCEEDED(res)) {    nsIUnicodeEncoder* converter = nsnull;    res = gCharSetManager->GetUnicodeEncoder(charset, &converter);    if (NS_SUCCEEDED(res)) {      aSelf->mConverter = converter;      res = converter->SetOutputErrorBehavior(converter->kOnError_Replace,        nsnull, '?');      nsCOMPtr<nsICharRepresentable> mapper = do_QueryInterface(converter);      if (mapper) {        res = mapper->FillInfo(aSelf->mMap);          /*         * XXX This is a bit of a hack. Documents containing the CP1252         * extensions of Latin-1 (e.g. smart quotes) will display with those         * special characters way too large. This is because they happen to         * be in these large double byte fonts. So, we disable those         * characters here. Revisit this decision later.         */        if (aSelf->Convert == DoubleByteConvert) {          PRUint32* map = aSelf->mMap;          for (PRUint16 i = 0; i < (0x2200 >> 5); i++) {            map[i] = 0;          }        }      }      else {        printf("=== nsICharRepresentable %s failed\n", aSelf->mCharSet);      }    }    else {      printf("=== GetUnicodeEncoder %s failed\n", aSelf->mCharSet);    }  }  else {    printf("=== GetCharsetAtom2 %s failed\n", aSelf->mCharSet);  }}