nsFontSubset::Load(nsFontWinA* aFont)
nsFontSubset::Load(HDC aDC, nsFontMetricsWinA* aFontMetricsWinA, nsFontWinA* aFont)
nsFontSubset::Load(nsFontWinA* aFont){  LOGFONT* logFont = &aFont->mLogFont;  logFont->lfCharSet = mCharSet;  HFONT hfont = ::CreateFontIndirect(logFont);  if (hfont) {    int i = gCharSetToIndex[mCharSet];    PRUint8* charSetMap = gCharSetInfo[i].mMap;    if (!charSetMap) {      charSetMap = (PRUint8*) PR_Calloc(8192, 1);      if (charSetMap) {        gCharSetInfo[i].mMap = charSetMap;        gCharSetInfo[i].GenerateMap(&gCharSetInfo[i]);      }      else {        ::DeleteObject(hfont);        return 0;      }    }    mMap = (PRUint8*) PR_Malloc(8192);    if (!mMap) {      ::DeleteObject(hfont);      return 0;    }    PRUint8* fontMap = aFont->mMap;    for (int j = 0; j < 8192; j++) {      mMap[j] = (charSetMap[j] & fontMap[j]);    }    mCodePage = gCharSetInfo[i].mCodePage;    mFont = hfont;    return 1;  }  return 0;}