res = csAtom->GetUnicode(&name);
res = csAtom->ToString(name);
nsresult nsTestUConv::TestCharsetManager(){  char * trace = "TestCharsetManager";  mLog.AddTrace(trace);  nsresult res = NS_OK;  const PRUnichar * name;  nsCOMPtr<nsIAtom> csAtom;  nsCOMPtr<nsICharsetConverterManager2> ccMan =            do_GetService(kCharsetConverterManagerCID, &res);  if (NS_FAILED(res)) {    mLog.PrintError("NS_WITH_SERVICE", res);    return res;  }  // test alias resolving capability  nsAutoString csAlias(NS_LITERAL_STRING("iso-10646-ucs-basic"));  nsAutoString csName(NS_LITERAL_STRING("UTF-16BE"));  res = ccMan->GetCharsetAtom(csAlias.get(), getter_AddRefs(csAtom));  if (NS_FAILED(res)) {    mLog.PrintError("GetCharsetAtom()", res);    return res;  }  res = csAtom->GetUnicode(&name);  if (NS_FAILED(res)) {    mLog.PrintError("get()", res);    return res;  }  if (!csName.Equals(nsDependentString(name))) {    mLog.PrintError("Equals()", "unexpected charset name");    return NS_ERROR_UNEXPECTED;  }  // test self returning if alias was not found  nsAutoString csAlias2(NS_LITERAL_STRING("Totally_dummy_charset_name"));  res = ccMan->GetCharsetAtom(csAlias2.get(), getter_AddRefs(csAtom));  if (NS_FAILED(res)) {    mLog.PrintError("GetCharsetAtom()", res);    return res;  }  res = csAtom->GetUnicode(&name);  if (NS_FAILED(res)) {    mLog.PrintError("get()", res);    return res;  }  if (!csAlias2.Equals(nsDependentString(name))) {    mLog.PrintError("Equals()", "unexpected charset name");    return NS_ERROR_UNEXPECTED;  }  mLog.DelTrace(trace);  return res;}