[SCM] WebKit Debian packaging branch, debian/unstable, updated. debian/1.1.15-1-40151-g37bb677
darin
darin at 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Sat Sep 26 07:23:36 UTC 2009
The following commit has been merged in the debian/unstable branch:
commit dd417a207c4dbfb7410fe3b8e657a9e732a94512
Author: darin <darin at 268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date: Wed Feb 5 00:51:23 2003 +0000
Reviewed by Maciej.
- we say goodbye to "MIB numbers"
* khtml/misc/decoder.cpp:
(Decoder::Decoder): Get the Latin-1 codec using a name.
(Decoder::setEncoding): Detect the Hebrew encoding using isISOLatin1Hebrew()
instead of MIB number.
(Decoder::decode): Get the UCS-2 codec using a name. Redo APPLE_CHANGES so
we don't get the MIB-number-based workaround for a bug in QTextCodec that
KWQ doesn't have. Get the Latin-1 codec using a name.
* khtml/misc/loader.cpp:
(CachedCSSStyleSheet::CachedCSSStyleSheet): Get the Latin-1 codec using a name.
(CachedScript::CachedScript): Get the Latin-1 codec using a name.
* kwq/KWQCharsets.h: Remove the two MIB-related functions.
* kwq/KWQCharsets.mm: Remove the MIB number from the character set table struct.
Remove the MIB-related dictionary globals and functions.
(buildDictionaries): Remove code to set up the MIB-related dictionaries.
* kwq/KWQTextCodec.h: Remove codecForMib, mibEnum, and encoding member functions.
Add isISOLatin1Hebrew member function.
* kwq/KWQTextCodec.mm:
(QTextCodec::makeDecoder): Pass in the encoding when making KWQTextDecoder rather
than passing in the QTextCodec object.
(QTextCodec::toUnicode): Ditto.
(QTextCodec::isISOLatin1Hebrew): Return true for kCFStringEncodingISOLatinHebrew only.
(KWQTextDecoder::convertUsingTEC): Get encoding directly instead of from a QTextCodec.
(KWQTextDecoder::toUnicode): Ditto.
* kwq/make-charset-table.pl: Don't write out MIB numbers.
* kwq/KWQCharsetData.c: Regenerated.
* khtml/khtml_part.cpp: (KHTMLPart::completeURL):
Don't bother passing the MIB number to KURL. Soon, we'll have to
do something smart here, but we won't use MIB numbers.
* kwq/mac-encodings.txt: Added more 16-bit Unicode character set names.
Updated some comments.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@3568 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/WebCore/ChangeLog-2003-10-25 b/WebCore/ChangeLog-2003-10-25
index a3e7f5e..b83d359 100644
--- a/WebCore/ChangeLog-2003-10-25
+++ b/WebCore/ChangeLog-2003-10-25
@@ -1,3 +1,45 @@
+2003-02-04 Darin Adler <darin at apple.com>
+
+ Reviewed by Maciej.
+
+ - we say goodbye to "MIB numbers"
+
+ * khtml/misc/decoder.cpp:
+ (Decoder::Decoder): Get the Latin-1 codec using a name.
+ (Decoder::setEncoding): Detect the Hebrew encoding using isISOLatin1Hebrew()
+ instead of MIB number.
+ (Decoder::decode): Get the UCS-2 codec using a name. Redo APPLE_CHANGES so
+ we don't get the MIB-number-based workaround for a bug in QTextCodec that
+ KWQ doesn't have. Get the Latin-1 codec using a name.
+ * khtml/misc/loader.cpp:
+ (CachedCSSStyleSheet::CachedCSSStyleSheet): Get the Latin-1 codec using a name.
+ (CachedScript::CachedScript): Get the Latin-1 codec using a name.
+
+ * kwq/KWQCharsets.h: Remove the two MIB-related functions.
+ * kwq/KWQCharsets.mm: Remove the MIB number from the character set table struct.
+ Remove the MIB-related dictionary globals and functions.
+ (buildDictionaries): Remove code to set up the MIB-related dictionaries.
+
+ * kwq/KWQTextCodec.h: Remove codecForMib, mibEnum, and encoding member functions.
+ Add isISOLatin1Hebrew member function.
+ * kwq/KWQTextCodec.mm:
+ (QTextCodec::makeDecoder): Pass in the encoding when making KWQTextDecoder rather
+ than passing in the QTextCodec object.
+ (QTextCodec::toUnicode): Ditto.
+ (QTextCodec::isISOLatin1Hebrew): Return true for kCFStringEncodingISOLatinHebrew only.
+ (KWQTextDecoder::convertUsingTEC): Get encoding directly instead of from a QTextCodec.
+ (KWQTextDecoder::toUnicode): Ditto.
+
+ * kwq/make-charset-table.pl: Don't write out MIB numbers.
+ * kwq/KWQCharsetData.c: Regenerated.
+
+ * khtml/khtml_part.cpp: (KHTMLPart::completeURL):
+ Don't bother passing the MIB number to KURL. Soon, we'll have to
+ do something smart here, but we won't use MIB numbers.
+
+ * kwq/mac-encodings.txt: Added more 16-bit Unicode character set names.
+ Updated some comments.
+
2003-02-04 David Hyatt <hyatt at apple.com>
Patch calcInlineMaxWidth to add in left/right margins/borders/padding
diff --git a/WebCore/ChangeLog-2005-08-23 b/WebCore/ChangeLog-2005-08-23
index a3e7f5e..b83d359 100644
--- a/WebCore/ChangeLog-2005-08-23
+++ b/WebCore/ChangeLog-2005-08-23
@@ -1,3 +1,45 @@
+2003-02-04 Darin Adler <darin at apple.com>
+
+ Reviewed by Maciej.
+
+ - we say goodbye to "MIB numbers"
+
+ * khtml/misc/decoder.cpp:
+ (Decoder::Decoder): Get the Latin-1 codec using a name.
+ (Decoder::setEncoding): Detect the Hebrew encoding using isISOLatin1Hebrew()
+ instead of MIB number.
+ (Decoder::decode): Get the UCS-2 codec using a name. Redo APPLE_CHANGES so
+ we don't get the MIB-number-based workaround for a bug in QTextCodec that
+ KWQ doesn't have. Get the Latin-1 codec using a name.
+ * khtml/misc/loader.cpp:
+ (CachedCSSStyleSheet::CachedCSSStyleSheet): Get the Latin-1 codec using a name.
+ (CachedScript::CachedScript): Get the Latin-1 codec using a name.
+
+ * kwq/KWQCharsets.h: Remove the two MIB-related functions.
+ * kwq/KWQCharsets.mm: Remove the MIB number from the character set table struct.
+ Remove the MIB-related dictionary globals and functions.
+ (buildDictionaries): Remove code to set up the MIB-related dictionaries.
+
+ * kwq/KWQTextCodec.h: Remove codecForMib, mibEnum, and encoding member functions.
+ Add isISOLatin1Hebrew member function.
+ * kwq/KWQTextCodec.mm:
+ (QTextCodec::makeDecoder): Pass in the encoding when making KWQTextDecoder rather
+ than passing in the QTextCodec object.
+ (QTextCodec::toUnicode): Ditto.
+ (QTextCodec::isISOLatin1Hebrew): Return true for kCFStringEncodingISOLatinHebrew only.
+ (KWQTextDecoder::convertUsingTEC): Get encoding directly instead of from a QTextCodec.
+ (KWQTextDecoder::toUnicode): Ditto.
+
+ * kwq/make-charset-table.pl: Don't write out MIB numbers.
+ * kwq/KWQCharsetData.c: Regenerated.
+
+ * khtml/khtml_part.cpp: (KHTMLPart::completeURL):
+ Don't bother passing the MIB number to KURL. Soon, we'll have to
+ do something smart here, but we won't use MIB numbers.
+
+ * kwq/mac-encodings.txt: Added more 16-bit Unicode character set names.
+ Updated some comments.
+
2003-02-04 David Hyatt <hyatt at apple.com>
Patch calcInlineMaxWidth to add in left/right margins/borders/padding
diff --git a/WebCore/khtml/khtml_part.cpp b/WebCore/khtml/khtml_part.cpp
index 89d1e21..c49213d 100644
--- a/WebCore/khtml/khtml_part.cpp
+++ b/WebCore/khtml/khtml_part.cpp
@@ -1752,8 +1752,13 @@ KURL KHTMLPart::completeURL( const QString &url )
{
if ( !d->m_doc ) return url;
+#if APPLE_CHANGES
+ // FIXME: We probably want to pass the encoding to the KURL constructor
+ // that's inside m_doc->completeURL().
+#else
if (d->m_decoder)
return KURL(d->m_doc->completeURL(url), d->m_decoder->codec()->mibEnum());
+#endif
return KURL( d->m_doc->completeURL( url ) );
}
diff --git a/WebCore/khtml/misc/decoder.cpp b/WebCore/khtml/misc/decoder.cpp
index 9bceebc..c801a07 100644
--- a/WebCore/khtml/misc/decoder.cpp
+++ b/WebCore/khtml/misc/decoder.cpp
@@ -266,7 +266,7 @@ breakBreak:
Decoder::Decoder()
{
// latin1
- m_codec = QTextCodec::codecForMib(4);
+ m_codec = QTextCodec::codecForName("iso8859-1");
m_decoder = m_codec->makeDecoder();
enc = 0;
body = false;
@@ -303,7 +303,13 @@ void Decoder::setEncoding(const char *_encoding, bool force)
bool b;
m_codec = KGlobal::charsets()->codecForName(enc, b);
- if(m_codec->mibEnum() == 11) {
+ bool couldBeVisualRTL;
+#if APPLE_CHANGES
+ couldBeVisualRTL = m_codec->isISOLatin1Hebrew();
+#else
+ couldBeVisualRTL = m_codec->mibEnum() == 11;
+#endif
+ if (couldBeVisualRTL) {
// visually ordered unless one of the following
if( !(enc == "iso-8859-8-i" || enc == "iso_8859-8-i"
|| enc == "csiso88598i" || enc == "logical") )
@@ -341,11 +347,15 @@ QString Decoder::decode(const char *data, int len)
uchars[0] == 0xff && uchars[1] == 0xfe ) {
enc = "ISO-10646-UCS-2";
haveEncoding = true;
- m_codec = QTextCodec::codecForMib(1000);
+ m_codec = QTextCodec::codecForName(enc);
delete m_decoder;
m_decoder = m_codec->makeDecoder();
} else {
+#if APPLE_CHANGES
+ QString appendString(data, len);
+ buffer += appendString;
+#else
if(m_codec->mibEnum() != 1000) // utf16
{
// ### hack for a bug in QTextCodec. It cut's the input stream
@@ -357,10 +367,6 @@ QString Decoder::decode(const char *data, int len)
i--;
}
}
-#if APPLE_CHANGES
- QString appendString(data, len);
- buffer += appendString;
-#else
buffer += QCString(data, len+1);
#endif
// we still don't have an encoding, and are in the head
@@ -517,8 +523,8 @@ QString Decoder::decode(const char *data, int len)
m_codec = QTextCodec::codecForName(enc);
// be sure not to crash
if(!m_codec) {
- m_codec = QTextCodec::codecForMib(4);
enc = "iso8859-1";
+ m_codec = QTextCodec::codecForName(enc);
}
delete m_decoder;
m_decoder = m_codec->makeDecoder();
diff --git a/WebCore/khtml/misc/loader.cpp b/WebCore/khtml/misc/loader.cpp
index 5b5d0d1..47118af 100644
--- a/WebCore/khtml/misc/loader.cpp
+++ b/WebCore/khtml/misc/loader.cpp
@@ -196,7 +196,7 @@ CachedCSSStyleSheet::CachedCSSStyleSheet(DocLoader* dl, const DOMString &url, KI
if(!charset.isEmpty())
m_codec = KGlobal::charsets()->codecForName(charset, b);
else
- m_codec = QTextCodec::codecForMib(4); // latin-1
+ m_codec = QTextCodec::codecForName("iso8859-1");
}
CachedCSSStyleSheet::CachedCSSStyleSheet(const DOMString &url, const QString &stylesheet_data)
@@ -276,7 +276,7 @@ CachedScript::CachedScript(DocLoader* dl, const DOMString &url, KIO::CacheContro
if(!charset.isEmpty())
m_codec = KGlobal::charsets()->codecForName(charset, b);
else
- m_codec = QTextCodec::codecForMib(4); // latin-1
+ m_codec = QTextCodec::codecForName("iso8859-1");
}
CachedScript::CachedScript(const DOMString &url, const QString &script_data)
diff --git a/WebCore/kwq/KWQCharsetData.c b/WebCore/kwq/KWQCharsetData.c
index 650983a..7edf50f 100644
--- a/WebCore/kwq/KWQCharsetData.c
+++ b/WebCore/kwq/KWQCharsetData.c
@@ -1,314 +1,319 @@
static const CharsetEntry table[] = {
- { "csmacintosh", 2027, kCFStringEncodingMacRoman },
- { "mac", 2027, kCFStringEncodingMacRoman },
- { "macintosh", 2027, kCFStringEncodingMacRoman },
- { "x-mac-roman", 2027, kCFStringEncodingMacRoman },
- { "windows-1252", 2252, kCFStringEncodingWindowsLatin1 },
- { "winlatin1", 2252, kCFStringEncodingWindowsLatin1 },
- { "x-ansi", 2252, kCFStringEncodingWindowsLatin1 },
- { "8859_1", 4, kCFStringEncodingISOLatin1 },
- { "cp819", 4, kCFStringEncodingISOLatin1 },
- { "csisolatin1", 4, kCFStringEncodingISOLatin1 },
- { "ibm819", 4, kCFStringEncodingISOLatin1 },
- { "iso-8859-1", 4, kCFStringEncodingISOLatin1 },
- { "iso-ir-100", 4, kCFStringEncodingISOLatin1 },
- { "iso8859-1", 4, kCFStringEncodingISOLatin1 },
- { "iso_8859-1", 4, kCFStringEncodingISOLatin1 },
- { "iso_8859-1:1987", 4, kCFStringEncodingISOLatin1 },
- { "l1", 4, kCFStringEncodingISOLatin1 },
- { "latin1", 4, kCFStringEncodingISOLatin1 },
- { "x-nextstep", -1, kCFStringEncodingNextStepLatin },
- { "ansi_x3.4-1968", 3, kCFStringEncodingASCII },
- { "ansi_x3.4-1986", 3, kCFStringEncodingASCII },
- { "ascii", 3, kCFStringEncodingASCII },
- { "cp367", 3, kCFStringEncodingASCII },
- { "csascii", 3, kCFStringEncodingASCII },
- { "ibm367", 3, kCFStringEncodingASCII },
- { "iso-ir-6", 3, kCFStringEncodingASCII },
- { "iso-ir-6us", 3, kCFStringEncodingASCII },
- { "iso646-us", 3, kCFStringEncodingASCII },
- { "iso_646.irv:1991", 3, kCFStringEncodingASCII },
- { "us", 3, kCFStringEncodingASCII },
- { "us-ascii", 3, kCFStringEncodingASCII },
- { "csunicode", 1000, kCFStringEncodingUnicode },
- { "iso-10646-ucs-2", 1000, kCFStringEncodingUnicode },
- { "unicode-1-1-utf-8", 106, kCFStringEncodingUTF8 },
- { "unicode-2-0-utf-8", 106, kCFStringEncodingUTF8 },
- { "utf-16", 106, kCFStringEncodingUTF8 },
- { "utf-8", 106, kCFStringEncodingUTF8 },
- { "x-unicode-2-0-utf-8", 106, kCFStringEncodingUTF8 },
- { "x-mac-japanese", -1, kCFStringEncodingMacJapanese },
- { "x-mac-chinesetrad", -1, kCFStringEncodingMacChineseTrad },
- { "x-mac-trad-chinese", -1, kCFStringEncodingMacChineseTrad },
- { "csksc56011987", 36, kCFStringEncodingMacKorean },
- { "iso-ir-149", 36, kCFStringEncodingMacKorean },
- { "korean", 36, kCFStringEncodingMacKorean },
- { "ks_c_5601", 36, kCFStringEncodingMacKorean },
- { "ks_c_5601-1987", 36, kCFStringEncodingMacKorean },
- { "ks_c_5601-1989", 36, kCFStringEncodingMacKorean },
- { "ks_c_5601_1987", 36, kCFStringEncodingMacKorean },
- { "ksc5601", 36, kCFStringEncodingMacKorean },
- { "ksc_5601", 36, kCFStringEncodingMacKorean },
- { "x-mac-korean", 36, kCFStringEncodingMacKorean },
- { "x-mac-arabic", -1, kCFStringEncodingMacArabic },
- { "x-mac-hebrew", -1, kCFStringEncodingMacHebrew },
- { "x-mac-greek", -1, kCFStringEncodingMacGreek },
- { "x-mac-cyrillic", -1, kCFStringEncodingMacCyrillic },
- { "x-mac-devanagari", -1, kCFStringEncodingMacDevanagari },
- { "x-mac-gurmukhi", -1, kCFStringEncodingMacGurmukhi },
- { "x-mac-gujarati", -1, kCFStringEncodingMacGujarati },
- { "x-mac-thai", -1, kCFStringEncodingMacThai },
- { "x-mac-chinesesimp", -1, kCFStringEncodingMacChineseSimp },
- { "x-mac-simp-chinese", -1, kCFStringEncodingMacChineseSimp },
- { "x-mac-tibetan", -1, kCFStringEncodingMacTibetan },
- { "x-mac-ce", -1, kCFStringEncodingMacCentralEurRoman },
- { "x-mac-centraleurroman", -1, kCFStringEncodingMacCentralEurRoman },
- { "x-mac-symbol", -1, kCFStringEncodingMacSymbol },
- { "x-mac-dingbats", -1, kCFStringEncodingMacDingbats },
- { "x-mac-turkish", -1, kCFStringEncodingMacTurkish },
- { "x-mac-croatian", -1, kCFStringEncodingMacCroatian },
- { "x-mac-icelandic", -1, kCFStringEncodingMacIcelandic },
- { "x-mac-romanian", -1, kCFStringEncodingMacRomanian },
- { "x-mac-farsi", -1, kCFStringEncodingMacFarsi },
- { "x-mac-ukrainian", -1, kCFStringEncodingMacUkrainian },
- { "x-mac-vt100", -1, kCFStringEncodingMacVT100 },
- { "csisolatin2", 5, kCFStringEncodingISOLatin2 },
- { "iso-8859-2", 5, kCFStringEncodingISOLatin2 },
- { "iso-ir-101", 5, kCFStringEncodingISOLatin2 },
- { "iso8859-2", 5, kCFStringEncodingISOLatin2 },
- { "iso_8859-2", 5, kCFStringEncodingISOLatin2 },
- { "iso_8859-2:1987", 5, kCFStringEncodingISOLatin2 },
- { "l2", 5, kCFStringEncodingISOLatin2 },
- { "latin2", 5, kCFStringEncodingISOLatin2 },
- { "csisolatin3", 6, kCFStringEncodingISOLatin3 },
- { "iso-8859-3", 6, kCFStringEncodingISOLatin3 },
- { "iso-ir-109", 6, kCFStringEncodingISOLatin3 },
- { "iso_8859-3", 6, kCFStringEncodingISOLatin3 },
- { "iso_8859-3:1988", 6, kCFStringEncodingISOLatin3 },
- { "l3", 6, kCFStringEncodingISOLatin3 },
- { "latin3", 6, kCFStringEncodingISOLatin3 },
- { "csisolatin4", 7, kCFStringEncodingISOLatin4 },
- { "iso-8859-4", 7, kCFStringEncodingISOLatin4 },
- { "iso-ir-110", 7, kCFStringEncodingISOLatin4 },
- { "iso_8859-4", 7, kCFStringEncodingISOLatin4 },
- { "iso_8859-4:1988", 7, kCFStringEncodingISOLatin4 },
- { "l4", 7, kCFStringEncodingISOLatin4 },
- { "latin4", 7, kCFStringEncodingISOLatin4 },
- { "csisolatincyrillic", 8, kCFStringEncodingISOLatinCyrillic },
- { "cyrillic", 8, kCFStringEncodingISOLatinCyrillic },
- { "iso-8859-5", 8, kCFStringEncodingISOLatinCyrillic },
- { "iso-ir-144", 8, kCFStringEncodingISOLatinCyrillic },
- { "iso_8859-5", 8, kCFStringEncodingISOLatinCyrillic },
- { "iso_8859-5:1988", 8, kCFStringEncodingISOLatinCyrillic },
- { "arabic", 9, kCFStringEncodingISOLatinArabic },
- { "asmo-708", 9, kCFStringEncodingISOLatinArabic },
- { "csisolatinarabic", 9, kCFStringEncodingISOLatinArabic },
- { "ecma-114", 9, kCFStringEncodingISOLatinArabic },
- { "iso-8859-6", 9, kCFStringEncodingISOLatinArabic },
- { "iso-ir-127", 9, kCFStringEncodingISOLatinArabic },
- { "iso_8859-6", 9, kCFStringEncodingISOLatinArabic },
- { "iso_8859-6:1987", 9, kCFStringEncodingISOLatinArabic },
- { "csisolatingreek", 10, kCFStringEncodingISOLatinGreek },
- { "ecma-118", 10, kCFStringEncodingISOLatinGreek },
- { "elot_928", 10, kCFStringEncodingISOLatinGreek },
- { "greek", 10, kCFStringEncodingISOLatinGreek },
- { "greek8", 10, kCFStringEncodingISOLatinGreek },
- { "iso-8859-7", 10, kCFStringEncodingISOLatinGreek },
- { "iso-ir-126", 10, kCFStringEncodingISOLatinGreek },
- { "iso_8859-7", 10, kCFStringEncodingISOLatinGreek },
- { "iso_8859-7:1987", 10, kCFStringEncodingISOLatinGreek },
- { "csiso88598e", 11, kCFStringEncodingISOLatinHebrew },
- { "csiso88598i", 11, kCFStringEncodingISOLatinHebrew },
- { "csisolatinhebrew", 11, kCFStringEncodingISOLatinHebrew },
- { "dos-862", 11, kCFStringEncodingISOLatinHebrew },
- { "hebrew", 11, kCFStringEncodingISOLatinHebrew },
- { "iso-8859-8", 11, kCFStringEncodingISOLatinHebrew },
- { "iso-8859-8-e", 11, kCFStringEncodingISOLatinHebrew },
- { "iso-8859-8-i", 11, kCFStringEncodingISOLatinHebrew },
- { "iso-ir-138", 11, kCFStringEncodingISOLatinHebrew },
- { "iso_8859-8", 11, kCFStringEncodingISOLatinHebrew },
- { "iso_8859-8-e", 11, kCFStringEncodingISOLatinHebrew },
- { "iso_8859-8-i", 11, kCFStringEncodingISOLatinHebrew },
- { "iso_8859-8:1988", 11, kCFStringEncodingISOLatinHebrew },
- { "logical", 11, kCFStringEncodingISOLatinHebrew },
- { "visual", 11, kCFStringEncodingISOLatinHebrew },
- { "csisolatin5", 12, kCFStringEncodingISOLatin5 },
- { "iso-8859-9", 12, kCFStringEncodingISOLatin5 },
- { "iso-ir-148", 12, kCFStringEncodingISOLatin5 },
- { "iso_8859-9", 12, kCFStringEncodingISOLatin5 },
- { "iso_8859-9:1989", 12, kCFStringEncodingISOLatin5 },
- { "l5", 12, kCFStringEncodingISOLatin5 },
- { "latin5", 12, kCFStringEncodingISOLatin5 },
- { "csisolatin6", 13, kCFStringEncodingISOLatin6 },
- { "iso-8859-10", 13, kCFStringEncodingISOLatin6 },
- { "iso-ir-157", 13, kCFStringEncodingISOLatin6 },
- { "iso_8859-10:1992", 13, kCFStringEncodingISOLatin6 },
- { "l6", 13, kCFStringEncodingISOLatin6 },
- { "latin6", 13, kCFStringEncodingISOLatin6 },
- { "iso-8859-11", -1, kCFStringEncodingISOLatinThai },
- { "iso-8859-13", 109, kCFStringEncodingISOLatin7 },
- { "iso-8859-14", 110, kCFStringEncodingISOLatin8 },
- { "iso-celtic", 110, kCFStringEncodingISOLatin8 },
- { "iso-ir-199", 110, kCFStringEncodingISOLatin8 },
- { "iso_8859-14", 110, kCFStringEncodingISOLatin8 },
- { "iso_8859-14:1998", 110, kCFStringEncodingISOLatin8 },
- { "l8", 110, kCFStringEncodingISOLatin8 },
- { "latin8", 110, kCFStringEncodingISOLatin8 },
- { "csisolatin9", 111, kCFStringEncodingISOLatin9 },
- { "iso-8859-15", 111, kCFStringEncodingISOLatin9 },
- { "iso_8859-15", 111, kCFStringEncodingISOLatin9 },
- { "l9", 111, kCFStringEncodingISOLatin9 },
- { "latin-9", 111, kCFStringEncodingISOLatin9 },
- { "latin9", 111, kCFStringEncodingISOLatin9 },
- { "437", 2011, kCFStringEncodingDOSLatinUS },
- { "cp437", 2011, kCFStringEncodingDOSLatinUS },
- { "cspc8codepage437", 2011, kCFStringEncodingDOSLatinUS },
- { "ibm437", 2011, kCFStringEncodingDOSLatinUS },
- { "cp737", -1, kCFStringEncodingDOSGreek },
- { "ibm737", -1, kCFStringEncodingDOSGreek },
- { "cp500", 2087, kCFStringEncodingDOSBalticRim },
- { "cp775", 2087, kCFStringEncodingDOSBalticRim },
- { "csibm500", 2087, kCFStringEncodingDOSBalticRim },
- { "cspc775baltic", 2087, kCFStringEncodingDOSBalticRim },
- { "ebcdic-cp-be", 2087, kCFStringEncodingDOSBalticRim },
- { "ebcdic-cp-ch", 2087, kCFStringEncodingDOSBalticRim },
- { "ibm500", 2087, kCFStringEncodingDOSBalticRim },
- { "ibm775", 2087, kCFStringEncodingDOSBalticRim },
- { "850", 2009, kCFStringEncodingDOSLatin1 },
- { "cp850", 2009, kCFStringEncodingDOSLatin1 },
- { "cspc850multilingual", 2009, kCFStringEncodingDOSLatin1 },
- { "ibm850", 2009, kCFStringEncodingDOSLatin1 },
- { "852", 2010, kCFStringEncodingDOSLatin2 },
- { "cp852", 2010, kCFStringEncodingDOSLatin2 },
- { "cspcp852", 2010, kCFStringEncodingDOSLatin2 },
- { "ibm852", 2010, kCFStringEncodingDOSLatin2 },
- { "857", 2047, kCFStringEncodingDOSTurkish },
- { "cp857", 2047, kCFStringEncodingDOSTurkish },
- { "csibm857", 2047, kCFStringEncodingDOSTurkish },
- { "ibm857", 2047, kCFStringEncodingDOSTurkish },
- { "861", 2049, kCFStringEncodingDOSIcelandic },
- { "cp-is", 2049, kCFStringEncodingDOSIcelandic },
- { "cp861", 2049, kCFStringEncodingDOSIcelandic },
- { "csibm861", 2049, kCFStringEncodingDOSIcelandic },
- { "ibm861", 2049, kCFStringEncodingDOSIcelandic },
- { "cp864", 2051, kCFStringEncodingDOSArabic },
- { "csibm864", 2051, kCFStringEncodingDOSArabic },
- { "dos-720", 2051, kCFStringEncodingDOSArabic },
- { "ibm864", 2051, kCFStringEncodingDOSArabic },
- { "866", 2086, kCFStringEncodingDOSRussian },
- { "cp866", 2086, kCFStringEncodingDOSRussian },
- { "csibm866", 2086, kCFStringEncodingDOSRussian },
- { "ibm866", 2086, kCFStringEncodingDOSRussian },
- { "869", 2054, kCFStringEncodingDOSGreek2 },
- { "cp-gr", 2054, kCFStringEncodingDOSGreek2 },
- { "cp869", 2054, kCFStringEncodingDOSGreek2 },
- { "csibm869", 2054, kCFStringEncodingDOSGreek2 },
- { "ibm869", 2054, kCFStringEncodingDOSGreek2 },
- { "cp874", 2259, kCFStringEncodingDOSThai },
- { "dos-874", 2259, kCFStringEncodingDOSThai },
- { "tis-620", 2259, kCFStringEncodingDOSThai },
- { "windows-874", 2259, kCFStringEncodingDOSThai },
- { "cp932", 2024, kCFStringEncodingDOSJapanese },
- { "csshiftjis", 2024, kCFStringEncodingDOSJapanese },
- { "cswindows31j", 2024, kCFStringEncodingDOSJapanese },
- { "ms_kanji", 2024, kCFStringEncodingDOSJapanese },
- { "shift-jis", 2024, kCFStringEncodingDOSJapanese },
- { "shift_jis", 2024, kCFStringEncodingDOSJapanese },
- { "windows-31j", 2024, kCFStringEncodingDOSJapanese },
- { "x-ms-cp932", 2024, kCFStringEncodingDOSJapanese },
- { "x-sjis", 2024, kCFStringEncodingDOSJapanese },
- { "cp949", -1, kCFStringEncodingDOSKorean },
- { "cp950", -1, kCFStringEncodingDOSChineseTrad },
- { "windows-1250", 2250, kCFStringEncodingWindowsLatin2 },
- { "winlatin2", 2250, kCFStringEncodingWindowsLatin2 },
- { "x-cp1250", 2250, kCFStringEncodingWindowsLatin2 },
- { "wincyrillic", 2251, kCFStringEncodingWindowsCyrillic },
- { "windows-1251", 2251, kCFStringEncodingWindowsCyrillic },
- { "x-cp1251", 2251, kCFStringEncodingWindowsCyrillic },
- { "windows-1253", 2253, kCFStringEncodingWindowsGreek },
- { "wingreek", 2253, kCFStringEncodingWindowsGreek },
- { "windows-1254", 2254, kCFStringEncodingWindowsLatin5 },
- { "winturkish", 2254, kCFStringEncodingWindowsLatin5 },
- { "windows-1255", 2255, kCFStringEncodingWindowsHebrew },
- { "winhebrew", 2255, kCFStringEncodingWindowsHebrew },
- { "cp1256", 2256, kCFStringEncodingWindowsArabic },
- { "winarabic", 2256, kCFStringEncodingWindowsArabic },
- { "windows-1256", 2256, kCFStringEncodingWindowsArabic },
- { "winbaltic", 2257, kCFStringEncodingWindowsBalticRim },
- { "windows-1257", 2257, kCFStringEncodingWindowsBalticRim },
- { "johab", -1, kCFStringEncodingWindowsKoreanJohab },
- { "windows-1258", 2258, kCFStringEncodingWindowsVietnamese },
- { "winvietnamese", 2258, kCFStringEncodingWindowsVietnamese },
- { "cshalfwidthkatakana", 15, kCFStringEncodingJIS_X0201_76 },
- { "jis_x0201", 15, kCFStringEncodingJIS_X0201_76 },
- { "x0201", 15, kCFStringEncodingJIS_X0201_76 },
- { "csiso87jisx0208", 63, kCFStringEncodingJIS_X0208_83 },
- { "iso-ir-87", 63, kCFStringEncodingJIS_X0208_83 },
- { "jis_c6226-1983", 63, kCFStringEncodingJIS_X0208_83 },
- { "jis_x0208-1983", 63, kCFStringEncodingJIS_X0208_83 },
- { "x0208", 63, kCFStringEncodingJIS_X0208_83 },
- { "jis_x0208-1990", -1, kCFStringEncodingJIS_X0208_90 },
- { "csiso159jisx02121990", 98, kCFStringEncodingJIS_X0212_90 },
- { "iso-ir-159", 98, kCFStringEncodingJIS_X0212_90 },
- { "jis_x0212-1990", 98, kCFStringEncodingJIS_X0212_90 },
- { "x0212", 98, kCFStringEncodingJIS_X0212_90 },
- { "csiso42jisc62261978", 49, kCFStringEncodingJIS_C6226_78 },
- { "iso-ir-42", 49, kCFStringEncodingJIS_C6226_78 },
- { "jis_c6226-1978", 49, kCFStringEncodingJIS_C6226_78 },
- { "chinese", 57, kCFStringEncodingGB_2312_80 },
- { "csgb231280", 57, kCFStringEncodingGB_2312_80 },
- { "csiso58gb231280", 57, kCFStringEncodingGB_2312_80 },
- { "gb2312-80", 57, kCFStringEncodingGB_2312_80 },
- { "gb231280", 57, kCFStringEncodingGB_2312_80 },
- { "gb_2312-80", 57, kCFStringEncodingGB_2312_80 },
- { "iso-ir-58", 57, kCFStringEncodingGB_2312_80 },
- { "x-gbk", -1, kCFStringEncodingGBK_95 },
- { "gb18030", 114, kCFStringEncodingGB_18030_2000 },
- { "csiso2022jp", 39, kCFStringEncodingISO_2022_JP },
- { "iso-2022-jp", 39, kCFStringEncodingISO_2022_JP },
- { "csiso2022jp2", 40, kCFStringEncodingISO_2022_JP_2 },
- { "iso-2022-jp-2", 40, kCFStringEncodingISO_2022_JP_2 },
- { "iso-2022-jp-1", -1, kCFStringEncodingISO_2022_JP_1 },
- { "iso-2022-jp-3", -1, kCFStringEncodingISO_2022_JP_3 },
- { "iso-2022-cn", 104, kCFStringEncodingISO_2022_CN },
- { "iso-2022-cn-ext", 105, kCFStringEncodingISO_2022_CN_EXT },
- { "csiso2022kr", 37, kCFStringEncodingISO_2022_KR },
- { "iso-2022-kr", 37, kCFStringEncodingISO_2022_KR },
- { "cseucpkdfmtjapanese", 18, kCFStringEncodingEUC_JP },
- { "euc-jp", 18, kCFStringEncodingEUC_JP },
- { "extended_unix_code_packed_format_for_japanese", 18, kCFStringEncodingEUC_JP },
- { "x-euc", 18, kCFStringEncodingEUC_JP },
- { "x-euc-jp", 18, kCFStringEncodingEUC_JP },
- { "cn-gb", 113, kCFStringEncodingEUC_CN },
- { "cp936", 113, kCFStringEncodingEUC_CN },
- { "csgb2312", 113, kCFStringEncodingEUC_CN },
- { "euc-cn", 113, kCFStringEncodingEUC_CN },
- { "gb2312", 113, kCFStringEncodingEUC_CN },
- { "gbk", 113, kCFStringEncodingEUC_CN },
- { "ms936", 113, kCFStringEncodingEUC_CN },
- { "windows-936", 113, kCFStringEncodingEUC_CN },
- { "x-euc-cn", 113, kCFStringEncodingEUC_CN },
- { "euc-tw", -1, kCFStringEncodingEUC_TW },
- { "cseuckr", 38, kCFStringEncodingEUC_KR },
- { "euc-kr", 38, kCFStringEncodingEUC_KR },
- { "cskoi8r", 2084, kCFStringEncodingKOI8_R },
- { "koi", 2084, kCFStringEncodingKOI8_R },
- { "koi8", 2084, kCFStringEncodingKOI8_R },
- { "koi8-r", 2084, kCFStringEncodingKOI8_R },
- { "koi8r", 2084, kCFStringEncodingKOI8_R },
- { "big5", 2026, kCFStringEncodingBig5 },
- { "cn-big5", 2026, kCFStringEncodingBig5 },
- { "csbig5", 2026, kCFStringEncodingBig5 },
- { "x-x-big5", 2026, kCFStringEncodingBig5 },
- { "x-mac-roman-latin1", -1, kCFStringEncodingMacRomanLatin1 },
- { "hz-gb-2312", 2085, kCFStringEncodingHZ_GB_2312 },
- { "big5-hkscs", 2101, kCFStringEncodingBig5_HKSCS_1999 },
- { "cp037", 2028, kCFStringEncodingEBCDIC_CP037 },
- { "csibm037", 2028, kCFStringEncodingEBCDIC_CP037 },
- { "ebcdic-cp-ca", 2028, kCFStringEncodingEBCDIC_CP037 },
- { "ebcdic-cp-nl", 2028, kCFStringEncodingEBCDIC_CP037 },
- { "ebcdic-cp-us", 2028, kCFStringEncodingEBCDIC_CP037 },
- { "ebcdic-cp-wt", 2028, kCFStringEncodingEBCDIC_CP037 },
- { "ibm037", 2028, kCFStringEncodingEBCDIC_CP037 },
- { NULL, -1, kCFStringEncodingInvalidId }
+ { "csmacintosh", kCFStringEncodingMacRoman },
+ { "mac", kCFStringEncodingMacRoman },
+ { "macintosh", kCFStringEncodingMacRoman },
+ { "x-mac-roman", kCFStringEncodingMacRoman },
+ { "windows-1252", kCFStringEncodingWindowsLatin1 },
+ { "winlatin1", kCFStringEncodingWindowsLatin1 },
+ { "x-ansi", kCFStringEncodingWindowsLatin1 },
+ { "8859_1", kCFStringEncodingISOLatin1 },
+ { "cp819", kCFStringEncodingISOLatin1 },
+ { "csisolatin1", kCFStringEncodingISOLatin1 },
+ { "ibm819", kCFStringEncodingISOLatin1 },
+ { "iso-8859-1", kCFStringEncodingISOLatin1 },
+ { "iso-ir-100", kCFStringEncodingISOLatin1 },
+ { "iso8859-1", kCFStringEncodingISOLatin1 },
+ { "iso_8859-1", kCFStringEncodingISOLatin1 },
+ { "iso_8859-1:1987", kCFStringEncodingISOLatin1 },
+ { "l1", kCFStringEncodingISOLatin1 },
+ { "latin1", kCFStringEncodingISOLatin1 },
+ { "x-nextstep", kCFStringEncodingNextStepLatin },
+ { "ansi_x3.4-1968", kCFStringEncodingASCII },
+ { "ansi_x3.4-1986", kCFStringEncodingASCII },
+ { "ascii", kCFStringEncodingASCII },
+ { "cp367", kCFStringEncodingASCII },
+ { "csascii", kCFStringEncodingASCII },
+ { "ibm367", kCFStringEncodingASCII },
+ { "iso-ir-6", kCFStringEncodingASCII },
+ { "iso-ir-6us", kCFStringEncodingASCII },
+ { "iso646-us", kCFStringEncodingASCII },
+ { "iso_646.irv:1991", kCFStringEncodingASCII },
+ { "us", kCFStringEncodingASCII },
+ { "us-ascii", kCFStringEncodingASCII },
+ { "csunicode", kCFStringEncodingUnicode },
+ { "iso-10646-ucs-2", kCFStringEncodingUnicode },
+ { "unicode", kCFStringEncodingUnicode },
+ { "unicodefeff", kCFStringEncodingUnicode },
+ { "unicodefffe", kCFStringEncodingUnicode },
+ { "utf-16be", kCFStringEncodingUnicode },
+ { "utf-16le", kCFStringEncodingUnicode },
+ { "unicode-1-1-utf-8", kCFStringEncodingUTF8 },
+ { "unicode-2-0-utf-8", kCFStringEncodingUTF8 },
+ { "utf-16", kCFStringEncodingUTF8 },
+ { "utf-8", kCFStringEncodingUTF8 },
+ { "x-unicode-2-0-utf-8", kCFStringEncodingUTF8 },
+ { "x-mac-japanese", kCFStringEncodingMacJapanese },
+ { "x-mac-chinesetrad", kCFStringEncodingMacChineseTrad },
+ { "x-mac-trad-chinese", kCFStringEncodingMacChineseTrad },
+ { "csksc56011987", kCFStringEncodingMacKorean },
+ { "iso-ir-149", kCFStringEncodingMacKorean },
+ { "korean", kCFStringEncodingMacKorean },
+ { "ks_c_5601", kCFStringEncodingMacKorean },
+ { "ks_c_5601-1987", kCFStringEncodingMacKorean },
+ { "ks_c_5601-1989", kCFStringEncodingMacKorean },
+ { "ks_c_5601_1987", kCFStringEncodingMacKorean },
+ { "ksc5601", kCFStringEncodingMacKorean },
+ { "ksc_5601", kCFStringEncodingMacKorean },
+ { "x-mac-korean", kCFStringEncodingMacKorean },
+ { "x-mac-arabic", kCFStringEncodingMacArabic },
+ { "x-mac-hebrew", kCFStringEncodingMacHebrew },
+ { "x-mac-greek", kCFStringEncodingMacGreek },
+ { "x-mac-cyrillic", kCFStringEncodingMacCyrillic },
+ { "x-mac-devanagari", kCFStringEncodingMacDevanagari },
+ { "x-mac-gurmukhi", kCFStringEncodingMacGurmukhi },
+ { "x-mac-gujarati", kCFStringEncodingMacGujarati },
+ { "x-mac-thai", kCFStringEncodingMacThai },
+ { "x-mac-chinesesimp", kCFStringEncodingMacChineseSimp },
+ { "x-mac-simp-chinese", kCFStringEncodingMacChineseSimp },
+ { "x-mac-tibetan", kCFStringEncodingMacTibetan },
+ { "x-mac-ce", kCFStringEncodingMacCentralEurRoman },
+ { "x-mac-centraleurroman", kCFStringEncodingMacCentralEurRoman },
+ { "x-mac-symbol", kCFStringEncodingMacSymbol },
+ { "x-mac-dingbats", kCFStringEncodingMacDingbats },
+ { "x-mac-turkish", kCFStringEncodingMacTurkish },
+ { "x-mac-croatian", kCFStringEncodingMacCroatian },
+ { "x-mac-icelandic", kCFStringEncodingMacIcelandic },
+ { "x-mac-romanian", kCFStringEncodingMacRomanian },
+ { "x-mac-farsi", kCFStringEncodingMacFarsi },
+ { "x-mac-ukrainian", kCFStringEncodingMacUkrainian },
+ { "x-mac-vt100", kCFStringEncodingMacVT100 },
+ { "csisolatin2", kCFStringEncodingISOLatin2 },
+ { "iso-8859-2", kCFStringEncodingISOLatin2 },
+ { "iso-ir-101", kCFStringEncodingISOLatin2 },
+ { "iso8859-2", kCFStringEncodingISOLatin2 },
+ { "iso_8859-2", kCFStringEncodingISOLatin2 },
+ { "iso_8859-2:1987", kCFStringEncodingISOLatin2 },
+ { "l2", kCFStringEncodingISOLatin2 },
+ { "latin2", kCFStringEncodingISOLatin2 },
+ { "csisolatin3", kCFStringEncodingISOLatin3 },
+ { "iso-8859-3", kCFStringEncodingISOLatin3 },
+ { "iso-ir-109", kCFStringEncodingISOLatin3 },
+ { "iso_8859-3", kCFStringEncodingISOLatin3 },
+ { "iso_8859-3:1988", kCFStringEncodingISOLatin3 },
+ { "l3", kCFStringEncodingISOLatin3 },
+ { "latin3", kCFStringEncodingISOLatin3 },
+ { "csisolatin4", kCFStringEncodingISOLatin4 },
+ { "iso-8859-4", kCFStringEncodingISOLatin4 },
+ { "iso-ir-110", kCFStringEncodingISOLatin4 },
+ { "iso_8859-4", kCFStringEncodingISOLatin4 },
+ { "iso_8859-4:1988", kCFStringEncodingISOLatin4 },
+ { "l4", kCFStringEncodingISOLatin4 },
+ { "latin4", kCFStringEncodingISOLatin4 },
+ { "csisolatincyrillic", kCFStringEncodingISOLatinCyrillic },
+ { "cyrillic", kCFStringEncodingISOLatinCyrillic },
+ { "iso-8859-5", kCFStringEncodingISOLatinCyrillic },
+ { "iso-ir-144", kCFStringEncodingISOLatinCyrillic },
+ { "iso_8859-5", kCFStringEncodingISOLatinCyrillic },
+ { "iso_8859-5:1988", kCFStringEncodingISOLatinCyrillic },
+ { "arabic", kCFStringEncodingISOLatinArabic },
+ { "asmo-708", kCFStringEncodingISOLatinArabic },
+ { "csisolatinarabic", kCFStringEncodingISOLatinArabic },
+ { "ecma-114", kCFStringEncodingISOLatinArabic },
+ { "iso-8859-6", kCFStringEncodingISOLatinArabic },
+ { "iso-ir-127", kCFStringEncodingISOLatinArabic },
+ { "iso_8859-6", kCFStringEncodingISOLatinArabic },
+ { "iso_8859-6:1987", kCFStringEncodingISOLatinArabic },
+ { "csisolatingreek", kCFStringEncodingISOLatinGreek },
+ { "ecma-118", kCFStringEncodingISOLatinGreek },
+ { "elot_928", kCFStringEncodingISOLatinGreek },
+ { "greek", kCFStringEncodingISOLatinGreek },
+ { "greek8", kCFStringEncodingISOLatinGreek },
+ { "iso-8859-7", kCFStringEncodingISOLatinGreek },
+ { "iso-ir-126", kCFStringEncodingISOLatinGreek },
+ { "iso_8859-7", kCFStringEncodingISOLatinGreek },
+ { "iso_8859-7:1987", kCFStringEncodingISOLatinGreek },
+ { "csiso88598e", kCFStringEncodingISOLatinHebrew },
+ { "csiso88598i", kCFStringEncodingISOLatinHebrew },
+ { "csisolatinhebrew", kCFStringEncodingISOLatinHebrew },
+ { "dos-862", kCFStringEncodingISOLatinHebrew },
+ { "hebrew", kCFStringEncodingISOLatinHebrew },
+ { "iso-8859-8", kCFStringEncodingISOLatinHebrew },
+ { "iso-8859-8-e", kCFStringEncodingISOLatinHebrew },
+ { "iso-8859-8-i", kCFStringEncodingISOLatinHebrew },
+ { "iso-ir-138", kCFStringEncodingISOLatinHebrew },
+ { "iso_8859-8", kCFStringEncodingISOLatinHebrew },
+ { "iso_8859-8-e", kCFStringEncodingISOLatinHebrew },
+ { "iso_8859-8-i", kCFStringEncodingISOLatinHebrew },
+ { "iso_8859-8:1988", kCFStringEncodingISOLatinHebrew },
+ { "logical", kCFStringEncodingISOLatinHebrew },
+ { "visual", kCFStringEncodingISOLatinHebrew },
+ { "csisolatin5", kCFStringEncodingISOLatin5 },
+ { "iso-8859-9", kCFStringEncodingISOLatin5 },
+ { "iso-ir-148", kCFStringEncodingISOLatin5 },
+ { "iso_8859-9", kCFStringEncodingISOLatin5 },
+ { "iso_8859-9:1989", kCFStringEncodingISOLatin5 },
+ { "l5", kCFStringEncodingISOLatin5 },
+ { "latin5", kCFStringEncodingISOLatin5 },
+ { "csisolatin6", kCFStringEncodingISOLatin6 },
+ { "iso-8859-10", kCFStringEncodingISOLatin6 },
+ { "iso-ir-157", kCFStringEncodingISOLatin6 },
+ { "iso_8859-10:1992", kCFStringEncodingISOLatin6 },
+ { "l6", kCFStringEncodingISOLatin6 },
+ { "latin6", kCFStringEncodingISOLatin6 },
+ { "iso-8859-11", kCFStringEncodingISOLatinThai },
+ { "iso-8859-13", kCFStringEncodingISOLatin7 },
+ { "iso-8859-14", kCFStringEncodingISOLatin8 },
+ { "iso-celtic", kCFStringEncodingISOLatin8 },
+ { "iso-ir-199", kCFStringEncodingISOLatin8 },
+ { "iso_8859-14", kCFStringEncodingISOLatin8 },
+ { "iso_8859-14:1998", kCFStringEncodingISOLatin8 },
+ { "l8", kCFStringEncodingISOLatin8 },
+ { "latin8", kCFStringEncodingISOLatin8 },
+ { "csisolatin9", kCFStringEncodingISOLatin9 },
+ { "iso-8859-15", kCFStringEncodingISOLatin9 },
+ { "iso_8859-15", kCFStringEncodingISOLatin9 },
+ { "l9", kCFStringEncodingISOLatin9 },
+ { "latin-9", kCFStringEncodingISOLatin9 },
+ { "latin9", kCFStringEncodingISOLatin9 },
+ { "437", kCFStringEncodingDOSLatinUS },
+ { "cp437", kCFStringEncodingDOSLatinUS },
+ { "cspc8codepage437", kCFStringEncodingDOSLatinUS },
+ { "ibm437", kCFStringEncodingDOSLatinUS },
+ { "cp737", kCFStringEncodingDOSGreek },
+ { "ibm737", kCFStringEncodingDOSGreek },
+ { "cp500", kCFStringEncodingDOSBalticRim },
+ { "cp775", kCFStringEncodingDOSBalticRim },
+ { "csibm500", kCFStringEncodingDOSBalticRim },
+ { "cspc775baltic", kCFStringEncodingDOSBalticRim },
+ { "ebcdic-cp-be", kCFStringEncodingDOSBalticRim },
+ { "ebcdic-cp-ch", kCFStringEncodingDOSBalticRim },
+ { "ibm500", kCFStringEncodingDOSBalticRim },
+ { "ibm775", kCFStringEncodingDOSBalticRim },
+ { "850", kCFStringEncodingDOSLatin1 },
+ { "cp850", kCFStringEncodingDOSLatin1 },
+ { "cspc850multilingual", kCFStringEncodingDOSLatin1 },
+ { "ibm850", kCFStringEncodingDOSLatin1 },
+ { "852", kCFStringEncodingDOSLatin2 },
+ { "cp852", kCFStringEncodingDOSLatin2 },
+ { "cspcp852", kCFStringEncodingDOSLatin2 },
+ { "ibm852", kCFStringEncodingDOSLatin2 },
+ { "857", kCFStringEncodingDOSTurkish },
+ { "cp857", kCFStringEncodingDOSTurkish },
+ { "csibm857", kCFStringEncodingDOSTurkish },
+ { "ibm857", kCFStringEncodingDOSTurkish },
+ { "861", kCFStringEncodingDOSIcelandic },
+ { "cp-is", kCFStringEncodingDOSIcelandic },
+ { "cp861", kCFStringEncodingDOSIcelandic },
+ { "csibm861", kCFStringEncodingDOSIcelandic },
+ { "ibm861", kCFStringEncodingDOSIcelandic },
+ { "cp864", kCFStringEncodingDOSArabic },
+ { "csibm864", kCFStringEncodingDOSArabic },
+ { "dos-720", kCFStringEncodingDOSArabic },
+ { "ibm864", kCFStringEncodingDOSArabic },
+ { "866", kCFStringEncodingDOSRussian },
+ { "cp866", kCFStringEncodingDOSRussian },
+ { "csibm866", kCFStringEncodingDOSRussian },
+ { "ibm866", kCFStringEncodingDOSRussian },
+ { "869", kCFStringEncodingDOSGreek2 },
+ { "cp-gr", kCFStringEncodingDOSGreek2 },
+ { "cp869", kCFStringEncodingDOSGreek2 },
+ { "csibm869", kCFStringEncodingDOSGreek2 },
+ { "ibm869", kCFStringEncodingDOSGreek2 },
+ { "cp874", kCFStringEncodingDOSThai },
+ { "dos-874", kCFStringEncodingDOSThai },
+ { "tis-620", kCFStringEncodingDOSThai },
+ { "windows-874", kCFStringEncodingDOSThai },
+ { "cp932", kCFStringEncodingDOSJapanese },
+ { "csshiftjis", kCFStringEncodingDOSJapanese },
+ { "cswindows31j", kCFStringEncodingDOSJapanese },
+ { "ms_kanji", kCFStringEncodingDOSJapanese },
+ { "shift-jis", kCFStringEncodingDOSJapanese },
+ { "shift_jis", kCFStringEncodingDOSJapanese },
+ { "windows-31j", kCFStringEncodingDOSJapanese },
+ { "x-ms-cp932", kCFStringEncodingDOSJapanese },
+ { "x-sjis", kCFStringEncodingDOSJapanese },
+ { "cp949", kCFStringEncodingDOSKorean },
+ { "cp950", kCFStringEncodingDOSChineseTrad },
+ { "windows-1250", kCFStringEncodingWindowsLatin2 },
+ { "winlatin2", kCFStringEncodingWindowsLatin2 },
+ { "x-cp1250", kCFStringEncodingWindowsLatin2 },
+ { "wincyrillic", kCFStringEncodingWindowsCyrillic },
+ { "windows-1251", kCFStringEncodingWindowsCyrillic },
+ { "x-cp1251", kCFStringEncodingWindowsCyrillic },
+ { "windows-1253", kCFStringEncodingWindowsGreek },
+ { "wingreek", kCFStringEncodingWindowsGreek },
+ { "windows-1254", kCFStringEncodingWindowsLatin5 },
+ { "winturkish", kCFStringEncodingWindowsLatin5 },
+ { "windows-1255", kCFStringEncodingWindowsHebrew },
+ { "winhebrew", kCFStringEncodingWindowsHebrew },
+ { "cp1256", kCFStringEncodingWindowsArabic },
+ { "winarabic", kCFStringEncodingWindowsArabic },
+ { "windows-1256", kCFStringEncodingWindowsArabic },
+ { "winbaltic", kCFStringEncodingWindowsBalticRim },
+ { "windows-1257", kCFStringEncodingWindowsBalticRim },
+ { "johab", kCFStringEncodingWindowsKoreanJohab },
+ { "windows-1258", kCFStringEncodingWindowsVietnamese },
+ { "winvietnamese", kCFStringEncodingWindowsVietnamese },
+ { "cshalfwidthkatakana", kCFStringEncodingJIS_X0201_76 },
+ { "jis_x0201", kCFStringEncodingJIS_X0201_76 },
+ { "x0201", kCFStringEncodingJIS_X0201_76 },
+ { "csiso87jisx0208", kCFStringEncodingJIS_X0208_83 },
+ { "iso-ir-87", kCFStringEncodingJIS_X0208_83 },
+ { "jis_c6226-1983", kCFStringEncodingJIS_X0208_83 },
+ { "jis_x0208-1983", kCFStringEncodingJIS_X0208_83 },
+ { "x0208", kCFStringEncodingJIS_X0208_83 },
+ { "jis_x0208-1990", kCFStringEncodingJIS_X0208_90 },
+ { "csiso159jisx02121990", kCFStringEncodingJIS_X0212_90 },
+ { "iso-ir-159", kCFStringEncodingJIS_X0212_90 },
+ { "jis_x0212-1990", kCFStringEncodingJIS_X0212_90 },
+ { "x0212", kCFStringEncodingJIS_X0212_90 },
+ { "csiso42jisc62261978", kCFStringEncodingJIS_C6226_78 },
+ { "iso-ir-42", kCFStringEncodingJIS_C6226_78 },
+ { "jis_c6226-1978", kCFStringEncodingJIS_C6226_78 },
+ { "chinese", kCFStringEncodingGB_2312_80 },
+ { "csgb231280", kCFStringEncodingGB_2312_80 },
+ { "csiso58gb231280", kCFStringEncodingGB_2312_80 },
+ { "gb2312-80", kCFStringEncodingGB_2312_80 },
+ { "gb231280", kCFStringEncodingGB_2312_80 },
+ { "gb_2312-80", kCFStringEncodingGB_2312_80 },
+ { "iso-ir-58", kCFStringEncodingGB_2312_80 },
+ { "x-gbk", kCFStringEncodingGBK_95 },
+ { "gb18030", kCFStringEncodingGB_18030_2000 },
+ { "csiso2022jp", kCFStringEncodingISO_2022_JP },
+ { "iso-2022-jp", kCFStringEncodingISO_2022_JP },
+ { "csiso2022jp2", kCFStringEncodingISO_2022_JP_2 },
+ { "iso-2022-jp-2", kCFStringEncodingISO_2022_JP_2 },
+ { "iso-2022-jp-1", kCFStringEncodingISO_2022_JP_1 },
+ { "iso-2022-jp-3", kCFStringEncodingISO_2022_JP_3 },
+ { "iso-2022-cn", kCFStringEncodingISO_2022_CN },
+ { "iso-2022-cn-ext", kCFStringEncodingISO_2022_CN_EXT },
+ { "csiso2022kr", kCFStringEncodingISO_2022_KR },
+ { "iso-2022-kr", kCFStringEncodingISO_2022_KR },
+ { "cseucpkdfmtjapanese", kCFStringEncodingEUC_JP },
+ { "euc-jp", kCFStringEncodingEUC_JP },
+ { "extended_unix_code_packed_format_for_japanese", kCFStringEncodingEUC_JP },
+ { "x-euc", kCFStringEncodingEUC_JP },
+ { "x-euc-jp", kCFStringEncodingEUC_JP },
+ { "cn-gb", kCFStringEncodingEUC_CN },
+ { "cp936", kCFStringEncodingEUC_CN },
+ { "csgb2312", kCFStringEncodingEUC_CN },
+ { "euc-cn", kCFStringEncodingEUC_CN },
+ { "gb2312", kCFStringEncodingEUC_CN },
+ { "gbk", kCFStringEncodingEUC_CN },
+ { "ms936", kCFStringEncodingEUC_CN },
+ { "windows-936", kCFStringEncodingEUC_CN },
+ { "x-euc-cn", kCFStringEncodingEUC_CN },
+ { "euc-tw", kCFStringEncodingEUC_TW },
+ { "cseuckr", kCFStringEncodingEUC_KR },
+ { "euc-kr", kCFStringEncodingEUC_KR },
+ { "cskoi8r", kCFStringEncodingKOI8_R },
+ { "koi", kCFStringEncodingKOI8_R },
+ { "koi8", kCFStringEncodingKOI8_R },
+ { "koi8-r", kCFStringEncodingKOI8_R },
+ { "koi8r", kCFStringEncodingKOI8_R },
+ { "big5", kCFStringEncodingBig5 },
+ { "cn-big5", kCFStringEncodingBig5 },
+ { "csbig5", kCFStringEncodingBig5 },
+ { "x-x-big5", kCFStringEncodingBig5 },
+ { "x-mac-roman-latin1", kCFStringEncodingMacRomanLatin1 },
+ { "hz-gb-2312", kCFStringEncodingHZ_GB_2312 },
+ { "big5-hkscs", kCFStringEncodingBig5_HKSCS_1999 },
+ { "cp037", kCFStringEncodingEBCDIC_CP037 },
+ { "csibm037", kCFStringEncodingEBCDIC_CP037 },
+ { "ebcdic-cp-ca", kCFStringEncodingEBCDIC_CP037 },
+ { "ebcdic-cp-nl", kCFStringEncodingEBCDIC_CP037 },
+ { "ebcdic-cp-us", kCFStringEncodingEBCDIC_CP037 },
+ { "ebcdic-cp-wt", kCFStringEncodingEBCDIC_CP037 },
+ { "ibm037", kCFStringEncodingEBCDIC_CP037 },
+ { 0, kCFStringEncodingInvalidId }
};
diff --git a/WebCore/kwq/KWQCharsets.h b/WebCore/kwq/KWQCharsets.h
index 83f600c..db54a18 100644
--- a/WebCore/kwq/KWQCharsets.h
+++ b/WebCore/kwq/KWQCharsets.h
@@ -31,7 +31,4 @@
CFStringEncoding KWQCFStringEncodingFromIANACharsetName(const char *);
const char *KWQCFStringEncodingToIANACharsetName(CFStringEncoding);
-CFStringEncoding KWQCFStringEncodingFromMIB(int mib);
-int KWQCFStringEncodingToMIB(CFStringEncoding);
-
#endif /* KWQCHARSETS_H_ */
diff --git a/WebCore/kwq/KWQCharsets.mm b/WebCore/kwq/KWQCharsets.mm
index e39c2d9..4a96a21 100644
--- a/WebCore/kwq/KWQCharsets.mm
+++ b/WebCore/kwq/KWQCharsets.mm
@@ -27,7 +27,6 @@
struct CharsetEntry {
const char *name;
- int mib;
CFStringEncoding encoding;
};
@@ -40,25 +39,16 @@ static CFHashCode encodingNameHash(const void *value);
static CFDictionaryKeyCallBacks encodingNameKeyCallbacks = { 0, NULL, NULL, NULL, encodingNamesEqual, encodingNameHash };
static CFMutableDictionaryRef nameToEncoding = NULL;
-static CFMutableDictionaryRef mibToEncoding = NULL;
static CFMutableDictionaryRef encodingToName = NULL;
-static CFMutableDictionaryRef encodingToMIB = NULL;
static void buildDictionaries()
{
nameToEncoding = CFDictionaryCreateMutable(NULL, 0, &encodingNameKeyCallbacks, NULL);
- mibToEncoding = CFDictionaryCreateMutable(NULL, 0, NULL, NULL);
encodingToName = CFDictionaryCreateMutable(NULL, 0, NULL, NULL);
- encodingToMIB = CFDictionaryCreateMutable(NULL, 0, NULL, NULL);
for (int i = 0; table[i].name != NULL; i++) {
CFDictionarySetValue(nameToEncoding, table[i].name, (void *)table[i].encoding);
CFDictionarySetValue(encodingToName, (void *)table[i].encoding, table[i].name);
-
- if (table[i].mib != -1) {
- CFDictionarySetValue(mibToEncoding, (void *)table[i].mib, (void *)table[i].encoding);
- CFDictionarySetValue(encodingToMIB, (void *)table[i].encoding, (void *)table[i].mib);
- }
}
}
@@ -75,20 +65,6 @@ CFStringEncoding KWQCFStringEncodingFromIANACharsetName(const char *name)
return (CFStringEncoding)value;
}
-
-CFStringEncoding KWQCFStringEncodingFromMIB(int mib)
-{
- if (mibToEncoding == NULL) {
- buildDictionaries();
- }
-
- const void *value;
- if (!CFDictionaryGetValueIfPresent(mibToEncoding, (void *)mib, &value)) {
- return kCFStringEncodingInvalidId;
- }
- return (CFStringEncoding)value;
-}
-
const char *KWQCFStringEncodingToIANACharsetName(CFStringEncoding encoding)
{
if (encodingToName == NULL) {
@@ -102,19 +78,6 @@ const char *KWQCFStringEncodingToIANACharsetName(CFStringEncoding encoding)
return (const char *)value;
}
-int KWQCFStringEncodingToMIB(CFStringEncoding encoding)
-{
- if (encodingToMIB == NULL) {
- buildDictionaries();
- }
-
- const void *value;
- if (!CFDictionaryGetValueIfPresent(encodingToMIB, (void *)encoding, &value)) {
- return -1;
- }
- return (int)value;
-}
-
static Boolean encodingNamesEqual(const void *value1, const void *value2)
{
const char *s1 = (const char *)value1;
diff --git a/WebCore/kwq/KWQTextCodec.h b/WebCore/kwq/KWQTextCodec.h
index 452d1b1..128d8ab 100644
--- a/WebCore/kwq/KWQTextCodec.h
+++ b/WebCore/kwq/KWQTextCodec.h
@@ -33,14 +33,13 @@ class QTextDecoder;
class QTextCodec {
public:
- static QTextCodec *codecForMib(int);
static QTextCodec *codecForName(const char *);
static QTextCodec *codecForLocale();
QTextCodec(CFStringEncoding e) : _encoding(e) { }
- const char* name() const;
- int mibEnum() const;
+ const char *name() const;
+ bool isISOLatin1Hebrew() const;
QTextDecoder *makeDecoder() const;
@@ -49,8 +48,6 @@ public:
QString toUnicode(const char *, int) const;
QString toUnicode(const QByteArray &, int) const;
- CFStringEncoding encoding() const { return _encoding; }
-
private:
CFStringEncoding _encoding;
};
diff --git a/WebCore/kwq/KWQTextCodec.mm b/WebCore/kwq/KWQTextCodec.mm
index 4d8127d..9b5a462 100644
--- a/WebCore/kwq/KWQTextCodec.mm
+++ b/WebCore/kwq/KWQTextCodec.mm
@@ -30,14 +30,14 @@
class KWQTextDecoder : public QTextDecoder {
public:
- KWQTextDecoder(const QTextCodec &c) : _codec(c), _state(atStart), _haveBufferedByte(false) { }
+ KWQTextDecoder(CFStringEncoding e) : _encoding(e), _state(atStart), _haveBufferedByte(false) { }
QString toUnicode(const char *chs, int len);
private:
QString convertUTF16(const unsigned char *chs, int len);
QString convertUsingTEC(const UInt8 *chs, int len);
- QTextCodec _codec;
+ CFStringEncoding _encoding;
// State for Unicode decoding.
enum UnicodeEndianState {
@@ -67,11 +67,6 @@ static QTextCodec *codecForCFStringEncoding(CFStringEncoding encoding)
return codec;
}
-QTextCodec *QTextCodec::codecForMib(int mib)
-{
- return codecForCFStringEncoding(KWQCFStringEncodingFromMIB(mib));
-}
-
QTextCodec *QTextCodec::codecForName(const char *name)
{
return codecForCFStringEncoding(KWQCFStringEncodingFromIANACharsetName(name));
@@ -87,14 +82,9 @@ const char *QTextCodec::name() const
return KWQCFStringEncodingToIANACharsetName(_encoding);
}
-int QTextCodec::mibEnum() const
-{
- return KWQCFStringEncodingToMIB(_encoding);
-}
-
QTextDecoder *QTextCodec::makeDecoder() const
{
- return new KWQTextDecoder(*this);
+ return new KWQTextDecoder(_encoding);
}
QCString QTextCodec::fromUnicode(const QString &qcs) const
@@ -111,12 +101,17 @@ QCString QTextCodec::fromUnicode(const QString &qcs) const
QString QTextCodec::toUnicode(const char *chs, int len) const
{
- return KWQTextDecoder(*this).toUnicode(chs, len);
+ return KWQTextDecoder(_encoding).toUnicode(chs, len);
}
QString QTextCodec::toUnicode(const QByteArray &qba, int len) const
{
- return KWQTextDecoder(*this).toUnicode(qba, len);
+ return KWQTextDecoder(_encoding).toUnicode(qba, len);
+}
+
+bool QTextCodec::isISOLatin1Hebrew() const
+{
+ return _encoding == kCFStringEncodingISOLatinHebrew;
}
QString KWQTextDecoder::convertUTF16(const unsigned char *s, int length)
@@ -216,12 +211,12 @@ QString KWQTextDecoder::convertUsingTEC(const UInt8 *chs, int len)
static TECObjectRef converter;
static CFStringEncoding converterEncoding = kCFStringEncodingInvalidId;
OSStatus status;
- if (_codec.encoding() != converterEncoding) {
+ if (_encoding != converterEncoding) {
TECObjectRef newConverter;
- status = TECCreateConverter(&newConverter, _codec.encoding(),
+ status = TECCreateConverter(&newConverter, _encoding,
CreateTextEncoding(kTextEncodingUnicodeDefault, kTextEncodingDefaultVariant, kUnicode16BitFormat));
if (status) {
- ERROR("the Text Encoding Converter won't convert from text encoding 0x%X, error %d", _codec.encoding(), status);
+ ERROR("the Text Encoding Converter won't convert from text encoding 0x%X, error %d", _encoding, status);
return QString::null;
}
if (converter) {
@@ -289,7 +284,7 @@ QString KWQTextDecoder::toUnicode(const char *chs, int len)
return QString::null;
}
- if (_codec.encoding() == kCFStringEncodingUnicode) {
+ if (_encoding == kCFStringEncodingUnicode) {
return convertUTF16(reinterpret_cast<const unsigned char *>(chs), len);
}
diff --git a/WebCore/kwq/mac-encodings.txt b/WebCore/kwq/mac-encodings.txt
index 61cdd3a..a9808ce 100644
--- a/WebCore/kwq/mac-encodings.txt
+++ b/WebCore/kwq/mac-encodings.txt
@@ -8,14 +8,12 @@ WindowsLatin1: windows-1252, winlatin1, x-ansi
ISOLatin1: 8859_1, iso-8859-1, iso8859-1
NextStepLatin: x-nextstep
ASCII: iso-ir-6us, us-ascii
-Unicode: iso-10646-ucs-2 # utf-16be, unicodeFFFE, unicode? (would adding these help us?)
+Unicode: iso-10646-ucs-2, unicode, unicodefeff, unicodefffe, utf-16be, utf-16le
# Note the bogus entry below that makes UTF-16 mean UTF-8.
# We do this because Internet Explorer does, and because web pages say UTF-16 and mean UTF-8.
# See bug 2969378 and http://zingermans.com/ for a concrete example.
-# It's not clear what to do about 16-bit encodings in general.
-# We may have to add code to deal with encodings vs. character sets
-# that understands that characters sets in <head> can't change to a 16-bit
-# encoding, while character sets from the server can.
+# We may have to add code that understands that characters sets in <head> can't change to a 16-bit
+# encoding, but character set headers from the server can.
UTF8: unicode-1-1-utf-8, unicode-2-0-utf-8, utf-16, utf-8, x-unicode-2-0-utf-8
NonLossyASCII
@@ -72,8 +70,6 @@ ISOLatin4: iso-8859-4
ISOLatinCyrillic: iso-8859-5
ISOLatinArabic: iso-8859-6
ISOLatinGreek: iso-8859-7
- # This includes both logical and visual variants of Hebrew.
- # That's probably not going to work in the real thing.
ISOLatinHebrew: dos-862, iso-8859-8, iso-8859-8-e, iso-8859-8-i, logical, visual
ISOLatin5: iso-8859-9
ISOLatin6: iso-8859-10
diff --git a/WebCore/kwq/make-charset-table.pl b/WebCore/kwq/make-charset-table.pl
index 4d5c51d..1c3d9ae 100755
--- a/WebCore/kwq/make-charset-table.pl
+++ b/WebCore/kwq/make-charset-table.pl
@@ -5,7 +5,6 @@ use strict;
my $MAC_SUPPORTED_ONLY = 1;
-my %MIBNumberFromCharsetsFile;
my %aliasesFromCharsetsFile;
my %namesWritten;
@@ -23,14 +22,13 @@ sub error ($)
sub emit_line
{
- my ($name, $mibNum, $encodingNum) = @_;
+ my ($name, $encodingNum) = @_;
error "$name shows up twice in output" if $namesWritten{$name};
$namesWritten{$name} = 1;
$encodingNum = "kCFStringEncoding" . $encodingNum if $encodingNum !~ /^[0-9]/;
- $mibNum = -1 if !$mibNum;
- $output .= " { \"$name\", $mibNum, $encodingNum },\n";
+ $output .= " { \"$name\", $encodingNum },\n";
}
sub process_mac_encodings
@@ -91,14 +89,8 @@ sub process_mac_encodings
}
# write out
- my $MIBNumber;
- my @aliases = sort keys %aliases;
- for my $alias (@aliases) {
- $MIBNumber = $MIBNumberFromCharsetsFile{$alias} if $MIBNumberFromCharsetsFile{$alias};
- }
-
- for my $alias (@aliases) {
- emit_line($alias, $MIBNumber, $MacName);
+ for my $alias (sort keys %aliases) {
+ emit_line($alias, $MacName);
}
} elsif (/./) {
my $MacName = $_;
@@ -113,14 +105,13 @@ sub process_mac_encodings
sub process_iana_charset
{
- my ($canonical_name, $mib_enum, @aliases) = @_;
+ my ($canonical_name, @aliases) = @_;
return if !$canonical_name;
my @names = sort $canonical_name, @aliases;
for my $name (@names) {
- $MIBNumberFromCharsetsFile{$name} = $mib_enum if $mib_enum;
$aliasesFromCharsetsFile{$name} = \@names;
}
}
@@ -134,7 +125,6 @@ sub process_iana_charsets
my %seen;
my $canonical_name;
- my $mib_enum;
my @aliases;
while (<CHARSETS>) {
@@ -145,13 +135,10 @@ sub process_iana_charsets
error "saw $new_canonical_name twice in character-sets.txt", if $seen{$new_canonical_name};
$seen{$new_canonical_name} = 1;
- process_iana_charset $canonical_name, $mib_enum, @aliases;
+ process_iana_charset $canonical_name, @aliases;
$canonical_name = $new_canonical_name;
- $mib_enum = "";
@aliases = ();
- } elsif ((my $new_mib_enum) = /MIBenum: ([^ \t]*).*/) {
- $mib_enum = $new_mib_enum;
} elsif ((my $new_alias) = /Alias: ([^ \t]*).*/) {
next if $new_alias eq "None";
@@ -164,7 +151,7 @@ sub process_iana_charsets
}
}
- process_iana_charset $canonical_name, $mib_enum, @aliases;
+ process_iana_charset $canonical_name, @aliases;
close CHARSETS;
}
@@ -178,4 +165,4 @@ exit 1 if $error;
print "static const CharsetEntry table[] = {\n";
print $output;
-print " { NULL, -1, $invalid_encoding }\n};\n";
+print " { 0, $invalid_encoding }\n};\n";
--
WebKit Debian packaging
More information about the Pkg-webkit-commits
mailing list