| Index: chrome/common/net/x509_certificate_model.cc
|
| ===================================================================
|
| --- chrome/common/net/x509_certificate_model.cc (revision 225023)
|
| +++ chrome/common/net/x509_certificate_model.cc (working copy)
|
| @@ -8,6 +8,7 @@
|
|
|
| #include "base/strings/utf_string_conversions.h"
|
| #include "grit/generated_resources.h"
|
| +#include "net/base/net_util.h"
|
| #include "ui/base/l10n/l10n_util.h"
|
|
|
| namespace x509_certificate_model {
|
| @@ -18,28 +19,7 @@
|
| input16.reserve(input.length());
|
| input16.insert(input16.end(), input.begin(), input.end());
|
|
|
| - string16 output16;
|
| - output16.resize(input.length());
|
| -
|
| - UErrorCode status = U_ZERO_ERROR;
|
| - int output_chars = uidna_IDNToUnicode(input16.data(), input.length(),
|
| - &output16[0], output16.length(),
|
| - UIDNA_DEFAULT, NULL, &status);
|
| - if (status == U_ZERO_ERROR) {
|
| - output16.resize(output_chars);
|
| - } else if (status != U_BUFFER_OVERFLOW_ERROR) {
|
| - return input;
|
| - } else {
|
| - output16.resize(output_chars);
|
| - output_chars = uidna_IDNToUnicode(input16.data(), input.length(),
|
| - &output16[0], output16.length(),
|
| - UIDNA_DEFAULT, NULL, &status);
|
| - if (status != U_ZERO_ERROR)
|
| - return input;
|
| - DCHECK_EQ(static_cast<size_t>(output_chars), output16.length());
|
| - output16.resize(output_chars); // Just to be safe.
|
| - }
|
| -
|
| + string16 output16 = net::IDNToUnicode(input, std::string());
|
| if (input16 == output16)
|
| return input; // Input did not contain any encoded data.
|
|
|
| @@ -89,5 +69,5 @@
|
| }
|
| #endif // USE_NSS
|
|
|
| -} // x509_certificate_model
|
| +} // namespace x509_certificate_model
|
|
|
|
|