diff --git a/browser/installer/package-manifest.in b/browser/installer/package-manifest.in index 7a5ba918e48..715a35f533f 100644 --- a/browser/installer/package-manifest.in +++ b/browser/installer/package-manifest.in @@ -51,6 +51,9 @@ #else @BINPATH@/@DLL_PREFIX@xul@DLL_SUFFIX@ #endif +#ifdef XP_WIN +@BINPATH@/components/@DLL_PREFIX@uconvd@DLL_SUFFIX@ +#endif #ifdef XP_MACOSX @BINPATH@/@MOZ_CHILD_PROCESS_NAME@.app/ @BINPATH@/@DLL_PREFIX@plugin_child_interpose@DLL_SUFFIX@ diff --git a/intl/uconv/datamodule/Makefile.in b/intl/uconv/datamodule/Makefile.in new file mode 100644 index 00000000000..018b7c486ed --- /dev/null +++ b/intl/uconv/datamodule/Makefile.in @@ -0,0 +1,96 @@ +# vim:set noet ts=8: +# ***** BEGIN LICENSE BLOCK ***** +# Version: MPL 1.1/GPL 2.0/LGPL 2.1 +# +# The contents of this file are subject to the Mozilla Public License Version +# 1.1 (the "License"); you may not use this file except in compliance with +# the License. You may obtain a copy of the License at +# http://www.mozilla.org/MPL/ +# +# Software distributed under the License is distributed on an "AS IS" basis, +# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License +# for the specific language governing rights and limitations under the +# License. +# +# The Original Code is mozilla.org code. +# +# The Initial Developer of the Original Code is +# Netscape Communications Corporation. +# Portions created by the Initial Developer are Copyright (C) 1998 +# the Initial Developer. All Rights Reserved. +# +# Contributor(s): +# +# Alternatively, the contents of this file may be used under the terms of +# either of the GNU General Public License Version 2 or later (the "GPL"), +# or the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), +# in which case the provisions of the GPL or the LGPL are applicable instead +# of those above. If you wish to allow use of your version of this file only +# under the terms of either the GPL or the LGPL, and not to allow others to +# use your version of this file under the terms of the MPL, indicate your +# decision by deleting the provisions above and replace them with the notice +# and other provisions required by the GPL or the LGPL. If you do not delete +# the provisions above, a recipient may use your version of this file under +# the terms of any one of the MPL, the GPL or the LGPL. +# +# ***** END LICENSE BLOCK ***** + +DEPTH = ../../.. +topsrcdir = @top_srcdir@ +srcdir = @srcdir@ +VPATH = @srcdir@ + +include $(DEPTH)/config/autoconf.mk + +MODULE = uconvd +LIBRARY_NAME = uconvd +EXPORT_LIBRARY = 1 +IS_COMPONENT = 1 +MODULE_NAME = UConvData +ifeq (WINNT,$(OS_TARGET)) +FORCE_SHARED_LIB = 1 +else +LIBXUL_LIBRARY = 1 +endif +# To avoid conflict with OS/2 system uconv.dll +SHORT_LIBNAME = mzuconvd + +CPPSRCS = \ + nsUConvDataModule.cpp \ + $(NULL) + +LOCAL_INCLUDES = -I$(srcdir)/../util \ + -I$(srcdir)/../ucvlatin \ + -I$(srcdir)/../ucvibm \ + -I$(srcdir)/../ucvja \ + -I$(srcdir)/../ucvtw2 \ + -I$(srcdir)/../ucvtw \ + -I$(srcdir)/../ucvko \ + -I$(srcdir)/../ucvcn \ + $(NULL) + +EXTRA_DSO_LDOPTS += \ + $(XPCOM_GLUE_LDOPTS) \ + $(XPCOM_LIBS) \ + $(MOZ_JS_LIBS) \ + $(NSPR_LIBS) \ + $(MOZALLOC_LIB) \ + $(NULL) + +SHARED_LIBRARY_LIBS += \ + ../ucvlatin/$(LIB_PREFIX)ucvlatin_s.$(LIB_SUFFIX) \ + ../ucvibm/$(LIB_PREFIX)ucvibm_s.$(LIB_SUFFIX) \ + ../ucvja/$(LIB_PREFIX)ucvja_s.$(LIB_SUFFIX) \ + ../ucvtw2/$(LIB_PREFIX)ucvtw2_s.$(LIB_SUFFIX) \ + ../ucvtw/$(LIB_PREFIX)ucvtw_s.$(LIB_SUFFIX) \ + ../ucvko/$(LIB_PREFIX)ucvko_s.$(LIB_SUFFIX) \ + ../ucvcn/$(LIB_PREFIX)ucvcn_s.$(LIB_SUFFIX) \ + $(NULL) + +ifdef FORCE_SHARED_LIB +SHARED_LIBRARY_LIBS += \ + ../util/external/$(LIB_PREFIX)ucvxutil_s.$(LIB_SUFFIX) \ + $(NULL) +endif + +include $(topsrcdir)/config/rules.mk diff --git a/intl/uconv/datamodule/nsUConvDataModule.cpp b/intl/uconv/datamodule/nsUConvDataModule.cpp new file mode 100644 index 00000000000..117dfcd18f5 --- /dev/null +++ b/intl/uconv/datamodule/nsUConvDataModule.cpp @@ -0,0 +1,1089 @@ +/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ +/* ***** BEGIN LICENSE BLOCK ***** + * Version: MPL 1.1/GPL 2.0/LGPL 2.1 + * + * The contents of this file are subject to the Mozilla Public License Version + * 1.1 (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * http://www.mozilla.org/MPL/ + * + * Software distributed under the License is distributed on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License + * for the specific language governing rights and limitations under the + * License. + * + * The Original Code is Mozilla Communicator client code. + * + * The Initial Developer of the Original Code is + * Netscape Communications Corporation. + * Portions created by the Initial Developer are Copyright (C) 1998 + * the Initial Developer. All Rights Reserved. + * + * Contributor(s): + * Pierre Phaneuf + * IBM Corporation + * + * Alternatively, the contents of this file may be used under the terms of + * either of the GNU General Public License Version 2 or later (the "GPL"), + * or the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), + * in which case the provisions of the GPL or the LGPL are applicable instead + * of those above. If you wish to allow use of your version of this file only + * under the terms of either the GPL or the LGPL, and not to allow others to + * use your version of this file under the terms of the MPL, indicate your + * decision by deleting the provisions above and replace them with the notice + * and other provisions required by the GPL or the LGPL. If you do not delete + * the provisions above, a recipient may use your version of this file under + * the terms of any one of the MPL, the GPL or the LGPL. + * + * ***** END LICENSE BLOCK ***** */ +#include "nsCOMPtr.h" +#include "nsCRT.h" +#include "mozilla/ModuleUtils.h" +#include "nsIComponentManager.h" +#include "nsICategoryManager.h" +#include "nsICharsetConverterManager.h" +#include "nsEncoderDecoderUtils.h" +#include "nsIUnicodeDecoder.h" +#include "nsIUnicodeEncoder.h" +#include "nsIServiceManager.h" + +#include "mozilla/BlockingResourceBase.h" + +#include "nsUConvCID.h" + +#include "nsIFile.h" + +#include "nsCRT.h" + +// ucvlatin +#include "nsUCvLatinCID.h" +#include "nsUCvLatinDll.h" +#include "nsAsciiToUnicode.h" +#include "nsISO88592ToUnicode.h" +#include "nsISO88593ToUnicode.h" +#include "nsISO88594ToUnicode.h" +#include "nsISO88595ToUnicode.h" +#include "nsISO88596ToUnicode.h" +#include "nsISO88596EToUnicode.h" +#include "nsISO88596IToUnicode.h" +#include "nsISO88597ToUnicode.h" +#include "nsISO88598ToUnicode.h" +#include "nsISO88598EToUnicode.h" +#include "nsISO88598IToUnicode.h" +#include "nsISO88599ToUnicode.h" +#include "nsISO885910ToUnicode.h" +#include "nsISO885913ToUnicode.h" +#include "nsISO885914ToUnicode.h" +#include "nsISO885915ToUnicode.h" +#include "nsISO885916ToUnicode.h" +#include "nsISOIR111ToUnicode.h" +#include "nsCP1250ToUnicode.h" +#include "nsCP1251ToUnicode.h" +#include "nsCP1253ToUnicode.h" +#include "nsCP1254ToUnicode.h" +#include "nsCP1255ToUnicode.h" +#include "nsCP1256ToUnicode.h" +#include "nsCP1257ToUnicode.h" +#include "nsCP1258ToUnicode.h" +#include "nsCP874ToUnicode.h" +#include "nsISO885911ToUnicode.h" +#include "nsTIS620ToUnicode.h" +#include "nsCP866ToUnicode.h" +#include "nsKOI8RToUnicode.h" +#include "nsKOI8UToUnicode.h" +#include "nsMacCEToUnicode.h" +#include "nsMacGreekToUnicode.h" +#include "nsMacTurkishToUnicode.h" +#include "nsMacCroatianToUnicode.h" +#include "nsMacRomanianToUnicode.h" +#include "nsMacCyrillicToUnicode.h" +#include "nsMacIcelandicToUnicode.h" +#include "nsGEOSTD8ToUnicode.h" +#include "nsARMSCII8ToUnicode.h" +#include "nsTCVN5712ToUnicode.h" +#include "nsVISCIIToUnicode.h" +#include "nsVPSToUnicode.h" +#include "nsUTF7ToUnicode.h" +#include "nsMUTF7ToUnicode.h" +#include "nsUCS2BEToUnicode.h" +#include "nsT61ToUnicode.h" +#include "nsUserDefinedToUnicode.h" +#include "nsUnicodeToAscii.h" +#include "nsUnicodeToISO88592.h" +#include "nsUnicodeToISO88593.h" +#include "nsUnicodeToISO88594.h" +#include "nsUnicodeToISO88595.h" +#include "nsUnicodeToISO88596.h" +#include "nsUnicodeToISO88596E.h" +#include "nsUnicodeToISO88596I.h" +#include "nsUnicodeToISO88597.h" +#include "nsUnicodeToISO88598.h" +#include "nsUnicodeToISO88598E.h" +#include "nsUnicodeToISO88598I.h" +#include "nsUnicodeToISO88599.h" +#include "nsUnicodeToISO885910.h" +#include "nsUnicodeToISO885913.h" +#include "nsUnicodeToISO885914.h" +#include "nsUnicodeToISO885915.h" +#include "nsUnicodeToISO885916.h" +#include "nsUnicodeToISOIR111.h" +#include "nsUnicodeToCP1250.h" +#include "nsUnicodeToCP1251.h" +#include "nsUnicodeToCP1253.h" +#include "nsUnicodeToCP1254.h" +#include "nsUnicodeToCP1255.h" +#include "nsUnicodeToCP1256.h" +#include "nsUnicodeToCP1257.h" +#include "nsUnicodeToCP1258.h" +#include "nsUnicodeToCP874.h" +#include "nsUnicodeToISO885911.h" +#include "nsUnicodeToTIS620.h" +#include "nsUnicodeToCP866.h" +#include "nsUnicodeToKOI8R.h" +#include "nsUnicodeToKOI8U.h" +#include "nsUnicodeToMacCE.h" +#include "nsUnicodeToMacGreek.h" +#include "nsUnicodeToMacTurkish.h" +#include "nsUnicodeToMacCroatian.h" +#include "nsUnicodeToMacRomanian.h" +#include "nsUnicodeToMacCyrillic.h" +#include "nsUnicodeToMacIcelandic.h" +#include "nsUnicodeToGEOSTD8.h" +#include "nsUnicodeToARMSCII8.h" +#include "nsUnicodeToTCVN5712.h" +#include "nsUnicodeToVISCII.h" +#include "nsUnicodeToVPS.h" +#include "nsUnicodeToUTF7.h" +#include "nsUnicodeToMUTF7.h" +#include "nsUnicodeToUCS2BE.h" +#include "nsUnicodeToT61.h" +#include "nsUnicodeToUserDefined.h" +#include "nsUnicodeToSymbol.h" +#include "nsUnicodeToZapfDingbat.h" +#include "nsUnicodeToAdobeEuro.h" +#include "nsMacArabicToUnicode.h" +#include "nsMacDevanagariToUnicode.h" +#include "nsMacFarsiToUnicode.h" +#include "nsMacGujaratiToUnicode.h" +#include "nsMacGurmukhiToUnicode.h" +#include "nsMacHebrewToUnicode.h" +#include "nsUnicodeToMacArabic.h" +#include "nsUnicodeToMacDevanagari.h" +#include "nsUnicodeToMacFarsi.h" +#include "nsUnicodeToMacGujarati.h" +#include "nsUnicodeToMacGurmukhi.h" +#include "nsUnicodeToMacHebrew.h" +#include "nsUnicodeToTSCII.h" + +// ucvibm +#include "nsUCvIBMCID.h" +#include "nsUCvIBMDll.h" +#include "nsCP850ToUnicode.h" +#include "nsCP852ToUnicode.h" +#include "nsCP855ToUnicode.h" +#include "nsCP857ToUnicode.h" +#include "nsCP862ToUnicode.h" +#include "nsCP864ToUnicode.h" +#include "nsCP864iToUnicode.h" +#ifdef XP_OS2 +#include "nsCP869ToUnicode.h" +#include "nsCP1125ToUnicode.h" +#include "nsCP1131ToUnicode.h" +#endif +#include "nsUnicodeToCP850.h" +#include "nsUnicodeToCP852.h" +#include "nsUnicodeToCP855.h" +#include "nsUnicodeToCP857.h" +#include "nsUnicodeToCP862.h" +#include "nsUnicodeToCP864.h" +#include "nsUnicodeToCP864i.h" +#ifdef XP_OS2 +#include "nsUnicodeToCP869.h" +#include "nsUnicodeToCP1125.h" +#include "nsUnicodeToCP1131.h" +#endif + +// ucvja +#include "nsUCVJACID.h" +#include "nsUCVJA2CID.h" +#include "nsUCVJADll.h" +#include "nsJapaneseToUnicode.h" +#include "nsUnicodeToSJIS.h" +#include "nsUnicodeToEUCJP.h" +#include "nsUnicodeToISO2022JP.h" +#include "nsUnicodeToJISx0201.h" + +// ucvtw2 +#include "nsUCvTW2CID.h" +#include "nsUCvTW2Dll.h" +#include "nsEUCTWToUnicode.h" +#include "nsUnicodeToEUCTW.h" + +// ucvtw +#include "nsUCvTWCID.h" +#include "nsUCvTWDll.h" +#include "nsBIG5ToUnicode.h" +#include "nsUnicodeToBIG5.h" +#include "nsBIG5HKSCSToUnicode.h" +#include "nsUnicodeToBIG5HKSCS.h" +#include "nsUnicodeToHKSCS.h" + +// ucvko +#include "nsUCvKOCID.h" +#include "nsUCvKODll.h" +#include "nsEUCKRToUnicode.h" +#include "nsUnicodeToEUCKR.h" +#include "nsJohabToUnicode.h" +#include "nsUnicodeToJohab.h" +#include "nsCP949ToUnicode.h" +#include "nsUnicodeToCP949.h" +#include "nsISO2022KRToUnicode.h" + +// ucvcn +#include "nsUCvCnCID.h" +#include "nsUCvCnDll.h" +#include "nsHZToUnicode.h" +#include "nsUnicodeToHZ.h" +#include "nsGBKToUnicode.h" +#include "nsUnicodeToGBK.h" +#include "nsGB2312ToUnicodeV2.h" +#include "nsUnicodeToGB2312V2.h" +#include "nsISO2022CNToUnicode.h" +#include "nsUnicodeToISO2022CN.h" +#include "gbku.h" + +NS_CONVERTER_REGISTRY_START +NS_UCONV_REG_UNREG("ISO-8859-1", NS_ISO88591TOUNICODE_CID, NS_UNICODETOISO88591_CID) +NS_UCONV_REG_UNREG("windows-1252", NS_CP1252TOUNICODE_CID, NS_UNICODETOCP1252_CID) +NS_UCONV_REG_UNREG("x-mac-roman", NS_MACROMANTOUNICODE_CID, NS_UNICODETOMACROMAN_CID) +NS_UCONV_REG_UNREG("UTF-8", NS_UTF8TOUNICODE_CID, NS_UNICODETOUTF8_CID) + + // ucvlatin +NS_UCONV_REG_UNREG("us-ascii", NS_ASCIITOUNICODE_CID, NS_UNICODETOASCII_CID) +NS_UCONV_REG_UNREG("ISO-8859-2", NS_ISO88592TOUNICODE_CID, NS_UNICODETOISO88592_CID) +NS_UCONV_REG_UNREG("ISO-8859-3", NS_ISO88593TOUNICODE_CID, NS_UNICODETOISO88593_CID) +NS_UCONV_REG_UNREG("ISO-8859-4", NS_ISO88594TOUNICODE_CID, NS_UNICODETOISO88594_CID) +NS_UCONV_REG_UNREG("ISO-8859-5", NS_ISO88595TOUNICODE_CID, NS_UNICODETOISO88595_CID) +NS_UCONV_REG_UNREG("ISO-8859-6", NS_ISO88596TOUNICODE_CID, NS_UNICODETOISO88596_CID) +NS_UCONV_REG_UNREG("ISO-8859-6-I", NS_ISO88596ITOUNICODE_CID, NS_UNICODETOISO88596I_CID) +NS_UCONV_REG_UNREG("ISO-8859-6-E", NS_ISO88596ETOUNICODE_CID, NS_UNICODETOISO88596E_CID) +NS_UCONV_REG_UNREG("ISO-8859-7", NS_ISO88597TOUNICODE_CID, NS_UNICODETOISO88597_CID) +NS_UCONV_REG_UNREG("ISO-8859-8", NS_ISO88598TOUNICODE_CID, NS_UNICODETOISO88598_CID) +NS_UCONV_REG_UNREG("ISO-8859-8-I", NS_ISO88598ITOUNICODE_CID, NS_UNICODETOISO88598I_CID) +NS_UCONV_REG_UNREG("ISO-8859-8-E", NS_ISO88598ETOUNICODE_CID, NS_UNICODETOISO88598E_CID) +NS_UCONV_REG_UNREG("ISO-8859-9", NS_ISO88599TOUNICODE_CID, NS_UNICODETOISO88599_CID) +NS_UCONV_REG_UNREG("ISO-8859-10", NS_ISO885910TOUNICODE_CID, NS_UNICODETOISO885910_CID) +NS_UCONV_REG_UNREG("ISO-8859-13", NS_ISO885913TOUNICODE_CID, NS_UNICODETOISO885913_CID) +NS_UCONV_REG_UNREG("ISO-8859-14", NS_ISO885914TOUNICODE_CID, NS_UNICODETOISO885914_CID) +NS_UCONV_REG_UNREG("ISO-8859-15", NS_ISO885915TOUNICODE_CID, NS_UNICODETOISO885915_CID) +NS_UCONV_REG_UNREG("ISO-8859-16", NS_ISO885916TOUNICODE_CID, NS_UNICODETOISO885916_CID) +NS_UCONV_REG_UNREG("ISO-IR-111", NS_ISOIR111TOUNICODE_CID, NS_UNICODETOISOIR111_CID) +NS_UCONV_REG_UNREG("windows-1250", NS_CP1250TOUNICODE_CID, NS_UNICODETOCP1250_CID) +NS_UCONV_REG_UNREG("windows-1251", NS_CP1251TOUNICODE_CID, NS_UNICODETOCP1251_CID) +NS_UCONV_REG_UNREG("windows-1253", NS_CP1253TOUNICODE_CID, NS_UNICODETOCP1253_CID) +NS_UCONV_REG_UNREG("windows-1254", NS_CP1254TOUNICODE_CID, NS_UNICODETOCP1254_CID) +NS_UCONV_REG_UNREG("windows-1255", NS_CP1255TOUNICODE_CID, NS_UNICODETOCP1255_CID) +NS_UCONV_REG_UNREG("windows-1256", NS_CP1256TOUNICODE_CID, NS_UNICODETOCP1256_CID) +NS_UCONV_REG_UNREG("windows-1257", NS_CP1257TOUNICODE_CID, NS_UNICODETOCP1257_CID) +NS_UCONV_REG_UNREG("windows-1258", NS_CP1258TOUNICODE_CID, NS_UNICODETOCP1258_CID) +NS_UCONV_REG_UNREG("TIS-620", NS_TIS620TOUNICODE_CID, NS_UNICODETOTIS620_CID) +NS_UCONV_REG_UNREG("windows-874", NS_CP874TOUNICODE_CID, NS_UNICODETOCP874_CID) +NS_UCONV_REG_UNREG("ISO-8859-11", NS_ISO885911TOUNICODE_CID, NS_UNICODETOISO885911_CID) +NS_UCONV_REG_UNREG("IBM866", NS_CP866TOUNICODE_CID, NS_UNICODETOCP866_CID) +NS_UCONV_REG_UNREG("KOI8-R", NS_KOI8RTOUNICODE_CID, NS_UNICODETOKOI8R_CID) +NS_UCONV_REG_UNREG("KOI8-U", NS_KOI8UTOUNICODE_CID, NS_UNICODETOKOI8U_CID) +NS_UCONV_REG_UNREG("x-mac-ce", NS_MACCETOUNICODE_CID, NS_UNICODETOMACCE_CID) +NS_UCONV_REG_UNREG("x-mac-greek", NS_MACGREEKTOUNICODE_CID, NS_UNICODETOMACGREEK_CID) +NS_UCONV_REG_UNREG("x-mac-turkish", NS_MACTURKISHTOUNICODE_CID, NS_UNICODETOMACTURKISH_CID) +NS_UCONV_REG_UNREG("x-mac-croatian", NS_MACCROATIANTOUNICODE_CID, NS_UNICODETOMACCROATIAN_CID) +NS_UCONV_REG_UNREG("x-mac-romanian", NS_MACROMANIANTOUNICODE_CID, NS_UNICODETOMACROMANIAN_CID) +NS_UCONV_REG_UNREG("x-mac-cyrillic", NS_MACCYRILLICTOUNICODE_CID, NS_UNICODETOMACCYRILLIC_CID) +NS_UCONV_REG_UNREG("x-mac-icelandic", NS_MACICELANDICTOUNICODE_CID, NS_UNICODETOMACICELANDIC_CID) +NS_UCONV_REG_UNREG("GEOSTD8", NS_GEOSTD8TOUNICODE_CID, NS_UNICODETOGEOSTD8_CID) +NS_UCONV_REG_UNREG("armscii-8", NS_ARMSCII8TOUNICODE_CID, NS_UNICODETOARMSCII8_CID) +NS_UCONV_REG_UNREG("x-viet-tcvn5712", NS_TCVN5712TOUNICODE_CID, NS_UNICODETOTCVN5712_CID) +NS_UCONV_REG_UNREG("VISCII", NS_VISCIITOUNICODE_CID, NS_UNICODETOVISCII_CID) +NS_UCONV_REG_UNREG("x-viet-vps", NS_VPSTOUNICODE_CID, NS_UNICODETOVPS_CID) +NS_UCONV_REG_UNREG("UTF-7", NS_UTF7TOUNICODE_CID, NS_UNICODETOUTF7_CID) +NS_UCONV_REG_UNREG("x-imap4-modified-utf7", NS_MUTF7TOUNICODE_CID, NS_UNICODETOMUTF7_CID) +NS_UCONV_REG_UNREG("UTF-16", NS_UTF16TOUNICODE_CID, NS_UNICODETOUTF16_CID) +NS_UCONV_REG_UNREG("UTF-16BE", NS_UTF16BETOUNICODE_CID, NS_UNICODETOUTF16BE_CID) +NS_UCONV_REG_UNREG("UTF-16LE", NS_UTF16LETOUNICODE_CID, NS_UNICODETOUTF16LE_CID) +NS_UCONV_REG_UNREG("T.61-8bit", NS_T61TOUNICODE_CID, NS_UNICODETOT61_CID) +NS_UCONV_REG_UNREG("x-user-defined", NS_USERDEFINEDTOUNICODE_CID, NS_UNICODETOUSERDEFINED_CID) +NS_UCONV_REG_UNREG("x-mac-arabic" , NS_MACARABICTOUNICODE_CID, NS_UNICODETOMACARABIC_CID) +NS_UCONV_REG_UNREG("x-mac-devanagari" , NS_MACDEVANAGARITOUNICODE_CID, NS_UNICODETOMACDEVANAGARI_CID) +NS_UCONV_REG_UNREG("x-mac-farsi" , NS_MACFARSITOUNICODE_CID, NS_UNICODETOMACFARSI_CID) +NS_UCONV_REG_UNREG("x-mac-gurmukhi" , NS_MACGURMUKHITOUNICODE_CID, NS_UNICODETOMACGURMUKHI_CID) +NS_UCONV_REG_UNREG("x-mac-gujarati" , NS_MACGUJARATITOUNICODE_CID, NS_UNICODETOMACGUJARATI_CID) +NS_UCONV_REG_UNREG("x-mac-hebrew" , NS_MACHEBREWTOUNICODE_CID, NS_UNICODETOMACHEBREW_CID) + +NS_UCONV_REG_UNREG_ENCODER("Adobe-Symbol-Encoding" , NS_UNICODETOSYMBOL_CID) +NS_UCONV_REG_UNREG_ENCODER("x-zapf-dingbats" , NS_UNICODETOZAPFDINGBATS_CID) +NS_UCONV_REG_UNREG_ENCODER("x-tscii", NS_UNICODETOTSCII_CID) +NS_UCONV_REG_UNREG_ENCODER("x-tamilttf-0", NS_UNICODETOTAMILTTF_CID) + + // ucvibm +NS_UCONV_REG_UNREG("IBM850", NS_CP850TOUNICODE_CID, NS_UNICODETOCP850_CID) +NS_UCONV_REG_UNREG("IBM852", NS_CP852TOUNICODE_CID, NS_UNICODETOCP852_CID) +NS_UCONV_REG_UNREG("IBM855", NS_CP855TOUNICODE_CID, NS_UNICODETOCP855_CID) +NS_UCONV_REG_UNREG("IBM857", NS_CP857TOUNICODE_CID, NS_UNICODETOCP857_CID) +NS_UCONV_REG_UNREG("IBM862", NS_CP862TOUNICODE_CID, NS_UNICODETOCP862_CID) +NS_UCONV_REG_UNREG("IBM864", NS_CP864TOUNICODE_CID, NS_UNICODETOCP864_CID) +NS_UCONV_REG_UNREG("IBM864i", NS_CP864ITOUNICODE_CID, NS_UNICODETOCP864I_CID) +#ifdef XP_OS2 +NS_UCONV_REG_UNREG("IBM869", NS_CP869TOUNICODE_CID, NS_UNICODETOCP869_CID) +NS_UCONV_REG_UNREG("IBM1125", NS_CP1125TOUNICODE_CID, NS_UNICODETOCP1125_CID) +NS_UCONV_REG_UNREG("IBM1131", NS_CP1131TOUNICODE_CID, NS_UNICODETOCP1131_CID) +#endif + + // ucvja +NS_UCONV_REG_UNREG("Shift_JIS", NS_SJISTOUNICODE_CID, NS_UNICODETOSJIS_CID) +NS_UCONV_REG_UNREG("ISO-2022-JP", NS_ISO2022JPTOUNICODE_CID, NS_UNICODETOISO2022JP_CID) +NS_UCONV_REG_UNREG("EUC-JP", NS_EUCJPTOUNICODE_CID, NS_UNICODETOEUCJP_CID) + +NS_UCONV_REG_UNREG_ENCODER("jis_0201" , NS_UNICODETOJISX0201_CID) + + // ucvtw2 +NS_UCONV_REG_UNREG("x-euc-tw", NS_EUCTWTOUNICODE_CID, NS_UNICODETOEUCTW_CID) + + // ucvtw +NS_UCONV_REG_UNREG("Big5", NS_BIG5TOUNICODE_CID, NS_UNICODETOBIG5_CID) +NS_UCONV_REG_UNREG("Big5-HKSCS", NS_BIG5HKSCSTOUNICODE_CID, NS_UNICODETOBIG5HKSCS_CID) + +NS_UCONV_REG_UNREG_ENCODER("hkscs-1" , NS_UNICODETOHKSCS_CID) + + // ucvko +NS_UCONV_REG_UNREG("EUC-KR", NS_EUCKRTOUNICODE_CID, NS_UNICODETOEUCKR_CID) +NS_UCONV_REG_UNREG("x-johab", NS_JOHABTOUNICODE_CID, NS_UNICODETOJOHAB_CID) +NS_UCONV_REG_UNREG("x-windows-949", NS_CP949TOUNICODE_CID, NS_UNICODETOCP949_CID) +NS_UCONV_REG_UNREG_DECODER("ISO-2022-KR", NS_ISO2022KRTOUNICODE_CID) + +// ucvcn +NS_UCONV_REG_UNREG("GB2312", NS_GB2312TOUNICODE_CID, NS_UNICODETOGB2312_CID) +NS_UCONV_REG_UNREG("gbk", NS_GBKTOUNICODE_CID, NS_UNICODETOGBK_CID) +NS_UCONV_REG_UNREG("HZ-GB-2312", NS_HZTOUNICODE_CID, NS_UNICODETOHZ_CID) +NS_UCONV_REG_UNREG("gb18030", NS_GB18030TOUNICODE_CID, NS_UNICODETOGB18030_CID) +NS_UCONV_REG_UNREG_DECODER("ISO-2022-CN", NS_ISO2022CNTOUNICODE_CID) + +NS_CONVERTER_REGISTRY_END + +// ucvlatin +NS_GENERIC_FACTORY_CONSTRUCTOR(nsUTF7ToUnicode) +NS_GENERIC_FACTORY_CONSTRUCTOR(nsMUTF7ToUnicode) +NS_GENERIC_FACTORY_CONSTRUCTOR(nsUTF16ToUnicode) +NS_GENERIC_FACTORY_CONSTRUCTOR(nsUTF16BEToUnicode) +NS_GENERIC_FACTORY_CONSTRUCTOR(nsUTF16LEToUnicode) +NS_GENERIC_FACTORY_CONSTRUCTOR(nsUnicodeToUTF7) +NS_GENERIC_FACTORY_CONSTRUCTOR(nsUnicodeToMUTF7) +NS_GENERIC_FACTORY_CONSTRUCTOR(nsUnicodeToUTF16BE) +NS_GENERIC_FACTORY_CONSTRUCTOR(nsUnicodeToUTF16LE) +NS_GENERIC_FACTORY_CONSTRUCTOR(nsUnicodeToUTF16) +NS_GENERIC_FACTORY_CONSTRUCTOR(nsUnicodeToTSCII) +NS_GENERIC_FACTORY_CONSTRUCTOR(nsUnicodeToTamilTTF) + +// ucvibm + +// ucvja +NS_GENERIC_FACTORY_CONSTRUCTOR(nsShiftJISToUnicode) +NS_GENERIC_FACTORY_CONSTRUCTOR(nsEUCJPToUnicodeV2) +NS_GENERIC_FACTORY_CONSTRUCTOR(nsISO2022JPToUnicodeV2) +NS_GENERIC_FACTORY_CONSTRUCTOR(nsUnicodeToISO2022JP) + +// ucvtw2 + +// ucvtw + +// ucvko +NS_GENERIC_FACTORY_CONSTRUCTOR(nsISO2022KRToUnicode) + +// ucvcn +NS_GENERIC_FACTORY_CONSTRUCTOR(nsGB2312ToUnicodeV2) +NS_GENERIC_FACTORY_CONSTRUCTOR(nsUnicodeToGB2312V2) +NS_GENERIC_FACTORY_CONSTRUCTOR(nsGBKToUnicode) +NS_GENERIC_FACTORY_CONSTRUCTOR(nsUnicodeToGBK) +NS_GENERIC_FACTORY_CONSTRUCTOR(nsHZToUnicode) +NS_GENERIC_FACTORY_CONSTRUCTOR(nsUnicodeToHZ) +NS_GENERIC_FACTORY_CONSTRUCTOR(nsGB18030ToUnicode) +NS_GENERIC_FACTORY_CONSTRUCTOR(nsUnicodeToGB18030) +NS_GENERIC_FACTORY_CONSTRUCTOR(nsISO2022CNToUnicode) + + +//---------------------------------------------------------------------------- +// Global functions and data [declaration] + +// ucvja +const PRUint16 g_uf0201Mapping[] = { +#include "jis0201.uf" +}; + +const PRUint16 g_uf0201GLMapping[] = { +#include "jis0201gl.uf" +}; + +const PRUint16 g_uf0208Mapping[] = { +#include "jis0208.uf" +}; + +const PRUint16 g_uf0208extMapping[] = { +#include "jis0208ext.uf" +}; + +// ucvtw2 +const PRUint16 g_ufCNS1MappingTable[] = { +#include "cns_1.uf" +}; + +const PRUint16 g_ufCNS2MappingTable[] = { +#include "cns_2.uf" +}; + +const PRUint16 g_ufCNS3MappingTable[] = { +#include "cns3.uf" +}; + +const PRUint16 g_ufCNS4MappingTable[] = { +#include "cns4.uf" +}; + +const PRUint16 g_ufCNS5MappingTable[] = { +#include "cns5.uf" +}; + +const PRUint16 g_ufCNS6MappingTable[] = { +#include "cns6.uf" +}; + +const PRUint16 g_ufCNS7MappingTable[] = { +#include "cns7.uf" +}; + +const PRUint16 g_utCNS1MappingTable[] = { +#include "cns_1.ut" +}; + +const PRUint16 g_utCNS2MappingTable[] = { +#include "cns_2.ut" +}; + +const PRUint16 g_utCNS3MappingTable[] = { +#include "cns3.ut" +}; + +const PRUint16 g_utCNS4MappingTable[] = { +#include "cns4.ut" +}; + +const PRUint16 g_utCNS5MappingTable[] = { +#include "cns5.ut" +}; + +const PRUint16 g_utCNS6MappingTable[] = { +#include "cns6.ut" +}; + +const PRUint16 g_utCNS7MappingTable[] = { +#include "cns7.ut" +}; + +const PRUint16 g_ASCIIMappingTable[] = { + 0x0001, 0x0004, 0x0005, 0x0008, 0x0000, 0x0000, 0x007F, 0x0000 +}; + +// ucvtw +const PRUint16 g_ufBig5Mapping[] = { +#include "big5.uf" +}; + +const PRUint16 g_utBIG5Mapping[] = { +#include "big5.ut" +}; + +const PRUint16 g_ufBig5HKSCSMapping[] = { +#include "hkscs.uf" +}; + +const PRUint16 g_ASCIIMapping[] = { + 0x0001, 0x0004, 0x0005, 0x0008, 0x0000, 0x0000, 0x007F, 0x0000 +}; + +const PRUint16 g_utBig5HKSCSMapping[] = { +#include "hkscs.ut" +}; + +// ucvko +const PRUint16 g_utKSC5601Mapping[] = { +#include "u20kscgl.ut" +}; + +const PRUint16 g_ufKSC5601Mapping[] = { +#include "u20kscgl.uf" +}; + +const PRUint16 g_ucvko_AsciiMapping[] = { + 0x0001, 0x0004, 0x0005, 0x0008, 0x0000, 0x0000, 0x007F, 0x0000 +}; + +const PRUint16 g_HangulNullMapping[] ={ + 0x0001, 0x0004, 0x0005, 0x0008, 0x0000, 0xAC00, 0xD7A3, 0xAC00 +}; + +const PRUint16 g_ufJohabJamoMapping[] ={ +#include "johabjamo.uf" +}; + +NS_DEFINE_NAMED_CID(NS_ASCIITOUNICODE_CID); +NS_DEFINE_NAMED_CID(NS_ISO88592TOUNICODE_CID); +NS_DEFINE_NAMED_CID(NS_ISO88593TOUNICODE_CID); +NS_DEFINE_NAMED_CID(NS_ISO88594TOUNICODE_CID); +NS_DEFINE_NAMED_CID(NS_ISO88595TOUNICODE_CID); +NS_DEFINE_NAMED_CID(NS_ISO88596TOUNICODE_CID); +NS_DEFINE_NAMED_CID(NS_ISO88596ITOUNICODE_CID); +NS_DEFINE_NAMED_CID(NS_ISO88596ETOUNICODE_CID); +NS_DEFINE_NAMED_CID(NS_ISO88597TOUNICODE_CID); +NS_DEFINE_NAMED_CID(NS_ISO88598TOUNICODE_CID); +NS_DEFINE_NAMED_CID(NS_ISO88598ITOUNICODE_CID); +NS_DEFINE_NAMED_CID(NS_ISO88598ETOUNICODE_CID); +NS_DEFINE_NAMED_CID(NS_ISO88599TOUNICODE_CID); +NS_DEFINE_NAMED_CID(NS_ISO885910TOUNICODE_CID); +NS_DEFINE_NAMED_CID(NS_ISO885913TOUNICODE_CID); +NS_DEFINE_NAMED_CID(NS_ISO885914TOUNICODE_CID); +NS_DEFINE_NAMED_CID(NS_ISO885915TOUNICODE_CID); +NS_DEFINE_NAMED_CID(NS_ISO885916TOUNICODE_CID); +NS_DEFINE_NAMED_CID(NS_ISOIR111TOUNICODE_CID); +NS_DEFINE_NAMED_CID(NS_CP1250TOUNICODE_CID); +NS_DEFINE_NAMED_CID(NS_CP1251TOUNICODE_CID); +NS_DEFINE_NAMED_CID(NS_CP1253TOUNICODE_CID); +NS_DEFINE_NAMED_CID(NS_CP1254TOUNICODE_CID); +NS_DEFINE_NAMED_CID(NS_CP1255TOUNICODE_CID); +NS_DEFINE_NAMED_CID(NS_CP1256TOUNICODE_CID); +NS_DEFINE_NAMED_CID(NS_CP1257TOUNICODE_CID); +NS_DEFINE_NAMED_CID(NS_CP1258TOUNICODE_CID); +NS_DEFINE_NAMED_CID(NS_TIS620TOUNICODE_CID); +NS_DEFINE_NAMED_CID(NS_ISO885911TOUNICODE_CID); +NS_DEFINE_NAMED_CID(NS_CP874TOUNICODE_CID); +NS_DEFINE_NAMED_CID(NS_CP866TOUNICODE_CID); +NS_DEFINE_NAMED_CID(NS_KOI8RTOUNICODE_CID); +NS_DEFINE_NAMED_CID(NS_KOI8UTOUNICODE_CID); +NS_DEFINE_NAMED_CID(NS_MACCETOUNICODE_CID); +NS_DEFINE_NAMED_CID(NS_MACGREEKTOUNICODE_CID); +NS_DEFINE_NAMED_CID(NS_MACTURKISHTOUNICODE_CID); +NS_DEFINE_NAMED_CID(NS_MACCROATIANTOUNICODE_CID); +NS_DEFINE_NAMED_CID(NS_MACROMANIANTOUNICODE_CID); +NS_DEFINE_NAMED_CID(NS_MACCYRILLICTOUNICODE_CID); +NS_DEFINE_NAMED_CID(NS_MACICELANDICTOUNICODE_CID); +NS_DEFINE_NAMED_CID(NS_GEOSTD8TOUNICODE_CID); +NS_DEFINE_NAMED_CID(NS_ARMSCII8TOUNICODE_CID); +NS_DEFINE_NAMED_CID(NS_TCVN5712TOUNICODE_CID); +NS_DEFINE_NAMED_CID(NS_VISCIITOUNICODE_CID); +NS_DEFINE_NAMED_CID(NS_VPSTOUNICODE_CID); +NS_DEFINE_NAMED_CID(NS_UTF7TOUNICODE_CID); +NS_DEFINE_NAMED_CID(NS_MUTF7TOUNICODE_CID); +NS_DEFINE_NAMED_CID(NS_UTF16TOUNICODE_CID); +NS_DEFINE_NAMED_CID(NS_UTF16BETOUNICODE_CID); +NS_DEFINE_NAMED_CID(NS_UTF16LETOUNICODE_CID); +NS_DEFINE_NAMED_CID(NS_T61TOUNICODE_CID); +NS_DEFINE_NAMED_CID(NS_USERDEFINEDTOUNICODE_CID); +NS_DEFINE_NAMED_CID(NS_MACARABICTOUNICODE_CID); +NS_DEFINE_NAMED_CID(NS_MACDEVANAGARITOUNICODE_CID); +NS_DEFINE_NAMED_CID(NS_MACFARSITOUNICODE_CID); +NS_DEFINE_NAMED_CID(NS_MACGURMUKHITOUNICODE_CID); +NS_DEFINE_NAMED_CID(NS_MACGUJARATITOUNICODE_CID); +NS_DEFINE_NAMED_CID(NS_MACHEBREWTOUNICODE_CID); +NS_DEFINE_NAMED_CID(NS_UNICODETOASCII_CID); +NS_DEFINE_NAMED_CID(NS_UNICODETOISO88592_CID); +NS_DEFINE_NAMED_CID(NS_UNICODETOISO88593_CID); +NS_DEFINE_NAMED_CID(NS_UNICODETOISO88594_CID); +NS_DEFINE_NAMED_CID(NS_UNICODETOISO88595_CID); +NS_DEFINE_NAMED_CID(NS_UNICODETOISO88596_CID); +NS_DEFINE_NAMED_CID(NS_UNICODETOISO88596I_CID); +NS_DEFINE_NAMED_CID(NS_UNICODETOISO88596E_CID); +NS_DEFINE_NAMED_CID(NS_UNICODETOISO88597_CID); +NS_DEFINE_NAMED_CID(NS_UNICODETOISO88598_CID); +NS_DEFINE_NAMED_CID(NS_UNICODETOISO88598I_CID); +NS_DEFINE_NAMED_CID(NS_UNICODETOISO88598E_CID); +NS_DEFINE_NAMED_CID(NS_UNICODETOISO88599_CID); +NS_DEFINE_NAMED_CID(NS_UNICODETOISO885910_CID); +NS_DEFINE_NAMED_CID(NS_UNICODETOISO885913_CID); +NS_DEFINE_NAMED_CID(NS_UNICODETOISO885914_CID); +NS_DEFINE_NAMED_CID(NS_UNICODETOISO885915_CID); +NS_DEFINE_NAMED_CID(NS_UNICODETOISO885916_CID); +NS_DEFINE_NAMED_CID(NS_UNICODETOISOIR111_CID); +NS_DEFINE_NAMED_CID(NS_UNICODETOCP1250_CID); +NS_DEFINE_NAMED_CID(NS_UNICODETOCP1251_CID); +NS_DEFINE_NAMED_CID(NS_UNICODETOCP1253_CID); +NS_DEFINE_NAMED_CID(NS_UNICODETOCP1254_CID); +NS_DEFINE_NAMED_CID(NS_UNICODETOCP1255_CID); +NS_DEFINE_NAMED_CID(NS_UNICODETOCP1256_CID); +NS_DEFINE_NAMED_CID(NS_UNICODETOCP1257_CID); +NS_DEFINE_NAMED_CID(NS_UNICODETOCP1258_CID); +NS_DEFINE_NAMED_CID(NS_UNICODETOTIS620_CID); +NS_DEFINE_NAMED_CID(NS_UNICODETOISO885911_CID); +NS_DEFINE_NAMED_CID(NS_UNICODETOCP874_CID); +NS_DEFINE_NAMED_CID(NS_UNICODETOCP866_CID); +NS_DEFINE_NAMED_CID(NS_UNICODETOKOI8R_CID); +NS_DEFINE_NAMED_CID(NS_UNICODETOKOI8U_CID); +NS_DEFINE_NAMED_CID(NS_UNICODETOMACCE_CID); +NS_DEFINE_NAMED_CID(NS_UNICODETOMACGREEK_CID); +NS_DEFINE_NAMED_CID(NS_UNICODETOMACTURKISH_CID); +NS_DEFINE_NAMED_CID(NS_UNICODETOMACCROATIAN_CID); +NS_DEFINE_NAMED_CID(NS_UNICODETOMACROMANIAN_CID); +NS_DEFINE_NAMED_CID(NS_UNICODETOMACCYRILLIC_CID); +NS_DEFINE_NAMED_CID(NS_UNICODETOMACICELANDIC_CID); +NS_DEFINE_NAMED_CID(NS_UNICODETOGEOSTD8_CID); +NS_DEFINE_NAMED_CID(NS_UNICODETOARMSCII8_CID); +NS_DEFINE_NAMED_CID(NS_UNICODETOTCVN5712_CID); +NS_DEFINE_NAMED_CID(NS_UNICODETOVISCII_CID); +NS_DEFINE_NAMED_CID(NS_UNICODETOVPS_CID); +NS_DEFINE_NAMED_CID(NS_UNICODETOUTF7_CID); +NS_DEFINE_NAMED_CID(NS_UNICODETOMUTF7_CID); +NS_DEFINE_NAMED_CID(NS_UNICODETOUTF16BE_CID); +NS_DEFINE_NAMED_CID(NS_UNICODETOUTF16LE_CID); +NS_DEFINE_NAMED_CID(NS_UNICODETOUTF16_CID); +NS_DEFINE_NAMED_CID(NS_UNICODETOT61_CID); +NS_DEFINE_NAMED_CID(NS_UNICODETOUSERDEFINED_CID); +NS_DEFINE_NAMED_CID(NS_UNICODETOSYMBOL_CID); +NS_DEFINE_NAMED_CID(NS_UNICODETOZAPFDINGBATS_CID); +NS_DEFINE_NAMED_CID(NS_UNICODETOADOBEEURO_CID); +NS_DEFINE_NAMED_CID(NS_UNICODETOMACARABIC_CID); +NS_DEFINE_NAMED_CID(NS_UNICODETOMACDEVANAGARI_CID); +NS_DEFINE_NAMED_CID(NS_UNICODETOMACFARSI_CID); +NS_DEFINE_NAMED_CID(NS_UNICODETOMACGURMUKHI_CID); +NS_DEFINE_NAMED_CID(NS_UNICODETOMACGUJARATI_CID); +NS_DEFINE_NAMED_CID(NS_UNICODETOMACHEBREW_CID); +NS_DEFINE_NAMED_CID(NS_UNICODETOTSCII_CID); +NS_DEFINE_NAMED_CID(NS_UNICODETOTAMILTTF_CID); +NS_DEFINE_NAMED_CID(NS_CP850TOUNICODE_CID); +NS_DEFINE_NAMED_CID(NS_CP852TOUNICODE_CID); +NS_DEFINE_NAMED_CID(NS_CP855TOUNICODE_CID); +NS_DEFINE_NAMED_CID(NS_CP857TOUNICODE_CID); +NS_DEFINE_NAMED_CID(NS_CP862TOUNICODE_CID); +NS_DEFINE_NAMED_CID(NS_CP864TOUNICODE_CID); +NS_DEFINE_NAMED_CID(NS_CP864ITOUNICODE_CID); +#ifdef XP_OS2 +NS_DEFINE_NAMED_CID(NS_CP869TOUNICODE_CID); +NS_DEFINE_NAMED_CID(NS_CP1125TOUNICODE_CID); +NS_DEFINE_NAMED_CID(NS_CP1131TOUNICODE_CID); +#endif +NS_DEFINE_NAMED_CID(NS_UNICODETOCP850_CID); +NS_DEFINE_NAMED_CID(NS_UNICODETOCP852_CID); +NS_DEFINE_NAMED_CID(NS_UNICODETOCP855_CID); +NS_DEFINE_NAMED_CID(NS_UNICODETOCP857_CID); +NS_DEFINE_NAMED_CID(NS_UNICODETOCP862_CID); +NS_DEFINE_NAMED_CID(NS_UNICODETOCP864_CID); +NS_DEFINE_NAMED_CID(NS_UNICODETOCP864I_CID); +#ifdef XP_OS2 +NS_DEFINE_NAMED_CID(NS_UNICODETOCP869_CID); +NS_DEFINE_NAMED_CID(NS_UNICODETOCP1125_CID); +NS_DEFINE_NAMED_CID(NS_UNICODETOCP1131_CID); +#endif +NS_DEFINE_NAMED_CID(NS_SJISTOUNICODE_CID); +NS_DEFINE_NAMED_CID(NS_EUCJPTOUNICODE_CID); +NS_DEFINE_NAMED_CID( NS_ISO2022JPTOUNICODE_CID); +NS_DEFINE_NAMED_CID(NS_UNICODETOSJIS_CID); +NS_DEFINE_NAMED_CID(NS_UNICODETOEUCJP_CID); +NS_DEFINE_NAMED_CID(NS_UNICODETOISO2022JP_CID); +NS_DEFINE_NAMED_CID(NS_UNICODETOJISX0201_CID); +NS_DEFINE_NAMED_CID(NS_EUCTWTOUNICODE_CID); +NS_DEFINE_NAMED_CID(NS_UNICODETOEUCTW_CID); +NS_DEFINE_NAMED_CID(NS_UNICODETOBIG5_CID); +NS_DEFINE_NAMED_CID(NS_BIG5TOUNICODE_CID); +NS_DEFINE_NAMED_CID(NS_UNICODETOBIG5HKSCS_CID); +NS_DEFINE_NAMED_CID(NS_UNICODETOHKSCS_CID); +NS_DEFINE_NAMED_CID(NS_BIG5HKSCSTOUNICODE_CID); +NS_DEFINE_NAMED_CID(NS_EUCKRTOUNICODE_CID); +NS_DEFINE_NAMED_CID(NS_UNICODETOEUCKR_CID); +NS_DEFINE_NAMED_CID(NS_JOHABTOUNICODE_CID); +NS_DEFINE_NAMED_CID(NS_UNICODETOJOHAB_CID); +NS_DEFINE_NAMED_CID(NS_CP949TOUNICODE_CID); +NS_DEFINE_NAMED_CID(NS_UNICODETOCP949_CID); +NS_DEFINE_NAMED_CID(NS_ISO2022KRTOUNICODE_CID); +NS_DEFINE_NAMED_CID(NS_GB2312TOUNICODE_CID); +NS_DEFINE_NAMED_CID(NS_UNICODETOGB2312_CID); +NS_DEFINE_NAMED_CID(NS_GBKTOUNICODE_CID); +NS_DEFINE_NAMED_CID(NS_UNICODETOGBK_CID); +NS_DEFINE_NAMED_CID(NS_HZTOUNICODE_CID); +NS_DEFINE_NAMED_CID(NS_UNICODETOHZ_CID); +NS_DEFINE_NAMED_CID(NS_GB18030TOUNICODE_CID); +NS_DEFINE_NAMED_CID(NS_UNICODETOGB18030_CID); +NS_DEFINE_NAMED_CID(NS_ISO2022CNTOUNICODE_CID); + +static const mozilla::Module::CIDEntry kUConvCIDs[] = { + { &kNS_ASCIITOUNICODE_CID, false, NULL, nsAsciiToUnicodeConstructor }, + { &kNS_ISO88592TOUNICODE_CID, false, NULL, nsISO88592ToUnicodeConstructor }, + { &kNS_ISO88593TOUNICODE_CID, false, NULL, nsISO88593ToUnicodeConstructor }, + { &kNS_ISO88594TOUNICODE_CID, false, NULL, nsISO88594ToUnicodeConstructor }, + { &kNS_ISO88595TOUNICODE_CID, false, NULL, nsISO88595ToUnicodeConstructor }, + { &kNS_ISO88596TOUNICODE_CID, false, NULL, nsISO88596ToUnicodeConstructor }, + { &kNS_ISO88596ITOUNICODE_CID, false, NULL, nsISO88596IToUnicodeConstructor }, + { &kNS_ISO88596ETOUNICODE_CID, false, NULL, nsISO88596EToUnicodeConstructor }, + { &kNS_ISO88597TOUNICODE_CID, false, NULL, nsISO88597ToUnicodeConstructor }, + { &kNS_ISO88598TOUNICODE_CID, false, NULL, nsISO88598ToUnicodeConstructor }, + { &kNS_ISO88598ITOUNICODE_CID, false, NULL, nsISO88598IToUnicodeConstructor }, + { &kNS_ISO88598ETOUNICODE_CID, false, NULL, nsISO88598EToUnicodeConstructor }, + { &kNS_ISO88599TOUNICODE_CID, false, NULL, nsISO88599ToUnicodeConstructor }, + { &kNS_ISO885910TOUNICODE_CID, false, NULL, nsISO885910ToUnicodeConstructor }, + { &kNS_ISO885913TOUNICODE_CID, false, NULL, nsISO885913ToUnicodeConstructor }, + { &kNS_ISO885914TOUNICODE_CID, false, NULL, nsISO885914ToUnicodeConstructor }, + { &kNS_ISO885915TOUNICODE_CID, false, NULL, nsISO885915ToUnicodeConstructor }, + { &kNS_ISO885916TOUNICODE_CID, false, NULL, nsISO885916ToUnicodeConstructor }, + { &kNS_ISOIR111TOUNICODE_CID, false, NULL, nsISOIR111ToUnicodeConstructor }, + { &kNS_CP1250TOUNICODE_CID, false, NULL, nsCP1250ToUnicodeConstructor }, + { &kNS_CP1251TOUNICODE_CID, false, NULL, nsCP1251ToUnicodeConstructor }, + { &kNS_CP1253TOUNICODE_CID, false, NULL, nsCP1253ToUnicodeConstructor }, + { &kNS_CP1254TOUNICODE_CID, false, NULL, nsCP1254ToUnicodeConstructor }, + { &kNS_CP1255TOUNICODE_CID, false, NULL, nsCP1255ToUnicodeConstructor }, + { &kNS_CP1256TOUNICODE_CID, false, NULL, nsCP1256ToUnicodeConstructor }, + { &kNS_CP1257TOUNICODE_CID, false, NULL, nsCP1257ToUnicodeConstructor }, + { &kNS_CP1258TOUNICODE_CID, false, NULL, nsCP1258ToUnicodeConstructor }, + { &kNS_TIS620TOUNICODE_CID, false, NULL, nsTIS620ToUnicodeConstructor }, + { &kNS_ISO885911TOUNICODE_CID, false, NULL, nsISO885911ToUnicodeConstructor }, + { &kNS_CP874TOUNICODE_CID, false, NULL, nsCP874ToUnicodeConstructor }, + { &kNS_CP866TOUNICODE_CID, false, NULL, nsCP866ToUnicodeConstructor }, + { &kNS_KOI8RTOUNICODE_CID, false, NULL, nsKOI8RToUnicodeConstructor }, + { &kNS_KOI8UTOUNICODE_CID, false, NULL, nsKOI8UToUnicodeConstructor }, + { &kNS_MACCETOUNICODE_CID, false, NULL, nsMacCEToUnicodeConstructor }, + { &kNS_MACGREEKTOUNICODE_CID, false, NULL, nsMacGreekToUnicodeConstructor }, + { &kNS_MACTURKISHTOUNICODE_CID, false, NULL, nsMacTurkishToUnicodeConstructor }, + { &kNS_MACCROATIANTOUNICODE_CID, false, NULL, nsMacCroatianToUnicodeConstructor }, + { &kNS_MACROMANIANTOUNICODE_CID, false, NULL, nsMacRomanianToUnicodeConstructor }, + { &kNS_MACCYRILLICTOUNICODE_CID, false, NULL, nsMacCyrillicToUnicodeConstructor }, + { &kNS_MACICELANDICTOUNICODE_CID, false, NULL, nsMacIcelandicToUnicodeConstructor }, + { &kNS_GEOSTD8TOUNICODE_CID, false, NULL, nsGEOSTD8ToUnicodeConstructor }, + { &kNS_ARMSCII8TOUNICODE_CID, false, NULL, nsARMSCII8ToUnicodeConstructor }, + { &kNS_TCVN5712TOUNICODE_CID, false, NULL, nsTCVN5712ToUnicodeConstructor }, + { &kNS_VISCIITOUNICODE_CID, false, NULL, nsVISCIIToUnicodeConstructor }, + { &kNS_VPSTOUNICODE_CID, false, NULL, nsVPSToUnicodeConstructor }, + { &kNS_UTF7TOUNICODE_CID, false, NULL, nsUTF7ToUnicodeConstructor }, + { &kNS_MUTF7TOUNICODE_CID, false, NULL, nsMUTF7ToUnicodeConstructor }, + { &kNS_UTF16TOUNICODE_CID, false, NULL, nsUTF16ToUnicodeConstructor }, + { &kNS_UTF16BETOUNICODE_CID, false, NULL, nsUTF16BEToUnicodeConstructor }, + { &kNS_UTF16LETOUNICODE_CID, false, NULL, nsUTF16LEToUnicodeConstructor }, + { &kNS_T61TOUNICODE_CID, false, NULL, nsT61ToUnicodeConstructor }, + { &kNS_USERDEFINEDTOUNICODE_CID, false, NULL, nsUserDefinedToUnicodeConstructor }, + { &kNS_MACARABICTOUNICODE_CID, false, NULL, nsMacArabicToUnicodeConstructor }, + { &kNS_MACDEVANAGARITOUNICODE_CID, false, NULL, nsMacDevanagariToUnicodeConstructor }, + { &kNS_MACFARSITOUNICODE_CID, false, NULL, nsMacFarsiToUnicodeConstructor }, + { &kNS_MACGURMUKHITOUNICODE_CID, false, NULL, nsMacGurmukhiToUnicodeConstructor }, + { &kNS_MACGUJARATITOUNICODE_CID, false, NULL, nsMacGujaratiToUnicodeConstructor }, + { &kNS_MACHEBREWTOUNICODE_CID, false, NULL, nsMacHebrewToUnicodeConstructor }, + { &kNS_UNICODETOASCII_CID, false, NULL, nsUnicodeToAsciiConstructor }, + { &kNS_UNICODETOISO88592_CID, false, NULL, nsUnicodeToISO88592Constructor }, + { &kNS_UNICODETOISO88593_CID, false, NULL, nsUnicodeToISO88593Constructor }, + { &kNS_UNICODETOISO88594_CID, false, NULL, nsUnicodeToISO88594Constructor }, + { &kNS_UNICODETOISO88595_CID, false, NULL, nsUnicodeToISO88595Constructor }, + { &kNS_UNICODETOISO88596_CID, false, NULL, nsUnicodeToISO88596Constructor }, + { &kNS_UNICODETOISO88596I_CID, false, NULL, nsUnicodeToISO88596IConstructor }, + { &kNS_UNICODETOISO88596E_CID, false, NULL, nsUnicodeToISO88596EConstructor }, + { &kNS_UNICODETOISO88597_CID, false, NULL, nsUnicodeToISO88597Constructor }, + { &kNS_UNICODETOISO88598_CID, false, NULL, nsUnicodeToISO88598Constructor }, + { &kNS_UNICODETOISO88598I_CID, false, NULL, nsUnicodeToISO88598IConstructor }, + { &kNS_UNICODETOISO88598E_CID, false, NULL, nsUnicodeToISO88598EConstructor }, + { &kNS_UNICODETOISO88599_CID, false, NULL, nsUnicodeToISO88599Constructor }, + { &kNS_UNICODETOISO885910_CID, false, NULL, nsUnicodeToISO885910Constructor }, + { &kNS_UNICODETOISO885913_CID, false, NULL, nsUnicodeToISO885913Constructor }, + { &kNS_UNICODETOISO885914_CID, false, NULL, nsUnicodeToISO885914Constructor }, + { &kNS_UNICODETOISO885915_CID, false, NULL, nsUnicodeToISO885915Constructor }, + { &kNS_UNICODETOISO885916_CID, false, NULL, nsUnicodeToISO885916Constructor }, + { &kNS_UNICODETOISOIR111_CID, false, NULL, nsUnicodeToISOIR111Constructor }, + { &kNS_UNICODETOCP1250_CID, false, NULL, nsUnicodeToCP1250Constructor }, + { &kNS_UNICODETOCP1251_CID, false, NULL, nsUnicodeToCP1251Constructor }, + { &kNS_UNICODETOCP1253_CID, false, NULL, nsUnicodeToCP1253Constructor }, + { &kNS_UNICODETOCP1254_CID, false, NULL, nsUnicodeToCP1254Constructor }, + { &kNS_UNICODETOCP1255_CID, false, NULL, nsUnicodeToCP1255Constructor }, + { &kNS_UNICODETOCP1256_CID, false, NULL, nsUnicodeToCP1256Constructor }, + { &kNS_UNICODETOCP1257_CID, false, NULL, nsUnicodeToCP1257Constructor }, + { &kNS_UNICODETOCP1258_CID, false, NULL, nsUnicodeToCP1258Constructor }, + { &kNS_UNICODETOTIS620_CID, false, NULL, nsUnicodeToTIS620Constructor }, + { &kNS_UNICODETOISO885911_CID, false, NULL, nsUnicodeToISO885911Constructor }, + { &kNS_UNICODETOCP874_CID, false, NULL, nsUnicodeToCP874Constructor }, + { &kNS_UNICODETOCP866_CID, false, NULL, nsUnicodeToCP866Constructor }, + { &kNS_UNICODETOKOI8R_CID, false, NULL, nsUnicodeToKOI8RConstructor }, + { &kNS_UNICODETOKOI8U_CID, false, NULL, nsUnicodeToKOI8UConstructor }, + { &kNS_UNICODETOMACCE_CID, false, NULL, nsUnicodeToMacCEConstructor }, + { &kNS_UNICODETOMACGREEK_CID, false, NULL, nsUnicodeToMacGreekConstructor }, + { &kNS_UNICODETOMACTURKISH_CID, false, NULL, nsUnicodeToMacTurkishConstructor }, + { &kNS_UNICODETOMACCROATIAN_CID, false, NULL, nsUnicodeToMacCroatianConstructor }, + { &kNS_UNICODETOMACROMANIAN_CID, false, NULL, nsUnicodeToMacRomanianConstructor }, + { &kNS_UNICODETOMACCYRILLIC_CID, false, NULL, nsUnicodeToMacCyrillicConstructor }, + { &kNS_UNICODETOMACICELANDIC_CID, false, NULL, nsUnicodeToMacIcelandicConstructor }, + { &kNS_UNICODETOGEOSTD8_CID, false, NULL, nsUnicodeToGEOSTD8Constructor }, + { &kNS_UNICODETOARMSCII8_CID, false, NULL, nsUnicodeToARMSCII8Constructor }, + { &kNS_UNICODETOTCVN5712_CID, false, NULL, nsUnicodeToTCVN5712Constructor }, + { &kNS_UNICODETOVISCII_CID, false, NULL, nsUnicodeToVISCIIConstructor }, + { &kNS_UNICODETOVPS_CID, false, NULL, nsUnicodeToVPSConstructor }, + { &kNS_UNICODETOUTF7_CID, false, NULL, nsUnicodeToUTF7Constructor }, + { &kNS_UNICODETOMUTF7_CID, false, NULL, nsUnicodeToMUTF7Constructor }, + { &kNS_UNICODETOUTF16BE_CID, false, NULL, nsUnicodeToUTF16BEConstructor }, + { &kNS_UNICODETOUTF16LE_CID, false, NULL, nsUnicodeToUTF16LEConstructor }, + { &kNS_UNICODETOUTF16_CID, false, NULL, nsUnicodeToUTF16Constructor }, + { &kNS_UNICODETOT61_CID, false, NULL, nsUnicodeToT61Constructor }, + { &kNS_UNICODETOUSERDEFINED_CID, false, NULL, nsUnicodeToUserDefinedConstructor }, + { &kNS_UNICODETOSYMBOL_CID, false, NULL, nsUnicodeToSymbolConstructor }, + { &kNS_UNICODETOZAPFDINGBATS_CID, false, NULL, nsUnicodeToZapfDingbatConstructor }, + { &kNS_UNICODETOADOBEEURO_CID, false, NULL, nsUnicodeToAdobeEuroConstructor }, + { &kNS_UNICODETOMACARABIC_CID, false, NULL, nsUnicodeToMacArabicConstructor }, + { &kNS_UNICODETOMACDEVANAGARI_CID, false, NULL, nsUnicodeToMacDevanagariConstructor }, + { &kNS_UNICODETOMACFARSI_CID, false, NULL, nsUnicodeToMacFarsiConstructor }, + { &kNS_UNICODETOMACGURMUKHI_CID, false, NULL, nsUnicodeToMacGurmukhiConstructor }, + { &kNS_UNICODETOMACGUJARATI_CID, false, NULL, nsUnicodeToMacGujaratiConstructor }, + { &kNS_UNICODETOMACHEBREW_CID, false, NULL, nsUnicodeToMacHebrewConstructor }, + { &kNS_UNICODETOTSCII_CID, false, NULL, nsUnicodeToTSCIIConstructor }, + { &kNS_UNICODETOTAMILTTF_CID, false, NULL, nsUnicodeToTamilTTFConstructor }, + { &kNS_CP850TOUNICODE_CID, false, NULL, nsCP850ToUnicodeConstructor }, + { &kNS_CP852TOUNICODE_CID, false, NULL, nsCP852ToUnicodeConstructor }, + { &kNS_CP855TOUNICODE_CID, false, NULL, nsCP855ToUnicodeConstructor }, + { &kNS_CP857TOUNICODE_CID, false, NULL, nsCP857ToUnicodeConstructor }, + { &kNS_CP862TOUNICODE_CID, false, NULL, nsCP862ToUnicodeConstructor }, + { &kNS_CP864TOUNICODE_CID, false, NULL, nsCP864ToUnicodeConstructor }, + { &kNS_CP864ITOUNICODE_CID, false, NULL, nsCP864iToUnicodeConstructor }, +#ifdef XP_OS2 + { &kNS_CP869TOUNICODE_CID, false, NULL, nsCP869ToUnicodeConstructor }, + { &kNS_CP1125TOUNICODE_CID, false, NULL, nsCP1125ToUnicodeConstructor }, + { &kNS_CP1131TOUNICODE_CID, false, NULL, nsCP1131ToUnicodeConstructor }, +#endif + { &kNS_UNICODETOCP850_CID, false, NULL, nsUnicodeToCP850Constructor }, + { &kNS_UNICODETOCP852_CID, false, NULL, nsUnicodeToCP852Constructor }, + { &kNS_UNICODETOCP855_CID, false, NULL, nsUnicodeToCP855Constructor }, + { &kNS_UNICODETOCP857_CID, false, NULL, nsUnicodeToCP857Constructor }, + { &kNS_UNICODETOCP862_CID, false, NULL, nsUnicodeToCP862Constructor }, + { &kNS_UNICODETOCP864_CID, false, NULL, nsUnicodeToCP864Constructor }, + { &kNS_UNICODETOCP864I_CID, false, NULL, nsUnicodeToCP864iConstructor }, +#ifdef XP_OS2 + { &kNS_UNICODETOCP869_CID, false, NULL, nsUnicodeToCP869Constructor }, + { &kNS_UNICODETOCP1125_CID, false, NULL, nsUnicodeToCP1125Constructor }, + { &kNS_UNICODETOCP1131_CID, false, NULL, nsUnicodeToCP1131Constructor }, +#endif + { &kNS_SJISTOUNICODE_CID, false, NULL, nsShiftJISToUnicodeConstructor }, + { &kNS_EUCJPTOUNICODE_CID, false, NULL, nsEUCJPToUnicodeV2Constructor }, + { &kNS_ISO2022JPTOUNICODE_CID, false, NULL, nsISO2022JPToUnicodeV2Constructor }, + { &kNS_UNICODETOSJIS_CID, false, NULL, nsUnicodeToSJISConstructor }, + { &kNS_UNICODETOEUCJP_CID, false, NULL, nsUnicodeToEUCJPConstructor }, + { &kNS_UNICODETOISO2022JP_CID, false, NULL, nsUnicodeToISO2022JPConstructor }, + { &kNS_UNICODETOJISX0201_CID, false, NULL, nsUnicodeToJISx0201Constructor }, + { &kNS_EUCTWTOUNICODE_CID, false, NULL, nsEUCTWToUnicodeConstructor }, + { &kNS_UNICODETOEUCTW_CID, false, NULL, nsUnicodeToEUCTWConstructor }, + { &kNS_UNICODETOBIG5_CID, false, NULL, nsUnicodeToBIG5Constructor }, + { &kNS_BIG5TOUNICODE_CID, false, NULL, nsBIG5ToUnicodeConstructor }, + { &kNS_UNICODETOBIG5HKSCS_CID, false, NULL, nsUnicodeToBIG5HKSCSConstructor }, + { &kNS_UNICODETOHKSCS_CID, false, NULL, nsUnicodeToHKSCSConstructor }, + { &kNS_BIG5HKSCSTOUNICODE_CID, false, NULL, nsBIG5HKSCSToUnicodeConstructor }, + { &kNS_EUCKRTOUNICODE_CID, false, NULL, nsEUCKRToUnicodeConstructor }, + { &kNS_UNICODETOEUCKR_CID, false, NULL, nsUnicodeToEUCKRConstructor }, + { &kNS_JOHABTOUNICODE_CID, false, NULL, nsJohabToUnicodeConstructor }, + { &kNS_UNICODETOJOHAB_CID, false, NULL, nsUnicodeToJohabConstructor }, + { &kNS_CP949TOUNICODE_CID, false, NULL, nsCP949ToUnicodeConstructor }, + { &kNS_UNICODETOCP949_CID, false, NULL, nsUnicodeToCP949Constructor }, + { &kNS_ISO2022KRTOUNICODE_CID, false, NULL, nsISO2022KRToUnicodeConstructor }, + { &kNS_GB2312TOUNICODE_CID, false, NULL, nsGB2312ToUnicodeV2Constructor }, + { &kNS_UNICODETOGB2312_CID, false, NULL, nsUnicodeToGB2312V2Constructor }, + { &kNS_GBKTOUNICODE_CID, false, NULL, nsGBKToUnicodeConstructor }, + { &kNS_UNICODETOGBK_CID, false, NULL, nsUnicodeToGBKConstructor }, + { &kNS_HZTOUNICODE_CID, false, NULL, nsHZToUnicodeConstructor }, + { &kNS_UNICODETOHZ_CID, false, NULL, nsUnicodeToHZConstructor }, + { &kNS_GB18030TOUNICODE_CID, false, NULL, nsGB18030ToUnicodeConstructor }, + { &kNS_UNICODETOGB18030_CID, false, NULL, nsUnicodeToGB18030Constructor }, + { &kNS_ISO2022CNTOUNICODE_CID, false, NULL, nsISO2022CNToUnicodeConstructor }, + { NULL }, +}; + +static const mozilla::Module::ContractIDEntry kUConvContracts[] = { + { NS_UNICODEDECODER_CONTRACTID_BASE "us-ascii", &kNS_ASCIITOUNICODE_CID }, + { NS_UNICODEDECODER_CONTRACTID_BASE "ISO-8859-2", &kNS_ISO88592TOUNICODE_CID }, + { NS_UNICODEDECODER_CONTRACTID_BASE "ISO-8859-3", &kNS_ISO88593TOUNICODE_CID }, + { NS_UNICODEDECODER_CONTRACTID_BASE "ISO-8859-4", &kNS_ISO88594TOUNICODE_CID }, + { NS_UNICODEDECODER_CONTRACTID_BASE "ISO-8859-5", &kNS_ISO88595TOUNICODE_CID }, + { NS_UNICODEDECODER_CONTRACTID_BASE "ISO-8859-6", &kNS_ISO88596TOUNICODE_CID }, + { NS_UNICODEDECODER_CONTRACTID_BASE "ISO-8859-6-I", &kNS_ISO88596ITOUNICODE_CID }, + { NS_UNICODEDECODER_CONTRACTID_BASE "ISO-8859-6-E", &kNS_ISO88596ETOUNICODE_CID }, + { NS_UNICODEDECODER_CONTRACTID_BASE "ISO-8859-7", &kNS_ISO88597TOUNICODE_CID }, + { NS_UNICODEDECODER_CONTRACTID_BASE "ISO-8859-8", &kNS_ISO88598TOUNICODE_CID }, + { NS_UNICODEDECODER_CONTRACTID_BASE "ISO-8859-8-I", &kNS_ISO88598ITOUNICODE_CID }, + { NS_UNICODEDECODER_CONTRACTID_BASE "ISO-8859-8-E", &kNS_ISO88598ETOUNICODE_CID }, + { NS_UNICODEDECODER_CONTRACTID_BASE "ISO-8859-9", &kNS_ISO88599TOUNICODE_CID }, + { NS_UNICODEDECODER_CONTRACTID_BASE "ISO-8859-10", &kNS_ISO885910TOUNICODE_CID }, + { NS_UNICODEDECODER_CONTRACTID_BASE "ISO-8859-13", &kNS_ISO885913TOUNICODE_CID }, + { NS_UNICODEDECODER_CONTRACTID_BASE "ISO-8859-14", &kNS_ISO885914TOUNICODE_CID }, + { NS_UNICODEDECODER_CONTRACTID_BASE "ISO-8859-15", &kNS_ISO885915TOUNICODE_CID }, + { NS_UNICODEDECODER_CONTRACTID_BASE "ISO-8859-16", &kNS_ISO885916TOUNICODE_CID }, + { NS_UNICODEDECODER_CONTRACTID_BASE "ISO-IR-111", &kNS_ISOIR111TOUNICODE_CID }, + { NS_UNICODEDECODER_CONTRACTID_BASE "windows-1250", &kNS_CP1250TOUNICODE_CID }, + { NS_UNICODEDECODER_CONTRACTID_BASE "windows-1251", &kNS_CP1251TOUNICODE_CID }, + { NS_UNICODEDECODER_CONTRACTID_BASE "windows-1253", &kNS_CP1253TOUNICODE_CID }, + { NS_UNICODEDECODER_CONTRACTID_BASE "windows-1254", &kNS_CP1254TOUNICODE_CID }, + { NS_UNICODEDECODER_CONTRACTID_BASE "windows-1255", &kNS_CP1255TOUNICODE_CID }, + { NS_UNICODEDECODER_CONTRACTID_BASE "windows-1256", &kNS_CP1256TOUNICODE_CID }, + { NS_UNICODEDECODER_CONTRACTID_BASE "windows-1257", &kNS_CP1257TOUNICODE_CID }, + { NS_UNICODEDECODER_CONTRACTID_BASE "windows-1258", &kNS_CP1258TOUNICODE_CID }, + { NS_UNICODEDECODER_CONTRACTID_BASE "TIS-620", &kNS_TIS620TOUNICODE_CID }, + { NS_UNICODEDECODER_CONTRACTID_BASE "ISO-8859-11", &kNS_ISO885911TOUNICODE_CID }, + { NS_UNICODEDECODER_CONTRACTID_BASE "windows-874", &kNS_CP874TOUNICODE_CID }, + { NS_UNICODEDECODER_CONTRACTID_BASE "IBM866", &kNS_CP866TOUNICODE_CID }, + { NS_UNICODEDECODER_CONTRACTID_BASE "KOI8-R", &kNS_KOI8RTOUNICODE_CID }, + { NS_UNICODEDECODER_CONTRACTID_BASE "KOI8-U", &kNS_KOI8UTOUNICODE_CID }, + { NS_UNICODEDECODER_CONTRACTID_BASE "x-mac-ce", &kNS_MACCETOUNICODE_CID }, + { NS_UNICODEDECODER_CONTRACTID_BASE "x-mac-greek", &kNS_MACGREEKTOUNICODE_CID }, + { NS_UNICODEDECODER_CONTRACTID_BASE "x-mac-turkish", &kNS_MACTURKISHTOUNICODE_CID }, + { NS_UNICODEDECODER_CONTRACTID_BASE "x-mac-croatian", &kNS_MACCROATIANTOUNICODE_CID }, + { NS_UNICODEDECODER_CONTRACTID_BASE "x-mac-romanian", &kNS_MACROMANIANTOUNICODE_CID }, + { NS_UNICODEDECODER_CONTRACTID_BASE "x-mac-cyrillic", &kNS_MACCYRILLICTOUNICODE_CID }, + { NS_UNICODEDECODER_CONTRACTID_BASE "x-mac-icelandic", &kNS_MACICELANDICTOUNICODE_CID }, + { NS_UNICODEDECODER_CONTRACTID_BASE "GEOSTD8", &kNS_GEOSTD8TOUNICODE_CID }, + { NS_UNICODEDECODER_CONTRACTID_BASE "armscii-8", &kNS_ARMSCII8TOUNICODE_CID }, + { NS_UNICODEDECODER_CONTRACTID_BASE "x-viet-tcvn5712", &kNS_TCVN5712TOUNICODE_CID }, + { NS_UNICODEDECODER_CONTRACTID_BASE "VISCII", &kNS_VISCIITOUNICODE_CID }, + { NS_UNICODEDECODER_CONTRACTID_BASE "x-viet-vps", &kNS_VPSTOUNICODE_CID }, + { NS_UNICODEDECODER_CONTRACTID_BASE "UTF-7", &kNS_UTF7TOUNICODE_CID }, + { NS_UNICODEDECODER_CONTRACTID_BASE "x-imap4-modified-utf7", &kNS_MUTF7TOUNICODE_CID }, + { NS_UNICODEDECODER_CONTRACTID_BASE "UTF-16", &kNS_UTF16TOUNICODE_CID }, + { NS_UNICODEDECODER_CONTRACTID_BASE "UTF-16BE", &kNS_UTF16BETOUNICODE_CID }, + { NS_UNICODEDECODER_CONTRACTID_BASE "UTF-16LE", &kNS_UTF16LETOUNICODE_CID }, + { NS_UNICODEDECODER_CONTRACTID_BASE "T.61-8bit", &kNS_T61TOUNICODE_CID }, + { NS_UNICODEDECODER_CONTRACTID_BASE "x-user-defined", &kNS_USERDEFINEDTOUNICODE_CID }, + { NS_UNICODEDECODER_CONTRACTID_BASE "x-mac-arabic", &kNS_MACARABICTOUNICODE_CID }, + { NS_UNICODEDECODER_CONTRACTID_BASE "x-mac-devanagari", &kNS_MACDEVANAGARITOUNICODE_CID }, + { NS_UNICODEDECODER_CONTRACTID_BASE "x-mac-farsi", &kNS_MACFARSITOUNICODE_CID }, + { NS_UNICODEDECODER_CONTRACTID_BASE "x-mac-gurmukhi", &kNS_MACGURMUKHITOUNICODE_CID }, + { NS_UNICODEDECODER_CONTRACTID_BASE "x-mac-gujarati", &kNS_MACGUJARATITOUNICODE_CID }, + { NS_UNICODEDECODER_CONTRACTID_BASE "x-mac-hebrew", &kNS_MACHEBREWTOUNICODE_CID }, + { NS_UNICODEENCODER_CONTRACTID_BASE "us-ascii", &kNS_UNICODETOASCII_CID }, + { NS_UNICODEENCODER_CONTRACTID_BASE "ISO-8859-2", &kNS_UNICODETOISO88592_CID }, + { NS_UNICODEENCODER_CONTRACTID_BASE "ISO-8859-3", &kNS_UNICODETOISO88593_CID }, + { NS_UNICODEENCODER_CONTRACTID_BASE "ISO-8859-4", &kNS_UNICODETOISO88594_CID }, + { NS_UNICODEENCODER_CONTRACTID_BASE "ISO-8859-5", &kNS_UNICODETOISO88595_CID }, + { NS_UNICODEENCODER_CONTRACTID_BASE "ISO-8859-6", &kNS_UNICODETOISO88596_CID }, + { NS_UNICODEENCODER_CONTRACTID_BASE "ISO-8859-6-I", &kNS_UNICODETOISO88596I_CID }, + { NS_UNICODEENCODER_CONTRACTID_BASE "ISO-8859-6-E", &kNS_UNICODETOISO88596E_CID }, + { NS_UNICODEENCODER_CONTRACTID_BASE "ISO-8859-7", &kNS_UNICODETOISO88597_CID }, + { NS_UNICODEENCODER_CONTRACTID_BASE "ISO-8859-8", &kNS_UNICODETOISO88598_CID }, + { NS_UNICODEENCODER_CONTRACTID_BASE "ISO-8859-8-I", &kNS_UNICODETOISO88598I_CID }, + { NS_UNICODEENCODER_CONTRACTID_BASE "ISO-8859-8-E", &kNS_UNICODETOISO88598E_CID }, + { NS_UNICODEENCODER_CONTRACTID_BASE "ISO-8859-9", &kNS_UNICODETOISO88599_CID }, + { NS_UNICODEENCODER_CONTRACTID_BASE "ISO-8859-10", &kNS_UNICODETOISO885910_CID }, + { NS_UNICODEENCODER_CONTRACTID_BASE "ISO-8859-13", &kNS_UNICODETOISO885913_CID }, + { NS_UNICODEENCODER_CONTRACTID_BASE "ISO-8859-14", &kNS_UNICODETOISO885914_CID }, + { NS_UNICODEENCODER_CONTRACTID_BASE "ISO-8859-15", &kNS_UNICODETOISO885915_CID }, + { NS_UNICODEENCODER_CONTRACTID_BASE "ISO-8859-16", &kNS_UNICODETOISO885916_CID }, + { NS_UNICODEENCODER_CONTRACTID_BASE "ISO-IR-111", &kNS_UNICODETOISOIR111_CID }, + { NS_UNICODEENCODER_CONTRACTID_BASE "windows-1250", &kNS_UNICODETOCP1250_CID }, + { NS_UNICODEENCODER_CONTRACTID_BASE "windows-1251", &kNS_UNICODETOCP1251_CID }, + { NS_UNICODEENCODER_CONTRACTID_BASE "windows-1253", &kNS_UNICODETOCP1253_CID }, + { NS_UNICODEENCODER_CONTRACTID_BASE "windows-1254", &kNS_UNICODETOCP1254_CID }, + { NS_UNICODEENCODER_CONTRACTID_BASE "windows-1255", &kNS_UNICODETOCP1255_CID }, + { NS_UNICODEENCODER_CONTRACTID_BASE "windows-1256", &kNS_UNICODETOCP1256_CID }, + { NS_UNICODEENCODER_CONTRACTID_BASE "windows-1257", &kNS_UNICODETOCP1257_CID }, + { NS_UNICODEENCODER_CONTRACTID_BASE "windows-1258", &kNS_UNICODETOCP1258_CID }, + { NS_UNICODEENCODER_CONTRACTID_BASE "TIS-620", &kNS_UNICODETOTIS620_CID }, + { NS_UNICODEENCODER_CONTRACTID_BASE "ISO-8859-11", &kNS_UNICODETOISO885911_CID }, + { NS_UNICODEENCODER_CONTRACTID_BASE "windows-874", &kNS_UNICODETOCP874_CID }, + { NS_UNICODEENCODER_CONTRACTID_BASE "IBM866", &kNS_UNICODETOCP866_CID }, + { NS_UNICODEENCODER_CONTRACTID_BASE "KOI8-R", &kNS_UNICODETOKOI8R_CID }, + { NS_UNICODEENCODER_CONTRACTID_BASE "KOI8-U", &kNS_UNICODETOKOI8U_CID }, + { NS_UNICODEENCODER_CONTRACTID_BASE "x-mac-ce", &kNS_UNICODETOMACCE_CID }, + { NS_UNICODEENCODER_CONTRACTID_BASE "x-mac-greek", &kNS_UNICODETOMACGREEK_CID }, + { NS_UNICODEENCODER_CONTRACTID_BASE "x-mac-turkish", &kNS_UNICODETOMACTURKISH_CID }, + { NS_UNICODEENCODER_CONTRACTID_BASE "x-mac-croatian", &kNS_UNICODETOMACCROATIAN_CID }, + { NS_UNICODEENCODER_CONTRACTID_BASE "x-mac-romanian", &kNS_UNICODETOMACROMANIAN_CID }, + { NS_UNICODEENCODER_CONTRACTID_BASE "x-mac-cyrillic", &kNS_UNICODETOMACCYRILLIC_CID }, + { NS_UNICODEENCODER_CONTRACTID_BASE "x-mac-icelandic", &kNS_UNICODETOMACICELANDIC_CID }, + { NS_UNICODEENCODER_CONTRACTID_BASE "GEOSTD8", &kNS_UNICODETOGEOSTD8_CID }, + { NS_UNICODEENCODER_CONTRACTID_BASE "armscii-8", &kNS_UNICODETOARMSCII8_CID }, + { NS_UNICODEENCODER_CONTRACTID_BASE "x-viet-tcvn5712", &kNS_UNICODETOTCVN5712_CID }, + { NS_UNICODEENCODER_CONTRACTID_BASE "VISCII", &kNS_UNICODETOVISCII_CID }, + { NS_UNICODEENCODER_CONTRACTID_BASE "x-viet-vps", &kNS_UNICODETOVPS_CID }, + { NS_UNICODEENCODER_CONTRACTID_BASE "UTF-7", &kNS_UNICODETOUTF7_CID }, + { NS_UNICODEENCODER_CONTRACTID_BASE "x-imap4-modified-utf7", &kNS_UNICODETOMUTF7_CID }, + { NS_UNICODEENCODER_CONTRACTID_BASE "UTF-16BE", &kNS_UNICODETOUTF16BE_CID }, + { NS_UNICODEENCODER_CONTRACTID_BASE "UTF-16LE", &kNS_UNICODETOUTF16LE_CID }, + { NS_UNICODEENCODER_CONTRACTID_BASE "UTF-16", &kNS_UNICODETOUTF16_CID }, + { NS_UNICODEENCODER_CONTRACTID_BASE "T.61-8bit", &kNS_UNICODETOT61_CID }, + { NS_UNICODEENCODER_CONTRACTID_BASE "x-user-defined", &kNS_UNICODETOUSERDEFINED_CID }, + { NS_UNICODEENCODER_CONTRACTID_BASE "Adobe-Symbol-Encoding", &kNS_UNICODETOSYMBOL_CID }, + { NS_UNICODEENCODER_CONTRACTID_BASE "x-zapf-dingbats", &kNS_UNICODETOZAPFDINGBATS_CID }, + { NS_UNICODEENCODER_CONTRACTID_BASE "x-adobe-euro", &kNS_UNICODETOADOBEEURO_CID }, + { NS_UNICODEENCODER_CONTRACTID_BASE "x-mac-arabic", &kNS_UNICODETOMACARABIC_CID }, + { NS_UNICODEENCODER_CONTRACTID_BASE "x-mac-devanagari", &kNS_UNICODETOMACDEVANAGARI_CID }, + { NS_UNICODEENCODER_CONTRACTID_BASE "x-mac-farsi", &kNS_UNICODETOMACFARSI_CID }, + { NS_UNICODEENCODER_CONTRACTID_BASE "x-mac-gurmukhi", &kNS_UNICODETOMACGURMUKHI_CID }, + { NS_UNICODEENCODER_CONTRACTID_BASE "x-mac-gujarati", &kNS_UNICODETOMACGUJARATI_CID }, + { NS_UNICODEENCODER_CONTRACTID_BASE "x-mac-hebrew", &kNS_UNICODETOMACHEBREW_CID }, + { NS_UNICODEENCODER_CONTRACTID_BASE "x-tscii", &kNS_UNICODETOTSCII_CID }, + { NS_UNICODEENCODER_CONTRACTID_BASE "x-tamilttf-0", &kNS_UNICODETOTAMILTTF_CID }, + { NS_UNICODEDECODER_CONTRACTID_BASE "IBM850", &kNS_CP850TOUNICODE_CID }, + { NS_UNICODEDECODER_CONTRACTID_BASE "IBM852", &kNS_CP852TOUNICODE_CID }, + { NS_UNICODEDECODER_CONTRACTID_BASE "IBM855", &kNS_CP855TOUNICODE_CID }, + { NS_UNICODEDECODER_CONTRACTID_BASE "IBM857", &kNS_CP857TOUNICODE_CID }, + { NS_UNICODEDECODER_CONTRACTID_BASE "IBM862", &kNS_CP862TOUNICODE_CID }, + { NS_UNICODEDECODER_CONTRACTID_BASE "IBM864", &kNS_CP864TOUNICODE_CID }, + { NS_UNICODEDECODER_CONTRACTID_BASE "IBM864i", &kNS_CP864ITOUNICODE_CID }, +#ifdef XP_OS2 + { NS_UNICODEDECODER_CONTRACTID_BASE "IBM869", &kNS_CP869TOUNICODE_CID }, + { NS_UNICODEDECODER_CONTRACTID_BASE "IBM1125", &kNS_CP1125TOUNICODE_CID }, + { NS_UNICODEDECODER_CONTRACTID_BASE "IBM1131", &kNS_CP1131TOUNICODE_CID }, +#endif + { NS_UNICODEENCODER_CONTRACTID_BASE "IBM850", &kNS_UNICODETOCP850_CID }, + { NS_UNICODEENCODER_CONTRACTID_BASE "IBM852", &kNS_UNICODETOCP852_CID }, + { NS_UNICODEENCODER_CONTRACTID_BASE "IBM855", &kNS_UNICODETOCP855_CID }, + { NS_UNICODEENCODER_CONTRACTID_BASE "IBM857", &kNS_UNICODETOCP857_CID }, + { NS_UNICODEENCODER_CONTRACTID_BASE "IBM862", &kNS_UNICODETOCP862_CID }, + { NS_UNICODEENCODER_CONTRACTID_BASE "IBM864", &kNS_UNICODETOCP864_CID }, + { NS_UNICODEENCODER_CONTRACTID_BASE "IBM864i", &kNS_UNICODETOCP864I_CID }, +#ifdef XP_OS2 + { NS_UNICODEENCODER_CONTRACTID_BASE "IBM869", &kNS_UNICODETOCP869_CID }, + { NS_UNICODEENCODER_CONTRACTID_BASE "IBM1125", &kNS_UNICODETOCP1125_CID }, + { NS_UNICODEENCODER_CONTRACTID_BASE "IBM1131", &kNS_UNICODETOCP1131_CID }, +#endif + { NS_UNICODEDECODER_CONTRACTID_BASE "Shift_JIS", &kNS_SJISTOUNICODE_CID }, + { NS_UNICODEDECODER_CONTRACTID_BASE "EUC-JP", &kNS_EUCJPTOUNICODE_CID }, + { NS_UNICODEDECODER_CONTRACTID_BASE "ISO-2022-JP", &kNS_ISO2022JPTOUNICODE_CID }, + { NS_UNICODEENCODER_CONTRACTID_BASE "Shift_JIS", &kNS_UNICODETOSJIS_CID }, + { NS_UNICODEENCODER_CONTRACTID_BASE "EUC-JP", &kNS_UNICODETOEUCJP_CID }, + { NS_UNICODEENCODER_CONTRACTID_BASE "ISO-2022-JP", &kNS_UNICODETOISO2022JP_CID }, + { NS_UNICODEENCODER_CONTRACTID_BASE "jis_0201", &kNS_UNICODETOJISX0201_CID }, + { NS_UNICODEDECODER_CONTRACTID_BASE "x-euc-tw", &kNS_EUCTWTOUNICODE_CID }, + { NS_UNICODEENCODER_CONTRACTID_BASE "x-euc-tw", &kNS_UNICODETOEUCTW_CID }, + { NS_UNICODEENCODER_CONTRACTID_BASE "Big5", &kNS_UNICODETOBIG5_CID }, + { NS_UNICODEDECODER_CONTRACTID_BASE "Big5", &kNS_BIG5TOUNICODE_CID }, + { NS_UNICODEENCODER_CONTRACTID_BASE "Big5-HKSCS", &kNS_UNICODETOBIG5HKSCS_CID }, + { NS_UNICODEENCODER_CONTRACTID_BASE "hkscs-1", &kNS_UNICODETOHKSCS_CID }, + { NS_UNICODEDECODER_CONTRACTID_BASE "Big5-HKSCS", &kNS_BIG5HKSCSTOUNICODE_CID }, + { NS_UNICODEDECODER_CONTRACTID_BASE "EUC-KR", &kNS_EUCKRTOUNICODE_CID }, + { NS_UNICODEENCODER_CONTRACTID_BASE "EUC-KR", &kNS_UNICODETOEUCKR_CID }, + { NS_UNICODEDECODER_CONTRACTID_BASE "x-johab", &kNS_JOHABTOUNICODE_CID }, + { NS_UNICODEENCODER_CONTRACTID_BASE "x-johab", &kNS_UNICODETOJOHAB_CID }, + { NS_UNICODEDECODER_CONTRACTID_BASE "x-windows-949", &kNS_CP949TOUNICODE_CID }, + { NS_UNICODEENCODER_CONTRACTID_BASE "x-windows-949", &kNS_UNICODETOCP949_CID }, + { NS_UNICODEDECODER_CONTRACTID_BASE "ISO-2022-KR", &kNS_ISO2022KRTOUNICODE_CID }, + { NS_UNICODEDECODER_CONTRACTID_BASE "GB2312", &kNS_GB2312TOUNICODE_CID }, + { NS_UNICODEENCODER_CONTRACTID_BASE "GB2312", &kNS_UNICODETOGB2312_CID }, + { NS_UNICODEDECODER_CONTRACTID_BASE "gbk", &kNS_GBKTOUNICODE_CID }, + { NS_UNICODEENCODER_CONTRACTID_BASE "gbk", &kNS_UNICODETOGBK_CID }, + { NS_UNICODEDECODER_CONTRACTID_BASE "HZ-GB-2312", &kNS_HZTOUNICODE_CID }, + { NS_UNICODEENCODER_CONTRACTID_BASE "HZ-GB-2312", &kNS_UNICODETOHZ_CID }, + { NS_UNICODEDECODER_CONTRACTID_BASE "gb18030", &kNS_GB18030TOUNICODE_CID }, + { NS_UNICODEENCODER_CONTRACTID_BASE "gb18030", &kNS_UNICODETOGB18030_CID }, + { NS_UNICODEDECODER_CONTRACTID_BASE "ISO-2022-CN", &kNS_ISO2022CNTOUNICODE_CID }, + { NULL } +}; + +static void +UConvDataModuleDtor() +{ +#ifdef DEBUG +#ifdef XP_WIN + mozilla::BlockingResourceBase::Shutdown(); +#endif +#endif +} + +static const mozilla::Module kUConvDataModule = { + mozilla::Module::kVersion, + kUConvCIDs, + kUConvContracts, + kUConvCategories, + nsnull, + nsnull, + UConvDataModuleDtor +}; + +NSMODULE_DEFN(nsUConvDataModule) = &kUConvDataModule; diff --git a/intl/uconv/src/Makefile.in b/intl/uconv/src/Makefile.in index bbabcdf677e..cbe574455f2 100644 --- a/intl/uconv/src/Makefile.in +++ b/intl/uconv/src/Makefile.in @@ -76,25 +76,7 @@ ifneq (,$(INTEL_ARCHITECTURE)) CPPSRCS += nsUTF8ToUnicodeSSE2.cpp endif -LOCAL_INCLUDES = -I$(srcdir)/../util \ - -I$(srcdir)/../ucvlatin \ - -I$(srcdir)/../ucvibm \ - -I$(srcdir)/../ucvja \ - -I$(srcdir)/../ucvtw2 \ - -I$(srcdir)/../ucvtw \ - -I$(srcdir)/../ucvko \ - -I$(srcdir)/../ucvcn \ - $(NULL) - -SHARED_LIBRARY_LIBS += \ - ../ucvlatin/$(LIB_PREFIX)ucvlatin_s.$(LIB_SUFFIX) \ - ../ucvibm/$(LIB_PREFIX)ucvibm_s.$(LIB_SUFFIX) \ - ../ucvja/$(LIB_PREFIX)ucvja_s.$(LIB_SUFFIX) \ - ../ucvtw2/$(LIB_PREFIX)ucvtw2_s.$(LIB_SUFFIX) \ - ../ucvtw/$(LIB_PREFIX)ucvtw_s.$(LIB_SUFFIX) \ - ../ucvko/$(LIB_PREFIX)ucvko_s.$(LIB_SUFFIX) \ - ../ucvcn/$(LIB_PREFIX)ucvcn_s.$(LIB_SUFFIX) \ - $(NULL) +LOCAL_INCLUDES = -I$(srcdir)/../util include $(topsrcdir)/config/rules.mk diff --git a/intl/uconv/src/nsUConvModule.cpp b/intl/uconv/src/nsUConvModule.cpp index b7de659f3bf..d61a91633d5 100644 --- a/intl/uconv/src/nsUConvModule.cpp +++ b/intl/uconv/src/nsUConvModule.cpp @@ -72,317 +72,12 @@ #include "nsUnicodeToMacRoman.h" #include "nsUnicodeToUTF8.h" -// ucvlatin -#include "nsUCvLatinCID.h" -#include "nsUCvLatinDll.h" -#include "nsAsciiToUnicode.h" -#include "nsISO88592ToUnicode.h" -#include "nsISO88593ToUnicode.h" -#include "nsISO88594ToUnicode.h" -#include "nsISO88595ToUnicode.h" -#include "nsISO88596ToUnicode.h" -#include "nsISO88596EToUnicode.h" -#include "nsISO88596IToUnicode.h" -#include "nsISO88597ToUnicode.h" -#include "nsISO88598ToUnicode.h" -#include "nsISO88598EToUnicode.h" -#include "nsISO88598IToUnicode.h" -#include "nsISO88599ToUnicode.h" -#include "nsISO885910ToUnicode.h" -#include "nsISO885913ToUnicode.h" -#include "nsISO885914ToUnicode.h" -#include "nsISO885915ToUnicode.h" -#include "nsISO885916ToUnicode.h" -#include "nsISOIR111ToUnicode.h" -#include "nsCP1250ToUnicode.h" -#include "nsCP1251ToUnicode.h" -#include "nsCP1253ToUnicode.h" -#include "nsCP1254ToUnicode.h" -#include "nsCP1255ToUnicode.h" -#include "nsCP1256ToUnicode.h" -#include "nsCP1257ToUnicode.h" -#include "nsCP1258ToUnicode.h" -#include "nsCP874ToUnicode.h" -#include "nsISO885911ToUnicode.h" -#include "nsTIS620ToUnicode.h" -#include "nsCP866ToUnicode.h" -#include "nsKOI8RToUnicode.h" -#include "nsKOI8UToUnicode.h" -#include "nsMacCEToUnicode.h" -#include "nsMacGreekToUnicode.h" -#include "nsMacTurkishToUnicode.h" -#include "nsMacCroatianToUnicode.h" -#include "nsMacRomanianToUnicode.h" -#include "nsMacCyrillicToUnicode.h" -#include "nsMacIcelandicToUnicode.h" -#include "nsGEOSTD8ToUnicode.h" -#include "nsARMSCII8ToUnicode.h" -#include "nsTCVN5712ToUnicode.h" -#include "nsVISCIIToUnicode.h" -#include "nsVPSToUnicode.h" -#include "nsUTF7ToUnicode.h" -#include "nsMUTF7ToUnicode.h" -#include "nsUCS2BEToUnicode.h" -#include "nsT61ToUnicode.h" -#include "nsUserDefinedToUnicode.h" -#include "nsUnicodeToAscii.h" -#include "nsUnicodeToISO88592.h" -#include "nsUnicodeToISO88593.h" -#include "nsUnicodeToISO88594.h" -#include "nsUnicodeToISO88595.h" -#include "nsUnicodeToISO88596.h" -#include "nsUnicodeToISO88596E.h" -#include "nsUnicodeToISO88596I.h" -#include "nsUnicodeToISO88597.h" -#include "nsUnicodeToISO88598.h" -#include "nsUnicodeToISO88598E.h" -#include "nsUnicodeToISO88598I.h" -#include "nsUnicodeToISO88599.h" -#include "nsUnicodeToISO885910.h" -#include "nsUnicodeToISO885913.h" -#include "nsUnicodeToISO885914.h" -#include "nsUnicodeToISO885915.h" -#include "nsUnicodeToISO885916.h" -#include "nsUnicodeToISOIR111.h" -#include "nsUnicodeToCP1250.h" -#include "nsUnicodeToCP1251.h" -#include "nsUnicodeToCP1253.h" -#include "nsUnicodeToCP1254.h" -#include "nsUnicodeToCP1255.h" -#include "nsUnicodeToCP1256.h" -#include "nsUnicodeToCP1257.h" -#include "nsUnicodeToCP1258.h" -#include "nsUnicodeToCP874.h" -#include "nsUnicodeToISO885911.h" -#include "nsUnicodeToTIS620.h" -#include "nsUnicodeToCP866.h" -#include "nsUnicodeToKOI8R.h" -#include "nsUnicodeToKOI8U.h" -#include "nsUnicodeToMacCE.h" -#include "nsUnicodeToMacGreek.h" -#include "nsUnicodeToMacTurkish.h" -#include "nsUnicodeToMacCroatian.h" -#include "nsUnicodeToMacRomanian.h" -#include "nsUnicodeToMacCyrillic.h" -#include "nsUnicodeToMacIcelandic.h" -#include "nsUnicodeToGEOSTD8.h" -#include "nsUnicodeToARMSCII8.h" -#include "nsUnicodeToTCVN5712.h" -#include "nsUnicodeToVISCII.h" -#include "nsUnicodeToVPS.h" -#include "nsUnicodeToUTF7.h" -#include "nsUnicodeToMUTF7.h" -#include "nsUnicodeToUCS2BE.h" -#include "nsUnicodeToT61.h" -#include "nsUnicodeToUserDefined.h" -#include "nsUnicodeToSymbol.h" -#include "nsUnicodeToZapfDingbat.h" -#include "nsUnicodeToAdobeEuro.h" -#include "nsMacArabicToUnicode.h" -#include "nsMacDevanagariToUnicode.h" -#include "nsMacFarsiToUnicode.h" -#include "nsMacGujaratiToUnicode.h" -#include "nsMacGurmukhiToUnicode.h" -#include "nsMacHebrewToUnicode.h" -#include "nsUnicodeToMacArabic.h" -#include "nsUnicodeToMacDevanagari.h" -#include "nsUnicodeToMacFarsi.h" -#include "nsUnicodeToMacGujarati.h" -#include "nsUnicodeToMacGurmukhi.h" -#include "nsUnicodeToMacHebrew.h" -#include "nsUnicodeToTSCII.h" - -// ucvibm -#include "nsUCvIBMCID.h" -#include "nsUCvIBMDll.h" -#include "nsCP850ToUnicode.h" -#include "nsCP852ToUnicode.h" -#include "nsCP855ToUnicode.h" -#include "nsCP857ToUnicode.h" -#include "nsCP862ToUnicode.h" -#include "nsCP864ToUnicode.h" -#include "nsCP864iToUnicode.h" -#ifdef XP_OS2 -#include "nsCP869ToUnicode.h" -#include "nsCP1125ToUnicode.h" -#include "nsCP1131ToUnicode.h" -#endif -#include "nsUnicodeToCP850.h" -#include "nsUnicodeToCP852.h" -#include "nsUnicodeToCP855.h" -#include "nsUnicodeToCP857.h" -#include "nsUnicodeToCP862.h" -#include "nsUnicodeToCP864.h" -#include "nsUnicodeToCP864i.h" -#ifdef XP_OS2 -#include "nsUnicodeToCP869.h" -#include "nsUnicodeToCP1125.h" -#include "nsUnicodeToCP1131.h" -#endif - -// ucvja -#include "nsUCVJACID.h" -#include "nsUCVJA2CID.h" -#include "nsUCVJADll.h" -#include "nsJapaneseToUnicode.h" -#include "nsUnicodeToSJIS.h" -#include "nsUnicodeToEUCJP.h" -#include "nsUnicodeToISO2022JP.h" -#include "nsUnicodeToJISx0201.h" - -// ucvtw2 -#include "nsUCvTW2CID.h" -#include "nsUCvTW2Dll.h" -#include "nsEUCTWToUnicode.h" -#include "nsUnicodeToEUCTW.h" - -// ucvtw -#include "nsUCvTWCID.h" -#include "nsUCvTWDll.h" -#include "nsBIG5ToUnicode.h" -#include "nsUnicodeToBIG5.h" -#include "nsBIG5HKSCSToUnicode.h" -#include "nsUnicodeToBIG5HKSCS.h" -#include "nsUnicodeToHKSCS.h" - -// ucvko -#include "nsUCvKOCID.h" -#include "nsUCvKODll.h" -#include "nsEUCKRToUnicode.h" -#include "nsUnicodeToEUCKR.h" -#include "nsJohabToUnicode.h" -#include "nsUnicodeToJohab.h" -#include "nsCP949ToUnicode.h" -#include "nsUnicodeToCP949.h" -#include "nsISO2022KRToUnicode.h" - -// ucvcn -#include "nsUCvCnCID.h" -#include "nsUCvCnDll.h" -#include "nsHZToUnicode.h" -#include "nsUnicodeToHZ.h" -#include "nsGBKToUnicode.h" -#include "nsUnicodeToGBK.h" -#include "nsGB2312ToUnicodeV2.h" -#include "nsUnicodeToGB2312V2.h" -#include "nsISO2022CNToUnicode.h" -#include "nsUnicodeToISO2022CN.h" -#include "gbku.h" - NS_CONVERTER_REGISTRY_START NS_UCONV_REG_UNREG("ISO-8859-1", NS_ISO88591TOUNICODE_CID, NS_UNICODETOISO88591_CID) NS_UCONV_REG_UNREG("windows-1252", NS_CP1252TOUNICODE_CID, NS_UNICODETOCP1252_CID) NS_UCONV_REG_UNREG("x-mac-roman", NS_MACROMANTOUNICODE_CID, NS_UNICODETOMACROMAN_CID) NS_UCONV_REG_UNREG("UTF-8", NS_UTF8TOUNICODE_CID, NS_UNICODETOUTF8_CID) - // ucvlatin -NS_UCONV_REG_UNREG("us-ascii", NS_ASCIITOUNICODE_CID, NS_UNICODETOASCII_CID) -NS_UCONV_REG_UNREG("ISO-8859-2", NS_ISO88592TOUNICODE_CID, NS_UNICODETOISO88592_CID) -NS_UCONV_REG_UNREG("ISO-8859-3", NS_ISO88593TOUNICODE_CID, NS_UNICODETOISO88593_CID) -NS_UCONV_REG_UNREG("ISO-8859-4", NS_ISO88594TOUNICODE_CID, NS_UNICODETOISO88594_CID) -NS_UCONV_REG_UNREG("ISO-8859-5", NS_ISO88595TOUNICODE_CID, NS_UNICODETOISO88595_CID) -NS_UCONV_REG_UNREG("ISO-8859-6", NS_ISO88596TOUNICODE_CID, NS_UNICODETOISO88596_CID) -NS_UCONV_REG_UNREG("ISO-8859-6-I", NS_ISO88596ITOUNICODE_CID, NS_UNICODETOISO88596I_CID) -NS_UCONV_REG_UNREG("ISO-8859-6-E", NS_ISO88596ETOUNICODE_CID, NS_UNICODETOISO88596E_CID) -NS_UCONV_REG_UNREG("ISO-8859-7", NS_ISO88597TOUNICODE_CID, NS_UNICODETOISO88597_CID) -NS_UCONV_REG_UNREG("ISO-8859-8", NS_ISO88598TOUNICODE_CID, NS_UNICODETOISO88598_CID) -NS_UCONV_REG_UNREG("ISO-8859-8-I", NS_ISO88598ITOUNICODE_CID, NS_UNICODETOISO88598I_CID) -NS_UCONV_REG_UNREG("ISO-8859-8-E", NS_ISO88598ETOUNICODE_CID, NS_UNICODETOISO88598E_CID) -NS_UCONV_REG_UNREG("ISO-8859-9", NS_ISO88599TOUNICODE_CID, NS_UNICODETOISO88599_CID) -NS_UCONV_REG_UNREG("ISO-8859-10", NS_ISO885910TOUNICODE_CID, NS_UNICODETOISO885910_CID) -NS_UCONV_REG_UNREG("ISO-8859-13", NS_ISO885913TOUNICODE_CID, NS_UNICODETOISO885913_CID) -NS_UCONV_REG_UNREG("ISO-8859-14", NS_ISO885914TOUNICODE_CID, NS_UNICODETOISO885914_CID) -NS_UCONV_REG_UNREG("ISO-8859-15", NS_ISO885915TOUNICODE_CID, NS_UNICODETOISO885915_CID) -NS_UCONV_REG_UNREG("ISO-8859-16", NS_ISO885916TOUNICODE_CID, NS_UNICODETOISO885916_CID) -NS_UCONV_REG_UNREG("ISO-IR-111", NS_ISOIR111TOUNICODE_CID, NS_UNICODETOISOIR111_CID) -NS_UCONV_REG_UNREG("windows-1250", NS_CP1250TOUNICODE_CID, NS_UNICODETOCP1250_CID) -NS_UCONV_REG_UNREG("windows-1251", NS_CP1251TOUNICODE_CID, NS_UNICODETOCP1251_CID) -NS_UCONV_REG_UNREG("windows-1253", NS_CP1253TOUNICODE_CID, NS_UNICODETOCP1253_CID) -NS_UCONV_REG_UNREG("windows-1254", NS_CP1254TOUNICODE_CID, NS_UNICODETOCP1254_CID) -NS_UCONV_REG_UNREG("windows-1255", NS_CP1255TOUNICODE_CID, NS_UNICODETOCP1255_CID) -NS_UCONV_REG_UNREG("windows-1256", NS_CP1256TOUNICODE_CID, NS_UNICODETOCP1256_CID) -NS_UCONV_REG_UNREG("windows-1257", NS_CP1257TOUNICODE_CID, NS_UNICODETOCP1257_CID) -NS_UCONV_REG_UNREG("windows-1258", NS_CP1258TOUNICODE_CID, NS_UNICODETOCP1258_CID) -NS_UCONV_REG_UNREG("TIS-620", NS_TIS620TOUNICODE_CID, NS_UNICODETOTIS620_CID) -NS_UCONV_REG_UNREG("windows-874", NS_CP874TOUNICODE_CID, NS_UNICODETOCP874_CID) -NS_UCONV_REG_UNREG("ISO-8859-11", NS_ISO885911TOUNICODE_CID, NS_UNICODETOISO885911_CID) -NS_UCONV_REG_UNREG("IBM866", NS_CP866TOUNICODE_CID, NS_UNICODETOCP866_CID) -NS_UCONV_REG_UNREG("KOI8-R", NS_KOI8RTOUNICODE_CID, NS_UNICODETOKOI8R_CID) -NS_UCONV_REG_UNREG("KOI8-U", NS_KOI8UTOUNICODE_CID, NS_UNICODETOKOI8U_CID) -NS_UCONV_REG_UNREG("x-mac-ce", NS_MACCETOUNICODE_CID, NS_UNICODETOMACCE_CID) -NS_UCONV_REG_UNREG("x-mac-greek", NS_MACGREEKTOUNICODE_CID, NS_UNICODETOMACGREEK_CID) -NS_UCONV_REG_UNREG("x-mac-turkish", NS_MACTURKISHTOUNICODE_CID, NS_UNICODETOMACTURKISH_CID) -NS_UCONV_REG_UNREG("x-mac-croatian", NS_MACCROATIANTOUNICODE_CID, NS_UNICODETOMACCROATIAN_CID) -NS_UCONV_REG_UNREG("x-mac-romanian", NS_MACROMANIANTOUNICODE_CID, NS_UNICODETOMACROMANIAN_CID) -NS_UCONV_REG_UNREG("x-mac-cyrillic", NS_MACCYRILLICTOUNICODE_CID, NS_UNICODETOMACCYRILLIC_CID) -NS_UCONV_REG_UNREG("x-mac-icelandic", NS_MACICELANDICTOUNICODE_CID, NS_UNICODETOMACICELANDIC_CID) -NS_UCONV_REG_UNREG("GEOSTD8", NS_GEOSTD8TOUNICODE_CID, NS_UNICODETOGEOSTD8_CID) -NS_UCONV_REG_UNREG("armscii-8", NS_ARMSCII8TOUNICODE_CID, NS_UNICODETOARMSCII8_CID) -NS_UCONV_REG_UNREG("x-viet-tcvn5712", NS_TCVN5712TOUNICODE_CID, NS_UNICODETOTCVN5712_CID) -NS_UCONV_REG_UNREG("VISCII", NS_VISCIITOUNICODE_CID, NS_UNICODETOVISCII_CID) -NS_UCONV_REG_UNREG("x-viet-vps", NS_VPSTOUNICODE_CID, NS_UNICODETOVPS_CID) -NS_UCONV_REG_UNREG("UTF-7", NS_UTF7TOUNICODE_CID, NS_UNICODETOUTF7_CID) -NS_UCONV_REG_UNREG("x-imap4-modified-utf7", NS_MUTF7TOUNICODE_CID, NS_UNICODETOMUTF7_CID) -NS_UCONV_REG_UNREG("UTF-16", NS_UTF16TOUNICODE_CID, NS_UNICODETOUTF16_CID) -NS_UCONV_REG_UNREG("UTF-16BE", NS_UTF16BETOUNICODE_CID, NS_UNICODETOUTF16BE_CID) -NS_UCONV_REG_UNREG("UTF-16LE", NS_UTF16LETOUNICODE_CID, NS_UNICODETOUTF16LE_CID) -NS_UCONV_REG_UNREG("T.61-8bit", NS_T61TOUNICODE_CID, NS_UNICODETOT61_CID) -NS_UCONV_REG_UNREG("x-user-defined", NS_USERDEFINEDTOUNICODE_CID, NS_UNICODETOUSERDEFINED_CID) -NS_UCONV_REG_UNREG("x-mac-arabic" , NS_MACARABICTOUNICODE_CID, NS_UNICODETOMACARABIC_CID) -NS_UCONV_REG_UNREG("x-mac-devanagari" , NS_MACDEVANAGARITOUNICODE_CID, NS_UNICODETOMACDEVANAGARI_CID) -NS_UCONV_REG_UNREG("x-mac-farsi" , NS_MACFARSITOUNICODE_CID, NS_UNICODETOMACFARSI_CID) -NS_UCONV_REG_UNREG("x-mac-gurmukhi" , NS_MACGURMUKHITOUNICODE_CID, NS_UNICODETOMACGURMUKHI_CID) -NS_UCONV_REG_UNREG("x-mac-gujarati" , NS_MACGUJARATITOUNICODE_CID, NS_UNICODETOMACGUJARATI_CID) -NS_UCONV_REG_UNREG("x-mac-hebrew" , NS_MACHEBREWTOUNICODE_CID, NS_UNICODETOMACHEBREW_CID) - -NS_UCONV_REG_UNREG_ENCODER("Adobe-Symbol-Encoding" , NS_UNICODETOSYMBOL_CID) -NS_UCONV_REG_UNREG_ENCODER("x-zapf-dingbats" , NS_UNICODETOZAPFDINGBATS_CID) -NS_UCONV_REG_UNREG_ENCODER("x-tscii", NS_UNICODETOTSCII_CID) -NS_UCONV_REG_UNREG_ENCODER("x-tamilttf-0", NS_UNICODETOTAMILTTF_CID) - - // ucvibm -NS_UCONV_REG_UNREG("IBM850", NS_CP850TOUNICODE_CID, NS_UNICODETOCP850_CID) -NS_UCONV_REG_UNREG("IBM852", NS_CP852TOUNICODE_CID, NS_UNICODETOCP852_CID) -NS_UCONV_REG_UNREG("IBM855", NS_CP855TOUNICODE_CID, NS_UNICODETOCP855_CID) -NS_UCONV_REG_UNREG("IBM857", NS_CP857TOUNICODE_CID, NS_UNICODETOCP857_CID) -NS_UCONV_REG_UNREG("IBM862", NS_CP862TOUNICODE_CID, NS_UNICODETOCP862_CID) -NS_UCONV_REG_UNREG("IBM864", NS_CP864TOUNICODE_CID, NS_UNICODETOCP864_CID) -NS_UCONV_REG_UNREG("IBM864i", NS_CP864ITOUNICODE_CID, NS_UNICODETOCP864I_CID) -#ifdef XP_OS2 -NS_UCONV_REG_UNREG("IBM869", NS_CP869TOUNICODE_CID, NS_UNICODETOCP869_CID) -NS_UCONV_REG_UNREG("IBM1125", NS_CP1125TOUNICODE_CID, NS_UNICODETOCP1125_CID) -NS_UCONV_REG_UNREG("IBM1131", NS_CP1131TOUNICODE_CID, NS_UNICODETOCP1131_CID) -#endif - - // ucvja -NS_UCONV_REG_UNREG("Shift_JIS", NS_SJISTOUNICODE_CID, NS_UNICODETOSJIS_CID) -NS_UCONV_REG_UNREG("ISO-2022-JP", NS_ISO2022JPTOUNICODE_CID, NS_UNICODETOISO2022JP_CID) -NS_UCONV_REG_UNREG("EUC-JP", NS_EUCJPTOUNICODE_CID, NS_UNICODETOEUCJP_CID) - -NS_UCONV_REG_UNREG_ENCODER("jis_0201" , NS_UNICODETOJISX0201_CID) - - // ucvtw2 -NS_UCONV_REG_UNREG("x-euc-tw", NS_EUCTWTOUNICODE_CID, NS_UNICODETOEUCTW_CID) - - // ucvtw -NS_UCONV_REG_UNREG("Big5", NS_BIG5TOUNICODE_CID, NS_UNICODETOBIG5_CID) -NS_UCONV_REG_UNREG("Big5-HKSCS", NS_BIG5HKSCSTOUNICODE_CID, NS_UNICODETOBIG5HKSCS_CID) - -NS_UCONV_REG_UNREG_ENCODER("hkscs-1" , NS_UNICODETOHKSCS_CID) - - // ucvko -NS_UCONV_REG_UNREG("EUC-KR", NS_EUCKRTOUNICODE_CID, NS_UNICODETOEUCKR_CID) -NS_UCONV_REG_UNREG("x-johab", NS_JOHABTOUNICODE_CID, NS_UNICODETOJOHAB_CID) -NS_UCONV_REG_UNREG("x-windows-949", NS_CP949TOUNICODE_CID, NS_UNICODETOCP949_CID) -NS_UCONV_REG_UNREG_DECODER("ISO-2022-KR", NS_ISO2022KRTOUNICODE_CID) - -// ucvcn -NS_UCONV_REG_UNREG("GB2312", NS_GB2312TOUNICODE_CID, NS_UNICODETOGB2312_CID) -NS_UCONV_REG_UNREG("gbk", NS_GBKTOUNICODE_CID, NS_UNICODETOGBK_CID) -NS_UCONV_REG_UNREG("HZ-GB-2312", NS_HZTOUNICODE_CID, NS_UNICODETOHZ_CID) -NS_UCONV_REG_UNREG("gb18030", NS_GB18030TOUNICODE_CID, NS_UNICODETOGB18030_CID) -NS_UCONV_REG_UNREG_DECODER("ISO-2022-CN", NS_ISO2022CNTOUNICODE_CID) - { NS_TITLE_BUNDLE_CATEGORY, "chrome://global/locale/charsetTitles.properties", "" }, { NS_DATA_BUNDLE_CATEGORY, "resource://gre-resources/charsetData.properties", "" }, @@ -391,170 +86,10 @@ NS_CONVERTER_REGISTRY_END NS_GENERIC_FACTORY_CONSTRUCTOR(nsUnicodeToUTF8) NS_GENERIC_FACTORY_CONSTRUCTOR(nsUTF8ToUnicode) -// ucvlatin -NS_GENERIC_FACTORY_CONSTRUCTOR(nsUTF7ToUnicode) -NS_GENERIC_FACTORY_CONSTRUCTOR(nsMUTF7ToUnicode) -NS_GENERIC_FACTORY_CONSTRUCTOR(nsUTF16ToUnicode) -NS_GENERIC_FACTORY_CONSTRUCTOR(nsUTF16BEToUnicode) -NS_GENERIC_FACTORY_CONSTRUCTOR(nsUTF16LEToUnicode) -NS_GENERIC_FACTORY_CONSTRUCTOR(nsUnicodeToUTF7) -NS_GENERIC_FACTORY_CONSTRUCTOR(nsUnicodeToMUTF7) -NS_GENERIC_FACTORY_CONSTRUCTOR(nsUnicodeToUTF16BE) -NS_GENERIC_FACTORY_CONSTRUCTOR(nsUnicodeToUTF16LE) -NS_GENERIC_FACTORY_CONSTRUCTOR(nsUnicodeToUTF16) -NS_GENERIC_FACTORY_CONSTRUCTOR(nsUnicodeToTSCII) -NS_GENERIC_FACTORY_CONSTRUCTOR(nsUnicodeToTamilTTF) - -// ucvibm - -// ucvja -NS_GENERIC_FACTORY_CONSTRUCTOR(nsShiftJISToUnicode) -NS_GENERIC_FACTORY_CONSTRUCTOR(nsEUCJPToUnicodeV2) -NS_GENERIC_FACTORY_CONSTRUCTOR(nsISO2022JPToUnicodeV2) -NS_GENERIC_FACTORY_CONSTRUCTOR(nsUnicodeToISO2022JP) - -// ucvtw2 - -// ucvtw - -// ucvko -NS_GENERIC_FACTORY_CONSTRUCTOR(nsISO2022KRToUnicode) - -// ucvcn -NS_GENERIC_FACTORY_CONSTRUCTOR(nsGB2312ToUnicodeV2) -NS_GENERIC_FACTORY_CONSTRUCTOR(nsUnicodeToGB2312V2) -NS_GENERIC_FACTORY_CONSTRUCTOR(nsGBKToUnicode) -NS_GENERIC_FACTORY_CONSTRUCTOR(nsUnicodeToGBK) -NS_GENERIC_FACTORY_CONSTRUCTOR(nsHZToUnicode) -NS_GENERIC_FACTORY_CONSTRUCTOR(nsUnicodeToHZ) -NS_GENERIC_FACTORY_CONSTRUCTOR(nsGB18030ToUnicode) -NS_GENERIC_FACTORY_CONSTRUCTOR(nsUnicodeToGB18030) -NS_GENERIC_FACTORY_CONSTRUCTOR(nsISO2022CNToUnicode) - //---------------------------------------------------------------------------- // Global functions and data [declaration] -// ucvja -const PRUint16 g_uf0201Mapping[] = { -#include "jis0201.uf" -}; - -const PRUint16 g_uf0201GLMapping[] = { -#include "jis0201gl.uf" -}; - -const PRUint16 g_uf0208Mapping[] = { -#include "jis0208.uf" -}; - -const PRUint16 g_uf0208extMapping[] = { -#include "jis0208ext.uf" -}; - -// ucvtw2 -const PRUint16 g_ufCNS1MappingTable[] = { -#include "cns_1.uf" -}; - -const PRUint16 g_ufCNS2MappingTable[] = { -#include "cns_2.uf" -}; - -const PRUint16 g_ufCNS3MappingTable[] = { -#include "cns3.uf" -}; - -const PRUint16 g_ufCNS4MappingTable[] = { -#include "cns4.uf" -}; - -const PRUint16 g_ufCNS5MappingTable[] = { -#include "cns5.uf" -}; - -const PRUint16 g_ufCNS6MappingTable[] = { -#include "cns6.uf" -}; - -const PRUint16 g_ufCNS7MappingTable[] = { -#include "cns7.uf" -}; - -const PRUint16 g_utCNS1MappingTable[] = { -#include "cns_1.ut" -}; - -const PRUint16 g_utCNS2MappingTable[] = { -#include "cns_2.ut" -}; - -const PRUint16 g_utCNS3MappingTable[] = { -#include "cns3.ut" -}; - -const PRUint16 g_utCNS4MappingTable[] = { -#include "cns4.ut" -}; - -const PRUint16 g_utCNS5MappingTable[] = { -#include "cns5.ut" -}; - -const PRUint16 g_utCNS6MappingTable[] = { -#include "cns6.ut" -}; - -const PRUint16 g_utCNS7MappingTable[] = { -#include "cns7.ut" -}; - -const PRUint16 g_ASCIIMappingTable[] = { - 0x0001, 0x0004, 0x0005, 0x0008, 0x0000, 0x0000, 0x007F, 0x0000 -}; - -// ucvtw -const PRUint16 g_ufBig5Mapping[] = { -#include "big5.uf" -}; - -const PRUint16 g_utBIG5Mapping[] = { -#include "big5.ut" -}; - -const PRUint16 g_ufBig5HKSCSMapping[] = { -#include "hkscs.uf" -}; - -const PRUint16 g_ASCIIMapping[] = { - 0x0001, 0x0004, 0x0005, 0x0008, 0x0000, 0x0000, 0x007F, 0x0000 -}; - -const PRUint16 g_utBig5HKSCSMapping[] = { -#include "hkscs.ut" -}; - -// ucvko -const PRUint16 g_utKSC5601Mapping[] = { -#include "u20kscgl.ut" -}; - -const PRUint16 g_ufKSC5601Mapping[] = { -#include "u20kscgl.uf" -}; - -const PRUint16 g_ucvko_AsciiMapping[] = { - 0x0001, 0x0004, 0x0005, 0x0008, 0x0000, 0x0000, 0x007F, 0x0000 -}; - -const PRUint16 g_HangulNullMapping[] ={ - 0x0001, 0x0004, 0x0005, 0x0008, 0x0000, 0xAC00, 0xD7A3, 0xAC00 -}; - -const PRUint16 g_ufJohabJamoMapping[] ={ -#include "johabjamo.uf" -}; - NS_GENERIC_FACTORY_CONSTRUCTOR(nsCharsetConverterManager) NS_GENERIC_FACTORY_CONSTRUCTOR(nsTextToSubURI) NS_GENERIC_FACTORY_CONSTRUCTOR(nsUTF8ConverterService) @@ -576,181 +111,6 @@ NS_DEFINE_NAMED_CID(NS_UNICODETOISO88591_CID); NS_DEFINE_NAMED_CID(NS_UNICODETOCP1252_CID); NS_DEFINE_NAMED_CID(NS_UNICODETOMACROMAN_CID); NS_DEFINE_NAMED_CID(NS_UNICODETOUTF8_CID); -NS_DEFINE_NAMED_CID(NS_ASCIITOUNICODE_CID); -NS_DEFINE_NAMED_CID(NS_ISO88592TOUNICODE_CID); -NS_DEFINE_NAMED_CID(NS_ISO88593TOUNICODE_CID); -NS_DEFINE_NAMED_CID(NS_ISO88594TOUNICODE_CID); -NS_DEFINE_NAMED_CID(NS_ISO88595TOUNICODE_CID); -NS_DEFINE_NAMED_CID(NS_ISO88596TOUNICODE_CID); -NS_DEFINE_NAMED_CID(NS_ISO88596ITOUNICODE_CID); -NS_DEFINE_NAMED_CID(NS_ISO88596ETOUNICODE_CID); -NS_DEFINE_NAMED_CID(NS_ISO88597TOUNICODE_CID); -NS_DEFINE_NAMED_CID(NS_ISO88598TOUNICODE_CID); -NS_DEFINE_NAMED_CID(NS_ISO88598ITOUNICODE_CID); -NS_DEFINE_NAMED_CID(NS_ISO88598ETOUNICODE_CID); -NS_DEFINE_NAMED_CID(NS_ISO88599TOUNICODE_CID); -NS_DEFINE_NAMED_CID(NS_ISO885910TOUNICODE_CID); -NS_DEFINE_NAMED_CID(NS_ISO885913TOUNICODE_CID); -NS_DEFINE_NAMED_CID(NS_ISO885914TOUNICODE_CID); -NS_DEFINE_NAMED_CID(NS_ISO885915TOUNICODE_CID); -NS_DEFINE_NAMED_CID(NS_ISO885916TOUNICODE_CID); -NS_DEFINE_NAMED_CID(NS_ISOIR111TOUNICODE_CID); -NS_DEFINE_NAMED_CID(NS_CP1250TOUNICODE_CID); -NS_DEFINE_NAMED_CID(NS_CP1251TOUNICODE_CID); -NS_DEFINE_NAMED_CID(NS_CP1253TOUNICODE_CID); -NS_DEFINE_NAMED_CID(NS_CP1254TOUNICODE_CID); -NS_DEFINE_NAMED_CID(NS_CP1255TOUNICODE_CID); -NS_DEFINE_NAMED_CID(NS_CP1256TOUNICODE_CID); -NS_DEFINE_NAMED_CID(NS_CP1257TOUNICODE_CID); -NS_DEFINE_NAMED_CID(NS_CP1258TOUNICODE_CID); -NS_DEFINE_NAMED_CID(NS_TIS620TOUNICODE_CID); -NS_DEFINE_NAMED_CID(NS_ISO885911TOUNICODE_CID); -NS_DEFINE_NAMED_CID(NS_CP874TOUNICODE_CID); -NS_DEFINE_NAMED_CID(NS_CP866TOUNICODE_CID); -NS_DEFINE_NAMED_CID(NS_KOI8RTOUNICODE_CID); -NS_DEFINE_NAMED_CID(NS_KOI8UTOUNICODE_CID); -NS_DEFINE_NAMED_CID(NS_MACCETOUNICODE_CID); -NS_DEFINE_NAMED_CID(NS_MACGREEKTOUNICODE_CID); -NS_DEFINE_NAMED_CID(NS_MACTURKISHTOUNICODE_CID); -NS_DEFINE_NAMED_CID(NS_MACCROATIANTOUNICODE_CID); -NS_DEFINE_NAMED_CID(NS_MACROMANIANTOUNICODE_CID); -NS_DEFINE_NAMED_CID(NS_MACCYRILLICTOUNICODE_CID); -NS_DEFINE_NAMED_CID(NS_MACICELANDICTOUNICODE_CID); -NS_DEFINE_NAMED_CID(NS_GEOSTD8TOUNICODE_CID); -NS_DEFINE_NAMED_CID(NS_ARMSCII8TOUNICODE_CID); -NS_DEFINE_NAMED_CID(NS_TCVN5712TOUNICODE_CID); -NS_DEFINE_NAMED_CID(NS_VISCIITOUNICODE_CID); -NS_DEFINE_NAMED_CID(NS_VPSTOUNICODE_CID); -NS_DEFINE_NAMED_CID(NS_UTF7TOUNICODE_CID); -NS_DEFINE_NAMED_CID(NS_MUTF7TOUNICODE_CID); -NS_DEFINE_NAMED_CID(NS_UTF16TOUNICODE_CID); -NS_DEFINE_NAMED_CID(NS_UTF16BETOUNICODE_CID); -NS_DEFINE_NAMED_CID(NS_UTF16LETOUNICODE_CID); -NS_DEFINE_NAMED_CID(NS_T61TOUNICODE_CID); -NS_DEFINE_NAMED_CID(NS_USERDEFINEDTOUNICODE_CID); -NS_DEFINE_NAMED_CID(NS_MACARABICTOUNICODE_CID); -NS_DEFINE_NAMED_CID(NS_MACDEVANAGARITOUNICODE_CID); -NS_DEFINE_NAMED_CID(NS_MACFARSITOUNICODE_CID); -NS_DEFINE_NAMED_CID(NS_MACGURMUKHITOUNICODE_CID); -NS_DEFINE_NAMED_CID(NS_MACGUJARATITOUNICODE_CID); -NS_DEFINE_NAMED_CID(NS_MACHEBREWTOUNICODE_CID); -NS_DEFINE_NAMED_CID(NS_UNICODETOASCII_CID); -NS_DEFINE_NAMED_CID(NS_UNICODETOISO88592_CID); -NS_DEFINE_NAMED_CID(NS_UNICODETOISO88593_CID); -NS_DEFINE_NAMED_CID(NS_UNICODETOISO88594_CID); -NS_DEFINE_NAMED_CID(NS_UNICODETOISO88595_CID); -NS_DEFINE_NAMED_CID(NS_UNICODETOISO88596_CID); -NS_DEFINE_NAMED_CID(NS_UNICODETOISO88596I_CID); -NS_DEFINE_NAMED_CID(NS_UNICODETOISO88596E_CID); -NS_DEFINE_NAMED_CID(NS_UNICODETOISO88597_CID); -NS_DEFINE_NAMED_CID(NS_UNICODETOISO88598_CID); -NS_DEFINE_NAMED_CID(NS_UNICODETOISO88598I_CID); -NS_DEFINE_NAMED_CID(NS_UNICODETOISO88598E_CID); -NS_DEFINE_NAMED_CID(NS_UNICODETOISO88599_CID); -NS_DEFINE_NAMED_CID(NS_UNICODETOISO885910_CID); -NS_DEFINE_NAMED_CID(NS_UNICODETOISO885913_CID); -NS_DEFINE_NAMED_CID(NS_UNICODETOISO885914_CID); -NS_DEFINE_NAMED_CID(NS_UNICODETOISO885915_CID); -NS_DEFINE_NAMED_CID(NS_UNICODETOISO885916_CID); -NS_DEFINE_NAMED_CID(NS_UNICODETOISOIR111_CID); -NS_DEFINE_NAMED_CID(NS_UNICODETOCP1250_CID); -NS_DEFINE_NAMED_CID(NS_UNICODETOCP1251_CID); -NS_DEFINE_NAMED_CID(NS_UNICODETOCP1253_CID); -NS_DEFINE_NAMED_CID(NS_UNICODETOCP1254_CID); -NS_DEFINE_NAMED_CID(NS_UNICODETOCP1255_CID); -NS_DEFINE_NAMED_CID(NS_UNICODETOCP1256_CID); -NS_DEFINE_NAMED_CID(NS_UNICODETOCP1257_CID); -NS_DEFINE_NAMED_CID(NS_UNICODETOCP1258_CID); -NS_DEFINE_NAMED_CID(NS_UNICODETOTIS620_CID); -NS_DEFINE_NAMED_CID(NS_UNICODETOISO885911_CID); -NS_DEFINE_NAMED_CID(NS_UNICODETOCP874_CID); -NS_DEFINE_NAMED_CID(NS_UNICODETOCP866_CID); -NS_DEFINE_NAMED_CID(NS_UNICODETOKOI8R_CID); -NS_DEFINE_NAMED_CID(NS_UNICODETOKOI8U_CID); -NS_DEFINE_NAMED_CID(NS_UNICODETOMACCE_CID); -NS_DEFINE_NAMED_CID(NS_UNICODETOMACGREEK_CID); -NS_DEFINE_NAMED_CID(NS_UNICODETOMACTURKISH_CID); -NS_DEFINE_NAMED_CID(NS_UNICODETOMACCROATIAN_CID); -NS_DEFINE_NAMED_CID(NS_UNICODETOMACROMANIAN_CID); -NS_DEFINE_NAMED_CID(NS_UNICODETOMACCYRILLIC_CID); -NS_DEFINE_NAMED_CID(NS_UNICODETOMACICELANDIC_CID); -NS_DEFINE_NAMED_CID(NS_UNICODETOGEOSTD8_CID); -NS_DEFINE_NAMED_CID(NS_UNICODETOARMSCII8_CID); -NS_DEFINE_NAMED_CID(NS_UNICODETOTCVN5712_CID); -NS_DEFINE_NAMED_CID(NS_UNICODETOVISCII_CID); -NS_DEFINE_NAMED_CID(NS_UNICODETOVPS_CID); -NS_DEFINE_NAMED_CID(NS_UNICODETOUTF7_CID); -NS_DEFINE_NAMED_CID(NS_UNICODETOMUTF7_CID); -NS_DEFINE_NAMED_CID(NS_UNICODETOUTF16BE_CID); -NS_DEFINE_NAMED_CID(NS_UNICODETOUTF16LE_CID); -NS_DEFINE_NAMED_CID(NS_UNICODETOUTF16_CID); -NS_DEFINE_NAMED_CID(NS_UNICODETOT61_CID); -NS_DEFINE_NAMED_CID(NS_UNICODETOUSERDEFINED_CID); -NS_DEFINE_NAMED_CID(NS_UNICODETOSYMBOL_CID); -NS_DEFINE_NAMED_CID(NS_UNICODETOZAPFDINGBATS_CID); -NS_DEFINE_NAMED_CID(NS_UNICODETOADOBEEURO_CID); -NS_DEFINE_NAMED_CID(NS_UNICODETOMACARABIC_CID); -NS_DEFINE_NAMED_CID(NS_UNICODETOMACDEVANAGARI_CID); -NS_DEFINE_NAMED_CID(NS_UNICODETOMACFARSI_CID); -NS_DEFINE_NAMED_CID(NS_UNICODETOMACGURMUKHI_CID); -NS_DEFINE_NAMED_CID(NS_UNICODETOMACGUJARATI_CID); -NS_DEFINE_NAMED_CID(NS_UNICODETOMACHEBREW_CID); -NS_DEFINE_NAMED_CID(NS_UNICODETOTSCII_CID); -NS_DEFINE_NAMED_CID(NS_UNICODETOTAMILTTF_CID); -NS_DEFINE_NAMED_CID(NS_CP850TOUNICODE_CID); -NS_DEFINE_NAMED_CID(NS_CP852TOUNICODE_CID); -NS_DEFINE_NAMED_CID(NS_CP855TOUNICODE_CID); -NS_DEFINE_NAMED_CID(NS_CP857TOUNICODE_CID); -NS_DEFINE_NAMED_CID(NS_CP862TOUNICODE_CID); -NS_DEFINE_NAMED_CID(NS_CP864TOUNICODE_CID); -NS_DEFINE_NAMED_CID(NS_CP864ITOUNICODE_CID); -#ifdef XP_OS2 -NS_DEFINE_NAMED_CID(NS_CP869TOUNICODE_CID); -NS_DEFINE_NAMED_CID(NS_CP1125TOUNICODE_CID); -NS_DEFINE_NAMED_CID(NS_CP1131TOUNICODE_CID); -#endif -NS_DEFINE_NAMED_CID(NS_UNICODETOCP850_CID); -NS_DEFINE_NAMED_CID(NS_UNICODETOCP852_CID); -NS_DEFINE_NAMED_CID(NS_UNICODETOCP855_CID); -NS_DEFINE_NAMED_CID(NS_UNICODETOCP857_CID); -NS_DEFINE_NAMED_CID(NS_UNICODETOCP862_CID); -NS_DEFINE_NAMED_CID(NS_UNICODETOCP864_CID); -NS_DEFINE_NAMED_CID(NS_UNICODETOCP864I_CID); -#ifdef XP_OS2 -NS_DEFINE_NAMED_CID(NS_UNICODETOCP869_CID); -NS_DEFINE_NAMED_CID(NS_UNICODETOCP1125_CID); -NS_DEFINE_NAMED_CID(NS_UNICODETOCP1131_CID); -#endif -NS_DEFINE_NAMED_CID(NS_SJISTOUNICODE_CID); -NS_DEFINE_NAMED_CID(NS_EUCJPTOUNICODE_CID); -NS_DEFINE_NAMED_CID( NS_ISO2022JPTOUNICODE_CID); -NS_DEFINE_NAMED_CID(NS_UNICODETOSJIS_CID); -NS_DEFINE_NAMED_CID(NS_UNICODETOEUCJP_CID); -NS_DEFINE_NAMED_CID(NS_UNICODETOISO2022JP_CID); -NS_DEFINE_NAMED_CID(NS_UNICODETOJISX0201_CID); -NS_DEFINE_NAMED_CID(NS_EUCTWTOUNICODE_CID); -NS_DEFINE_NAMED_CID(NS_UNICODETOEUCTW_CID); -NS_DEFINE_NAMED_CID(NS_UNICODETOBIG5_CID); -NS_DEFINE_NAMED_CID(NS_BIG5TOUNICODE_CID); -NS_DEFINE_NAMED_CID(NS_UNICODETOBIG5HKSCS_CID); -NS_DEFINE_NAMED_CID(NS_UNICODETOHKSCS_CID); -NS_DEFINE_NAMED_CID(NS_BIG5HKSCSTOUNICODE_CID); -NS_DEFINE_NAMED_CID(NS_EUCKRTOUNICODE_CID); -NS_DEFINE_NAMED_CID(NS_UNICODETOEUCKR_CID); -NS_DEFINE_NAMED_CID(NS_JOHABTOUNICODE_CID); -NS_DEFINE_NAMED_CID(NS_UNICODETOJOHAB_CID); -NS_DEFINE_NAMED_CID(NS_CP949TOUNICODE_CID); -NS_DEFINE_NAMED_CID(NS_UNICODETOCP949_CID); -NS_DEFINE_NAMED_CID(NS_ISO2022KRTOUNICODE_CID); -NS_DEFINE_NAMED_CID(NS_GB2312TOUNICODE_CID); -NS_DEFINE_NAMED_CID(NS_UNICODETOGB2312_CID); -NS_DEFINE_NAMED_CID(NS_GBKTOUNICODE_CID); -NS_DEFINE_NAMED_CID(NS_UNICODETOGBK_CID); -NS_DEFINE_NAMED_CID(NS_HZTOUNICODE_CID); -NS_DEFINE_NAMED_CID(NS_UNICODETOHZ_CID); -NS_DEFINE_NAMED_CID(NS_GB18030TOUNICODE_CID); -NS_DEFINE_NAMED_CID(NS_UNICODETOGB18030_CID); -NS_DEFINE_NAMED_CID(NS_ISO2022CNTOUNICODE_CID); static const mozilla::Module::CIDEntry kUConvCIDs[] = { { &kNS_ICHARSETCONVERTERMANAGER_CID, false, NULL, nsCharsetConverterManagerConstructor }, @@ -767,181 +127,6 @@ static const mozilla::Module::CIDEntry kUConvCIDs[] = { { &kNS_UNICODETOCP1252_CID, false, NULL, nsUnicodeToCP1252Constructor }, { &kNS_UNICODETOMACROMAN_CID, false, NULL, nsUnicodeToMacRomanConstructor }, { &kNS_UNICODETOUTF8_CID, false, NULL, nsUnicodeToUTF8Constructor }, - { &kNS_ASCIITOUNICODE_CID, false, NULL, nsAsciiToUnicodeConstructor }, - { &kNS_ISO88592TOUNICODE_CID, false, NULL, nsISO88592ToUnicodeConstructor }, - { &kNS_ISO88593TOUNICODE_CID, false, NULL, nsISO88593ToUnicodeConstructor }, - { &kNS_ISO88594TOUNICODE_CID, false, NULL, nsISO88594ToUnicodeConstructor }, - { &kNS_ISO88595TOUNICODE_CID, false, NULL, nsISO88595ToUnicodeConstructor }, - { &kNS_ISO88596TOUNICODE_CID, false, NULL, nsISO88596ToUnicodeConstructor }, - { &kNS_ISO88596ITOUNICODE_CID, false, NULL, nsISO88596IToUnicodeConstructor }, - { &kNS_ISO88596ETOUNICODE_CID, false, NULL, nsISO88596EToUnicodeConstructor }, - { &kNS_ISO88597TOUNICODE_CID, false, NULL, nsISO88597ToUnicodeConstructor }, - { &kNS_ISO88598TOUNICODE_CID, false, NULL, nsISO88598ToUnicodeConstructor }, - { &kNS_ISO88598ITOUNICODE_CID, false, NULL, nsISO88598IToUnicodeConstructor }, - { &kNS_ISO88598ETOUNICODE_CID, false, NULL, nsISO88598EToUnicodeConstructor }, - { &kNS_ISO88599TOUNICODE_CID, false, NULL, nsISO88599ToUnicodeConstructor }, - { &kNS_ISO885910TOUNICODE_CID, false, NULL, nsISO885910ToUnicodeConstructor }, - { &kNS_ISO885913TOUNICODE_CID, false, NULL, nsISO885913ToUnicodeConstructor }, - { &kNS_ISO885914TOUNICODE_CID, false, NULL, nsISO885914ToUnicodeConstructor }, - { &kNS_ISO885915TOUNICODE_CID, false, NULL, nsISO885915ToUnicodeConstructor }, - { &kNS_ISO885916TOUNICODE_CID, false, NULL, nsISO885916ToUnicodeConstructor }, - { &kNS_ISOIR111TOUNICODE_CID, false, NULL, nsISOIR111ToUnicodeConstructor }, - { &kNS_CP1250TOUNICODE_CID, false, NULL, nsCP1250ToUnicodeConstructor }, - { &kNS_CP1251TOUNICODE_CID, false, NULL, nsCP1251ToUnicodeConstructor }, - { &kNS_CP1253TOUNICODE_CID, false, NULL, nsCP1253ToUnicodeConstructor }, - { &kNS_CP1254TOUNICODE_CID, false, NULL, nsCP1254ToUnicodeConstructor }, - { &kNS_CP1255TOUNICODE_CID, false, NULL, nsCP1255ToUnicodeConstructor }, - { &kNS_CP1256TOUNICODE_CID, false, NULL, nsCP1256ToUnicodeConstructor }, - { &kNS_CP1257TOUNICODE_CID, false, NULL, nsCP1257ToUnicodeConstructor }, - { &kNS_CP1258TOUNICODE_CID, false, NULL, nsCP1258ToUnicodeConstructor }, - { &kNS_TIS620TOUNICODE_CID, false, NULL, nsTIS620ToUnicodeConstructor }, - { &kNS_ISO885911TOUNICODE_CID, false, NULL, nsISO885911ToUnicodeConstructor }, - { &kNS_CP874TOUNICODE_CID, false, NULL, nsCP874ToUnicodeConstructor }, - { &kNS_CP866TOUNICODE_CID, false, NULL, nsCP866ToUnicodeConstructor }, - { &kNS_KOI8RTOUNICODE_CID, false, NULL, nsKOI8RToUnicodeConstructor }, - { &kNS_KOI8UTOUNICODE_CID, false, NULL, nsKOI8UToUnicodeConstructor }, - { &kNS_MACCETOUNICODE_CID, false, NULL, nsMacCEToUnicodeConstructor }, - { &kNS_MACGREEKTOUNICODE_CID, false, NULL, nsMacGreekToUnicodeConstructor }, - { &kNS_MACTURKISHTOUNICODE_CID, false, NULL, nsMacTurkishToUnicodeConstructor }, - { &kNS_MACCROATIANTOUNICODE_CID, false, NULL, nsMacCroatianToUnicodeConstructor }, - { &kNS_MACROMANIANTOUNICODE_CID, false, NULL, nsMacRomanianToUnicodeConstructor }, - { &kNS_MACCYRILLICTOUNICODE_CID, false, NULL, nsMacCyrillicToUnicodeConstructor }, - { &kNS_MACICELANDICTOUNICODE_CID, false, NULL, nsMacIcelandicToUnicodeConstructor }, - { &kNS_GEOSTD8TOUNICODE_CID, false, NULL, nsGEOSTD8ToUnicodeConstructor }, - { &kNS_ARMSCII8TOUNICODE_CID, false, NULL, nsARMSCII8ToUnicodeConstructor }, - { &kNS_TCVN5712TOUNICODE_CID, false, NULL, nsTCVN5712ToUnicodeConstructor }, - { &kNS_VISCIITOUNICODE_CID, false, NULL, nsVISCIIToUnicodeConstructor }, - { &kNS_VPSTOUNICODE_CID, false, NULL, nsVPSToUnicodeConstructor }, - { &kNS_UTF7TOUNICODE_CID, false, NULL, nsUTF7ToUnicodeConstructor }, - { &kNS_MUTF7TOUNICODE_CID, false, NULL, nsMUTF7ToUnicodeConstructor }, - { &kNS_UTF16TOUNICODE_CID, false, NULL, nsUTF16ToUnicodeConstructor }, - { &kNS_UTF16BETOUNICODE_CID, false, NULL, nsUTF16BEToUnicodeConstructor }, - { &kNS_UTF16LETOUNICODE_CID, false, NULL, nsUTF16LEToUnicodeConstructor }, - { &kNS_T61TOUNICODE_CID, false, NULL, nsT61ToUnicodeConstructor }, - { &kNS_USERDEFINEDTOUNICODE_CID, false, NULL, nsUserDefinedToUnicodeConstructor }, - { &kNS_MACARABICTOUNICODE_CID, false, NULL, nsMacArabicToUnicodeConstructor }, - { &kNS_MACDEVANAGARITOUNICODE_CID, false, NULL, nsMacDevanagariToUnicodeConstructor }, - { &kNS_MACFARSITOUNICODE_CID, false, NULL, nsMacFarsiToUnicodeConstructor }, - { &kNS_MACGURMUKHITOUNICODE_CID, false, NULL, nsMacGurmukhiToUnicodeConstructor }, - { &kNS_MACGUJARATITOUNICODE_CID, false, NULL, nsMacGujaratiToUnicodeConstructor }, - { &kNS_MACHEBREWTOUNICODE_CID, false, NULL, nsMacHebrewToUnicodeConstructor }, - { &kNS_UNICODETOASCII_CID, false, NULL, nsUnicodeToAsciiConstructor }, - { &kNS_UNICODETOISO88592_CID, false, NULL, nsUnicodeToISO88592Constructor }, - { &kNS_UNICODETOISO88593_CID, false, NULL, nsUnicodeToISO88593Constructor }, - { &kNS_UNICODETOISO88594_CID, false, NULL, nsUnicodeToISO88594Constructor }, - { &kNS_UNICODETOISO88595_CID, false, NULL, nsUnicodeToISO88595Constructor }, - { &kNS_UNICODETOISO88596_CID, false, NULL, nsUnicodeToISO88596Constructor }, - { &kNS_UNICODETOISO88596I_CID, false, NULL, nsUnicodeToISO88596IConstructor }, - { &kNS_UNICODETOISO88596E_CID, false, NULL, nsUnicodeToISO88596EConstructor }, - { &kNS_UNICODETOISO88597_CID, false, NULL, nsUnicodeToISO88597Constructor }, - { &kNS_UNICODETOISO88598_CID, false, NULL, nsUnicodeToISO88598Constructor }, - { &kNS_UNICODETOISO88598I_CID, false, NULL, nsUnicodeToISO88598IConstructor }, - { &kNS_UNICODETOISO88598E_CID, false, NULL, nsUnicodeToISO88598EConstructor }, - { &kNS_UNICODETOISO88599_CID, false, NULL, nsUnicodeToISO88599Constructor }, - { &kNS_UNICODETOISO885910_CID, false, NULL, nsUnicodeToISO885910Constructor }, - { &kNS_UNICODETOISO885913_CID, false, NULL, nsUnicodeToISO885913Constructor }, - { &kNS_UNICODETOISO885914_CID, false, NULL, nsUnicodeToISO885914Constructor }, - { &kNS_UNICODETOISO885915_CID, false, NULL, nsUnicodeToISO885915Constructor }, - { &kNS_UNICODETOISO885916_CID, false, NULL, nsUnicodeToISO885916Constructor }, - { &kNS_UNICODETOISOIR111_CID, false, NULL, nsUnicodeToISOIR111Constructor }, - { &kNS_UNICODETOCP1250_CID, false, NULL, nsUnicodeToCP1250Constructor }, - { &kNS_UNICODETOCP1251_CID, false, NULL, nsUnicodeToCP1251Constructor }, - { &kNS_UNICODETOCP1253_CID, false, NULL, nsUnicodeToCP1253Constructor }, - { &kNS_UNICODETOCP1254_CID, false, NULL, nsUnicodeToCP1254Constructor }, - { &kNS_UNICODETOCP1255_CID, false, NULL, nsUnicodeToCP1255Constructor }, - { &kNS_UNICODETOCP1256_CID, false, NULL, nsUnicodeToCP1256Constructor }, - { &kNS_UNICODETOCP1257_CID, false, NULL, nsUnicodeToCP1257Constructor }, - { &kNS_UNICODETOCP1258_CID, false, NULL, nsUnicodeToCP1258Constructor }, - { &kNS_UNICODETOTIS620_CID, false, NULL, nsUnicodeToTIS620Constructor }, - { &kNS_UNICODETOISO885911_CID, false, NULL, nsUnicodeToISO885911Constructor }, - { &kNS_UNICODETOCP874_CID, false, NULL, nsUnicodeToCP874Constructor }, - { &kNS_UNICODETOCP866_CID, false, NULL, nsUnicodeToCP866Constructor }, - { &kNS_UNICODETOKOI8R_CID, false, NULL, nsUnicodeToKOI8RConstructor }, - { &kNS_UNICODETOKOI8U_CID, false, NULL, nsUnicodeToKOI8UConstructor }, - { &kNS_UNICODETOMACCE_CID, false, NULL, nsUnicodeToMacCEConstructor }, - { &kNS_UNICODETOMACGREEK_CID, false, NULL, nsUnicodeToMacGreekConstructor }, - { &kNS_UNICODETOMACTURKISH_CID, false, NULL, nsUnicodeToMacTurkishConstructor }, - { &kNS_UNICODETOMACCROATIAN_CID, false, NULL, nsUnicodeToMacCroatianConstructor }, - { &kNS_UNICODETOMACROMANIAN_CID, false, NULL, nsUnicodeToMacRomanianConstructor }, - { &kNS_UNICODETOMACCYRILLIC_CID, false, NULL, nsUnicodeToMacCyrillicConstructor }, - { &kNS_UNICODETOMACICELANDIC_CID, false, NULL, nsUnicodeToMacIcelandicConstructor }, - { &kNS_UNICODETOGEOSTD8_CID, false, NULL, nsUnicodeToGEOSTD8Constructor }, - { &kNS_UNICODETOARMSCII8_CID, false, NULL, nsUnicodeToARMSCII8Constructor }, - { &kNS_UNICODETOTCVN5712_CID, false, NULL, nsUnicodeToTCVN5712Constructor }, - { &kNS_UNICODETOVISCII_CID, false, NULL, nsUnicodeToVISCIIConstructor }, - { &kNS_UNICODETOVPS_CID, false, NULL, nsUnicodeToVPSConstructor }, - { &kNS_UNICODETOUTF7_CID, false, NULL, nsUnicodeToUTF7Constructor }, - { &kNS_UNICODETOMUTF7_CID, false, NULL, nsUnicodeToMUTF7Constructor }, - { &kNS_UNICODETOUTF16BE_CID, false, NULL, nsUnicodeToUTF16BEConstructor }, - { &kNS_UNICODETOUTF16LE_CID, false, NULL, nsUnicodeToUTF16LEConstructor }, - { &kNS_UNICODETOUTF16_CID, false, NULL, nsUnicodeToUTF16Constructor }, - { &kNS_UNICODETOT61_CID, false, NULL, nsUnicodeToT61Constructor }, - { &kNS_UNICODETOUSERDEFINED_CID, false, NULL, nsUnicodeToUserDefinedConstructor }, - { &kNS_UNICODETOSYMBOL_CID, false, NULL, nsUnicodeToSymbolConstructor }, - { &kNS_UNICODETOZAPFDINGBATS_CID, false, NULL, nsUnicodeToZapfDingbatConstructor }, - { &kNS_UNICODETOADOBEEURO_CID, false, NULL, nsUnicodeToAdobeEuroConstructor }, - { &kNS_UNICODETOMACARABIC_CID, false, NULL, nsUnicodeToMacArabicConstructor }, - { &kNS_UNICODETOMACDEVANAGARI_CID, false, NULL, nsUnicodeToMacDevanagariConstructor }, - { &kNS_UNICODETOMACFARSI_CID, false, NULL, nsUnicodeToMacFarsiConstructor }, - { &kNS_UNICODETOMACGURMUKHI_CID, false, NULL, nsUnicodeToMacGurmukhiConstructor }, - { &kNS_UNICODETOMACGUJARATI_CID, false, NULL, nsUnicodeToMacGujaratiConstructor }, - { &kNS_UNICODETOMACHEBREW_CID, false, NULL, nsUnicodeToMacHebrewConstructor }, - { &kNS_UNICODETOTSCII_CID, false, NULL, nsUnicodeToTSCIIConstructor }, - { &kNS_UNICODETOTAMILTTF_CID, false, NULL, nsUnicodeToTamilTTFConstructor }, - { &kNS_CP850TOUNICODE_CID, false, NULL, nsCP850ToUnicodeConstructor }, - { &kNS_CP852TOUNICODE_CID, false, NULL, nsCP852ToUnicodeConstructor }, - { &kNS_CP855TOUNICODE_CID, false, NULL, nsCP855ToUnicodeConstructor }, - { &kNS_CP857TOUNICODE_CID, false, NULL, nsCP857ToUnicodeConstructor }, - { &kNS_CP862TOUNICODE_CID, false, NULL, nsCP862ToUnicodeConstructor }, - { &kNS_CP864TOUNICODE_CID, false, NULL, nsCP864ToUnicodeConstructor }, - { &kNS_CP864ITOUNICODE_CID, false, NULL, nsCP864iToUnicodeConstructor }, -#ifdef XP_OS2 - { &kNS_CP869TOUNICODE_CID, false, NULL, nsCP869ToUnicodeConstructor }, - { &kNS_CP1125TOUNICODE_CID, false, NULL, nsCP1125ToUnicodeConstructor }, - { &kNS_CP1131TOUNICODE_CID, false, NULL, nsCP1131ToUnicodeConstructor }, -#endif - { &kNS_UNICODETOCP850_CID, false, NULL, nsUnicodeToCP850Constructor }, - { &kNS_UNICODETOCP852_CID, false, NULL, nsUnicodeToCP852Constructor }, - { &kNS_UNICODETOCP855_CID, false, NULL, nsUnicodeToCP855Constructor }, - { &kNS_UNICODETOCP857_CID, false, NULL, nsUnicodeToCP857Constructor }, - { &kNS_UNICODETOCP862_CID, false, NULL, nsUnicodeToCP862Constructor }, - { &kNS_UNICODETOCP864_CID, false, NULL, nsUnicodeToCP864Constructor }, - { &kNS_UNICODETOCP864I_CID, false, NULL, nsUnicodeToCP864iConstructor }, -#ifdef XP_OS2 - { &kNS_UNICODETOCP869_CID, false, NULL, nsUnicodeToCP869Constructor }, - { &kNS_UNICODETOCP1125_CID, false, NULL, nsUnicodeToCP1125Constructor }, - { &kNS_UNICODETOCP1131_CID, false, NULL, nsUnicodeToCP1131Constructor }, -#endif - { &kNS_SJISTOUNICODE_CID, false, NULL, nsShiftJISToUnicodeConstructor }, - { &kNS_EUCJPTOUNICODE_CID, false, NULL, nsEUCJPToUnicodeV2Constructor }, - { &kNS_ISO2022JPTOUNICODE_CID, false, NULL, nsISO2022JPToUnicodeV2Constructor }, - { &kNS_UNICODETOSJIS_CID, false, NULL, nsUnicodeToSJISConstructor }, - { &kNS_UNICODETOEUCJP_CID, false, NULL, nsUnicodeToEUCJPConstructor }, - { &kNS_UNICODETOISO2022JP_CID, false, NULL, nsUnicodeToISO2022JPConstructor }, - { &kNS_UNICODETOJISX0201_CID, false, NULL, nsUnicodeToJISx0201Constructor }, - { &kNS_EUCTWTOUNICODE_CID, false, NULL, nsEUCTWToUnicodeConstructor }, - { &kNS_UNICODETOEUCTW_CID, false, NULL, nsUnicodeToEUCTWConstructor }, - { &kNS_UNICODETOBIG5_CID, false, NULL, nsUnicodeToBIG5Constructor }, - { &kNS_BIG5TOUNICODE_CID, false, NULL, nsBIG5ToUnicodeConstructor }, - { &kNS_UNICODETOBIG5HKSCS_CID, false, NULL, nsUnicodeToBIG5HKSCSConstructor }, - { &kNS_UNICODETOHKSCS_CID, false, NULL, nsUnicodeToHKSCSConstructor }, - { &kNS_BIG5HKSCSTOUNICODE_CID, false, NULL, nsBIG5HKSCSToUnicodeConstructor }, - { &kNS_EUCKRTOUNICODE_CID, false, NULL, nsEUCKRToUnicodeConstructor }, - { &kNS_UNICODETOEUCKR_CID, false, NULL, nsUnicodeToEUCKRConstructor }, - { &kNS_JOHABTOUNICODE_CID, false, NULL, nsJohabToUnicodeConstructor }, - { &kNS_UNICODETOJOHAB_CID, false, NULL, nsUnicodeToJohabConstructor }, - { &kNS_CP949TOUNICODE_CID, false, NULL, nsCP949ToUnicodeConstructor }, - { &kNS_UNICODETOCP949_CID, false, NULL, nsUnicodeToCP949Constructor }, - { &kNS_ISO2022KRTOUNICODE_CID, false, NULL, nsISO2022KRToUnicodeConstructor }, - { &kNS_GB2312TOUNICODE_CID, false, NULL, nsGB2312ToUnicodeV2Constructor }, - { &kNS_UNICODETOGB2312_CID, false, NULL, nsUnicodeToGB2312V2Constructor }, - { &kNS_GBKTOUNICODE_CID, false, NULL, nsGBKToUnicodeConstructor }, - { &kNS_UNICODETOGBK_CID, false, NULL, nsUnicodeToGBKConstructor }, - { &kNS_HZTOUNICODE_CID, false, NULL, nsHZToUnicodeConstructor }, - { &kNS_UNICODETOHZ_CID, false, NULL, nsUnicodeToHZConstructor }, - { &kNS_GB18030TOUNICODE_CID, false, NULL, nsGB18030ToUnicodeConstructor }, - { &kNS_UNICODETOGB18030_CID, false, NULL, nsUnicodeToGB18030Constructor }, - { &kNS_ISO2022CNTOUNICODE_CID, false, NULL, nsISO2022CNToUnicodeConstructor }, { NULL }, }; @@ -960,181 +145,6 @@ static const mozilla::Module::ContractIDEntry kUConvContracts[] = { { NS_UNICODETOCP1252_CONTRACTID, &kNS_UNICODETOCP1252_CID }, { NS_UNICODETOMACROMAN_CONTRACTID, &kNS_UNICODETOMACROMAN_CID }, { NS_UNICODETOUTF8_CONTRACTID, &kNS_UNICODETOUTF8_CID }, - { NS_UNICODEDECODER_CONTRACTID_BASE "us-ascii", &kNS_ASCIITOUNICODE_CID }, - { NS_UNICODEDECODER_CONTRACTID_BASE "ISO-8859-2", &kNS_ISO88592TOUNICODE_CID }, - { NS_UNICODEDECODER_CONTRACTID_BASE "ISO-8859-3", &kNS_ISO88593TOUNICODE_CID }, - { NS_UNICODEDECODER_CONTRACTID_BASE "ISO-8859-4", &kNS_ISO88594TOUNICODE_CID }, - { NS_UNICODEDECODER_CONTRACTID_BASE "ISO-8859-5", &kNS_ISO88595TOUNICODE_CID }, - { NS_UNICODEDECODER_CONTRACTID_BASE "ISO-8859-6", &kNS_ISO88596TOUNICODE_CID }, - { NS_UNICODEDECODER_CONTRACTID_BASE "ISO-8859-6-I", &kNS_ISO88596ITOUNICODE_CID }, - { NS_UNICODEDECODER_CONTRACTID_BASE "ISO-8859-6-E", &kNS_ISO88596ETOUNICODE_CID }, - { NS_UNICODEDECODER_CONTRACTID_BASE "ISO-8859-7", &kNS_ISO88597TOUNICODE_CID }, - { NS_UNICODEDECODER_CONTRACTID_BASE "ISO-8859-8", &kNS_ISO88598TOUNICODE_CID }, - { NS_UNICODEDECODER_CONTRACTID_BASE "ISO-8859-8-I", &kNS_ISO88598ITOUNICODE_CID }, - { NS_UNICODEDECODER_CONTRACTID_BASE "ISO-8859-8-E", &kNS_ISO88598ETOUNICODE_CID }, - { NS_UNICODEDECODER_CONTRACTID_BASE "ISO-8859-9", &kNS_ISO88599TOUNICODE_CID }, - { NS_UNICODEDECODER_CONTRACTID_BASE "ISO-8859-10", &kNS_ISO885910TOUNICODE_CID }, - { NS_UNICODEDECODER_CONTRACTID_BASE "ISO-8859-13", &kNS_ISO885913TOUNICODE_CID }, - { NS_UNICODEDECODER_CONTRACTID_BASE "ISO-8859-14", &kNS_ISO885914TOUNICODE_CID }, - { NS_UNICODEDECODER_CONTRACTID_BASE "ISO-8859-15", &kNS_ISO885915TOUNICODE_CID }, - { NS_UNICODEDECODER_CONTRACTID_BASE "ISO-8859-16", &kNS_ISO885916TOUNICODE_CID }, - { NS_UNICODEDECODER_CONTRACTID_BASE "ISO-IR-111", &kNS_ISOIR111TOUNICODE_CID }, - { NS_UNICODEDECODER_CONTRACTID_BASE "windows-1250", &kNS_CP1250TOUNICODE_CID }, - { NS_UNICODEDECODER_CONTRACTID_BASE "windows-1251", &kNS_CP1251TOUNICODE_CID }, - { NS_UNICODEDECODER_CONTRACTID_BASE "windows-1253", &kNS_CP1253TOUNICODE_CID }, - { NS_UNICODEDECODER_CONTRACTID_BASE "windows-1254", &kNS_CP1254TOUNICODE_CID }, - { NS_UNICODEDECODER_CONTRACTID_BASE "windows-1255", &kNS_CP1255TOUNICODE_CID }, - { NS_UNICODEDECODER_CONTRACTID_BASE "windows-1256", &kNS_CP1256TOUNICODE_CID }, - { NS_UNICODEDECODER_CONTRACTID_BASE "windows-1257", &kNS_CP1257TOUNICODE_CID }, - { NS_UNICODEDECODER_CONTRACTID_BASE "windows-1258", &kNS_CP1258TOUNICODE_CID }, - { NS_UNICODEDECODER_CONTRACTID_BASE "TIS-620", &kNS_TIS620TOUNICODE_CID }, - { NS_UNICODEDECODER_CONTRACTID_BASE "ISO-8859-11", &kNS_ISO885911TOUNICODE_CID }, - { NS_UNICODEDECODER_CONTRACTID_BASE "windows-874", &kNS_CP874TOUNICODE_CID }, - { NS_UNICODEDECODER_CONTRACTID_BASE "IBM866", &kNS_CP866TOUNICODE_CID }, - { NS_UNICODEDECODER_CONTRACTID_BASE "KOI8-R", &kNS_KOI8RTOUNICODE_CID }, - { NS_UNICODEDECODER_CONTRACTID_BASE "KOI8-U", &kNS_KOI8UTOUNICODE_CID }, - { NS_UNICODEDECODER_CONTRACTID_BASE "x-mac-ce", &kNS_MACCETOUNICODE_CID }, - { NS_UNICODEDECODER_CONTRACTID_BASE "x-mac-greek", &kNS_MACGREEKTOUNICODE_CID }, - { NS_UNICODEDECODER_CONTRACTID_BASE "x-mac-turkish", &kNS_MACTURKISHTOUNICODE_CID }, - { NS_UNICODEDECODER_CONTRACTID_BASE "x-mac-croatian", &kNS_MACCROATIANTOUNICODE_CID }, - { NS_UNICODEDECODER_CONTRACTID_BASE "x-mac-romanian", &kNS_MACROMANIANTOUNICODE_CID }, - { NS_UNICODEDECODER_CONTRACTID_BASE "x-mac-cyrillic", &kNS_MACCYRILLICTOUNICODE_CID }, - { NS_UNICODEDECODER_CONTRACTID_BASE "x-mac-icelandic", &kNS_MACICELANDICTOUNICODE_CID }, - { NS_UNICODEDECODER_CONTRACTID_BASE "GEOSTD8", &kNS_GEOSTD8TOUNICODE_CID }, - { NS_UNICODEDECODER_CONTRACTID_BASE "armscii-8", &kNS_ARMSCII8TOUNICODE_CID }, - { NS_UNICODEDECODER_CONTRACTID_BASE "x-viet-tcvn5712", &kNS_TCVN5712TOUNICODE_CID }, - { NS_UNICODEDECODER_CONTRACTID_BASE "VISCII", &kNS_VISCIITOUNICODE_CID }, - { NS_UNICODEDECODER_CONTRACTID_BASE "x-viet-vps", &kNS_VPSTOUNICODE_CID }, - { NS_UNICODEDECODER_CONTRACTID_BASE "UTF-7", &kNS_UTF7TOUNICODE_CID }, - { NS_UNICODEDECODER_CONTRACTID_BASE "x-imap4-modified-utf7", &kNS_MUTF7TOUNICODE_CID }, - { NS_UNICODEDECODER_CONTRACTID_BASE "UTF-16", &kNS_UTF16TOUNICODE_CID }, - { NS_UNICODEDECODER_CONTRACTID_BASE "UTF-16BE", &kNS_UTF16BETOUNICODE_CID }, - { NS_UNICODEDECODER_CONTRACTID_BASE "UTF-16LE", &kNS_UTF16LETOUNICODE_CID }, - { NS_UNICODEDECODER_CONTRACTID_BASE "T.61-8bit", &kNS_T61TOUNICODE_CID }, - { NS_UNICODEDECODER_CONTRACTID_BASE "x-user-defined", &kNS_USERDEFINEDTOUNICODE_CID }, - { NS_UNICODEDECODER_CONTRACTID_BASE "x-mac-arabic", &kNS_MACARABICTOUNICODE_CID }, - { NS_UNICODEDECODER_CONTRACTID_BASE "x-mac-devanagari", &kNS_MACDEVANAGARITOUNICODE_CID }, - { NS_UNICODEDECODER_CONTRACTID_BASE "x-mac-farsi", &kNS_MACFARSITOUNICODE_CID }, - { NS_UNICODEDECODER_CONTRACTID_BASE "x-mac-gurmukhi", &kNS_MACGURMUKHITOUNICODE_CID }, - { NS_UNICODEDECODER_CONTRACTID_BASE "x-mac-gujarati", &kNS_MACGUJARATITOUNICODE_CID }, - { NS_UNICODEDECODER_CONTRACTID_BASE "x-mac-hebrew", &kNS_MACHEBREWTOUNICODE_CID }, - { NS_UNICODEENCODER_CONTRACTID_BASE "us-ascii", &kNS_UNICODETOASCII_CID }, - { NS_UNICODEENCODER_CONTRACTID_BASE "ISO-8859-2", &kNS_UNICODETOISO88592_CID }, - { NS_UNICODEENCODER_CONTRACTID_BASE "ISO-8859-3", &kNS_UNICODETOISO88593_CID }, - { NS_UNICODEENCODER_CONTRACTID_BASE "ISO-8859-4", &kNS_UNICODETOISO88594_CID }, - { NS_UNICODEENCODER_CONTRACTID_BASE "ISO-8859-5", &kNS_UNICODETOISO88595_CID }, - { NS_UNICODEENCODER_CONTRACTID_BASE "ISO-8859-6", &kNS_UNICODETOISO88596_CID }, - { NS_UNICODEENCODER_CONTRACTID_BASE "ISO-8859-6-I", &kNS_UNICODETOISO88596I_CID }, - { NS_UNICODEENCODER_CONTRACTID_BASE "ISO-8859-6-E", &kNS_UNICODETOISO88596E_CID }, - { NS_UNICODEENCODER_CONTRACTID_BASE "ISO-8859-7", &kNS_UNICODETOISO88597_CID }, - { NS_UNICODEENCODER_CONTRACTID_BASE "ISO-8859-8", &kNS_UNICODETOISO88598_CID }, - { NS_UNICODEENCODER_CONTRACTID_BASE "ISO-8859-8-I", &kNS_UNICODETOISO88598I_CID }, - { NS_UNICODEENCODER_CONTRACTID_BASE "ISO-8859-8-E", &kNS_UNICODETOISO88598E_CID }, - { NS_UNICODEENCODER_CONTRACTID_BASE "ISO-8859-9", &kNS_UNICODETOISO88599_CID }, - { NS_UNICODEENCODER_CONTRACTID_BASE "ISO-8859-10", &kNS_UNICODETOISO885910_CID }, - { NS_UNICODEENCODER_CONTRACTID_BASE "ISO-8859-13", &kNS_UNICODETOISO885913_CID }, - { NS_UNICODEENCODER_CONTRACTID_BASE "ISO-8859-14", &kNS_UNICODETOISO885914_CID }, - { NS_UNICODEENCODER_CONTRACTID_BASE "ISO-8859-15", &kNS_UNICODETOISO885915_CID }, - { NS_UNICODEENCODER_CONTRACTID_BASE "ISO-8859-16", &kNS_UNICODETOISO885916_CID }, - { NS_UNICODEENCODER_CONTRACTID_BASE "ISO-IR-111", &kNS_UNICODETOISOIR111_CID }, - { NS_UNICODEENCODER_CONTRACTID_BASE "windows-1250", &kNS_UNICODETOCP1250_CID }, - { NS_UNICODEENCODER_CONTRACTID_BASE "windows-1251", &kNS_UNICODETOCP1251_CID }, - { NS_UNICODEENCODER_CONTRACTID_BASE "windows-1253", &kNS_UNICODETOCP1253_CID }, - { NS_UNICODEENCODER_CONTRACTID_BASE "windows-1254", &kNS_UNICODETOCP1254_CID }, - { NS_UNICODEENCODER_CONTRACTID_BASE "windows-1255", &kNS_UNICODETOCP1255_CID }, - { NS_UNICODEENCODER_CONTRACTID_BASE "windows-1256", &kNS_UNICODETOCP1256_CID }, - { NS_UNICODEENCODER_CONTRACTID_BASE "windows-1257", &kNS_UNICODETOCP1257_CID }, - { NS_UNICODEENCODER_CONTRACTID_BASE "windows-1258", &kNS_UNICODETOCP1258_CID }, - { NS_UNICODEENCODER_CONTRACTID_BASE "TIS-620", &kNS_UNICODETOTIS620_CID }, - { NS_UNICODEENCODER_CONTRACTID_BASE "ISO-8859-11", &kNS_UNICODETOISO885911_CID }, - { NS_UNICODEENCODER_CONTRACTID_BASE "windows-874", &kNS_UNICODETOCP874_CID }, - { NS_UNICODEENCODER_CONTRACTID_BASE "IBM866", &kNS_UNICODETOCP866_CID }, - { NS_UNICODEENCODER_CONTRACTID_BASE "KOI8-R", &kNS_UNICODETOKOI8R_CID }, - { NS_UNICODEENCODER_CONTRACTID_BASE "KOI8-U", &kNS_UNICODETOKOI8U_CID }, - { NS_UNICODEENCODER_CONTRACTID_BASE "x-mac-ce", &kNS_UNICODETOMACCE_CID }, - { NS_UNICODEENCODER_CONTRACTID_BASE "x-mac-greek", &kNS_UNICODETOMACGREEK_CID }, - { NS_UNICODEENCODER_CONTRACTID_BASE "x-mac-turkish", &kNS_UNICODETOMACTURKISH_CID }, - { NS_UNICODEENCODER_CONTRACTID_BASE "x-mac-croatian", &kNS_UNICODETOMACCROATIAN_CID }, - { NS_UNICODEENCODER_CONTRACTID_BASE "x-mac-romanian", &kNS_UNICODETOMACROMANIAN_CID }, - { NS_UNICODEENCODER_CONTRACTID_BASE "x-mac-cyrillic", &kNS_UNICODETOMACCYRILLIC_CID }, - { NS_UNICODEENCODER_CONTRACTID_BASE "x-mac-icelandic", &kNS_UNICODETOMACICELANDIC_CID }, - { NS_UNICODEENCODER_CONTRACTID_BASE "GEOSTD8", &kNS_UNICODETOGEOSTD8_CID }, - { NS_UNICODEENCODER_CONTRACTID_BASE "armscii-8", &kNS_UNICODETOARMSCII8_CID }, - { NS_UNICODEENCODER_CONTRACTID_BASE "x-viet-tcvn5712", &kNS_UNICODETOTCVN5712_CID }, - { NS_UNICODEENCODER_CONTRACTID_BASE "VISCII", &kNS_UNICODETOVISCII_CID }, - { NS_UNICODEENCODER_CONTRACTID_BASE "x-viet-vps", &kNS_UNICODETOVPS_CID }, - { NS_UNICODEENCODER_CONTRACTID_BASE "UTF-7", &kNS_UNICODETOUTF7_CID }, - { NS_UNICODEENCODER_CONTRACTID_BASE "x-imap4-modified-utf7", &kNS_UNICODETOMUTF7_CID }, - { NS_UNICODEENCODER_CONTRACTID_BASE "UTF-16BE", &kNS_UNICODETOUTF16BE_CID }, - { NS_UNICODEENCODER_CONTRACTID_BASE "UTF-16LE", &kNS_UNICODETOUTF16LE_CID }, - { NS_UNICODEENCODER_CONTRACTID_BASE "UTF-16", &kNS_UNICODETOUTF16_CID }, - { NS_UNICODEENCODER_CONTRACTID_BASE "T.61-8bit", &kNS_UNICODETOT61_CID }, - { NS_UNICODEENCODER_CONTRACTID_BASE "x-user-defined", &kNS_UNICODETOUSERDEFINED_CID }, - { NS_UNICODEENCODER_CONTRACTID_BASE "Adobe-Symbol-Encoding", &kNS_UNICODETOSYMBOL_CID }, - { NS_UNICODEENCODER_CONTRACTID_BASE "x-zapf-dingbats", &kNS_UNICODETOZAPFDINGBATS_CID }, - { NS_UNICODEENCODER_CONTRACTID_BASE "x-adobe-euro", &kNS_UNICODETOADOBEEURO_CID }, - { NS_UNICODEENCODER_CONTRACTID_BASE "x-mac-arabic", &kNS_UNICODETOMACARABIC_CID }, - { NS_UNICODEENCODER_CONTRACTID_BASE "x-mac-devanagari", &kNS_UNICODETOMACDEVANAGARI_CID }, - { NS_UNICODEENCODER_CONTRACTID_BASE "x-mac-farsi", &kNS_UNICODETOMACFARSI_CID }, - { NS_UNICODEENCODER_CONTRACTID_BASE "x-mac-gurmukhi", &kNS_UNICODETOMACGURMUKHI_CID }, - { NS_UNICODEENCODER_CONTRACTID_BASE "x-mac-gujarati", &kNS_UNICODETOMACGUJARATI_CID }, - { NS_UNICODEENCODER_CONTRACTID_BASE "x-mac-hebrew", &kNS_UNICODETOMACHEBREW_CID }, - { NS_UNICODEENCODER_CONTRACTID_BASE "x-tscii", &kNS_UNICODETOTSCII_CID }, - { NS_UNICODEENCODER_CONTRACTID_BASE "x-tamilttf-0", &kNS_UNICODETOTAMILTTF_CID }, - { NS_UNICODEDECODER_CONTRACTID_BASE "IBM850", &kNS_CP850TOUNICODE_CID }, - { NS_UNICODEDECODER_CONTRACTID_BASE "IBM852", &kNS_CP852TOUNICODE_CID }, - { NS_UNICODEDECODER_CONTRACTID_BASE "IBM855", &kNS_CP855TOUNICODE_CID }, - { NS_UNICODEDECODER_CONTRACTID_BASE "IBM857", &kNS_CP857TOUNICODE_CID }, - { NS_UNICODEDECODER_CONTRACTID_BASE "IBM862", &kNS_CP862TOUNICODE_CID }, - { NS_UNICODEDECODER_CONTRACTID_BASE "IBM864", &kNS_CP864TOUNICODE_CID }, - { NS_UNICODEDECODER_CONTRACTID_BASE "IBM864i", &kNS_CP864ITOUNICODE_CID }, -#ifdef XP_OS2 - { NS_UNICODEDECODER_CONTRACTID_BASE "IBM869", &kNS_CP869TOUNICODE_CID }, - { NS_UNICODEDECODER_CONTRACTID_BASE "IBM1125", &kNS_CP1125TOUNICODE_CID }, - { NS_UNICODEDECODER_CONTRACTID_BASE "IBM1131", &kNS_CP1131TOUNICODE_CID }, -#endif - { NS_UNICODEENCODER_CONTRACTID_BASE "IBM850", &kNS_UNICODETOCP850_CID }, - { NS_UNICODEENCODER_CONTRACTID_BASE "IBM852", &kNS_UNICODETOCP852_CID }, - { NS_UNICODEENCODER_CONTRACTID_BASE "IBM855", &kNS_UNICODETOCP855_CID }, - { NS_UNICODEENCODER_CONTRACTID_BASE "IBM857", &kNS_UNICODETOCP857_CID }, - { NS_UNICODEENCODER_CONTRACTID_BASE "IBM862", &kNS_UNICODETOCP862_CID }, - { NS_UNICODEENCODER_CONTRACTID_BASE "IBM864", &kNS_UNICODETOCP864_CID }, - { NS_UNICODEENCODER_CONTRACTID_BASE "IBM864i", &kNS_UNICODETOCP864I_CID }, -#ifdef XP_OS2 - { NS_UNICODEENCODER_CONTRACTID_BASE "IBM869", &kNS_UNICODETOCP869_CID }, - { NS_UNICODEENCODER_CONTRACTID_BASE "IBM1125", &kNS_UNICODETOCP1125_CID }, - { NS_UNICODEENCODER_CONTRACTID_BASE "IBM1131", &kNS_UNICODETOCP1131_CID }, -#endif - { NS_UNICODEDECODER_CONTRACTID_BASE "Shift_JIS", &kNS_SJISTOUNICODE_CID }, - { NS_UNICODEDECODER_CONTRACTID_BASE "EUC-JP", &kNS_EUCJPTOUNICODE_CID }, - { NS_UNICODEDECODER_CONTRACTID_BASE "ISO-2022-JP", &kNS_ISO2022JPTOUNICODE_CID }, - { NS_UNICODEENCODER_CONTRACTID_BASE "Shift_JIS", &kNS_UNICODETOSJIS_CID }, - { NS_UNICODEENCODER_CONTRACTID_BASE "EUC-JP", &kNS_UNICODETOEUCJP_CID }, - { NS_UNICODEENCODER_CONTRACTID_BASE "ISO-2022-JP", &kNS_UNICODETOISO2022JP_CID }, - { NS_UNICODEENCODER_CONTRACTID_BASE "jis_0201", &kNS_UNICODETOJISX0201_CID }, - { NS_UNICODEDECODER_CONTRACTID_BASE "x-euc-tw", &kNS_EUCTWTOUNICODE_CID }, - { NS_UNICODEENCODER_CONTRACTID_BASE "x-euc-tw", &kNS_UNICODETOEUCTW_CID }, - { NS_UNICODEENCODER_CONTRACTID_BASE "Big5", &kNS_UNICODETOBIG5_CID }, - { NS_UNICODEDECODER_CONTRACTID_BASE "Big5", &kNS_BIG5TOUNICODE_CID }, - { NS_UNICODEENCODER_CONTRACTID_BASE "Big5-HKSCS", &kNS_UNICODETOBIG5HKSCS_CID }, - { NS_UNICODEENCODER_CONTRACTID_BASE "hkscs-1", &kNS_UNICODETOHKSCS_CID }, - { NS_UNICODEDECODER_CONTRACTID_BASE "Big5-HKSCS", &kNS_BIG5HKSCSTOUNICODE_CID }, - { NS_UNICODEDECODER_CONTRACTID_BASE "EUC-KR", &kNS_EUCKRTOUNICODE_CID }, - { NS_UNICODEENCODER_CONTRACTID_BASE "EUC-KR", &kNS_UNICODETOEUCKR_CID }, - { NS_UNICODEDECODER_CONTRACTID_BASE "x-johab", &kNS_JOHABTOUNICODE_CID }, - { NS_UNICODEENCODER_CONTRACTID_BASE "x-johab", &kNS_UNICODETOJOHAB_CID }, - { NS_UNICODEDECODER_CONTRACTID_BASE "x-windows-949", &kNS_CP949TOUNICODE_CID }, - { NS_UNICODEENCODER_CONTRACTID_BASE "x-windows-949", &kNS_UNICODETOCP949_CID }, - { NS_UNICODEDECODER_CONTRACTID_BASE "ISO-2022-KR", &kNS_ISO2022KRTOUNICODE_CID }, - { NS_UNICODEDECODER_CONTRACTID_BASE "GB2312", &kNS_GB2312TOUNICODE_CID }, - { NS_UNICODEENCODER_CONTRACTID_BASE "GB2312", &kNS_UNICODETOGB2312_CID }, - { NS_UNICODEDECODER_CONTRACTID_BASE "gbk", &kNS_GBKTOUNICODE_CID }, - { NS_UNICODEENCODER_CONTRACTID_BASE "gbk", &kNS_UNICODETOGBK_CID }, - { NS_UNICODEDECODER_CONTRACTID_BASE "HZ-GB-2312", &kNS_HZTOUNICODE_CID }, - { NS_UNICODEENCODER_CONTRACTID_BASE "HZ-GB-2312", &kNS_UNICODETOHZ_CID }, - { NS_UNICODEDECODER_CONTRACTID_BASE "gb18030", &kNS_GB18030TOUNICODE_CID }, - { NS_UNICODEENCODER_CONTRACTID_BASE "gb18030", &kNS_UNICODETOGB18030_CID }, - { NS_UNICODEDECODER_CONTRACTID_BASE "ISO-2022-CN", &kNS_ISO2022CNTOUNICODE_CID }, { NULL } }; diff --git a/intl/uconv/ucvcn/Makefile.in b/intl/uconv/ucvcn/Makefile.in index b5765ee9733..7f726519d03 100644 --- a/intl/uconv/ucvcn/Makefile.in +++ b/intl/uconv/ucvcn/Makefile.in @@ -45,8 +45,9 @@ include $(DEPTH)/config/autoconf.mk MODULE = ucvcn LIBRARY_NAME = ucvcn_s FORCE_STATIC_LIB=1 +ifneq (WINNT,$(OS_TARGET)) LIBXUL_LIBRARY = 1 - +endif CPPSRCS = \ nsGB2312ToUnicodeV2.cpp \ diff --git a/intl/uconv/ucvcn/nsISO2022CNToUnicode.cpp b/intl/uconv/ucvcn/nsISO2022CNToUnicode.cpp index 04a33af63a2..42259188d5e 100644 --- a/intl/uconv/ucvcn/nsISO2022CNToUnicode.cpp +++ b/intl/uconv/ucvcn/nsISO2022CNToUnicode.cpp @@ -39,6 +39,7 @@ #include "nsUCSupport.h" #include "nsICharsetConverterManager.h" #include "nsIServiceManager.h" +#include "nsServiceManagerUtils.h" static NS_DEFINE_CID(kCharsetConverterManagerCID, NS_ICHARSETCONVERTERMANAGER_CID); diff --git a/intl/uconv/ucvibm/Makefile.in b/intl/uconv/ucvibm/Makefile.in index 46ec0247926..3234b43e218 100644 --- a/intl/uconv/ucvibm/Makefile.in +++ b/intl/uconv/ucvibm/Makefile.in @@ -46,7 +46,9 @@ include $(DEPTH)/config/autoconf.mk MODULE = ucvibm LIBRARY_NAME = ucvibm_s FORCE_STATIC_LIB = 1 +ifneq (WINNT,$(OS_TARGET)) LIBXUL_LIBRARY = 1 +endif CPPSRCS = \ diff --git a/intl/uconv/ucvja/Makefile.in b/intl/uconv/ucvja/Makefile.in index 74f6b0955a3..c4a140aee5d 100644 --- a/intl/uconv/ucvja/Makefile.in +++ b/intl/uconv/ucvja/Makefile.in @@ -46,8 +46,9 @@ include $(DEPTH)/config/autoconf.mk MODULE = ucvja LIBRARY_NAME = ucvja_s FORCE_STATIC_LIB = 1 +ifneq (WINNT,$(OS_TARGET)) LIBXUL_LIBRARY = 1 - +endif CPPSRCS = \ nsJapaneseToUnicode.cpp \ diff --git a/intl/uconv/ucvja/nsJapaneseToUnicode.cpp b/intl/uconv/ucvja/nsJapaneseToUnicode.cpp index 0b11b0a8925..33c78d175cf 100644 --- a/intl/uconv/ucvja/nsJapaneseToUnicode.cpp +++ b/intl/uconv/ucvja/nsJapaneseToUnicode.cpp @@ -42,6 +42,7 @@ #include "nsICharsetConverterManager.h" #include "nsIServiceManager.h" +#include "nsServiceManagerUtils.h" static NS_DEFINE_CID(kCharsetConverterManagerCID, NS_ICHARSETCONVERTERMANAGER_CID); #ifdef XP_OS2 diff --git a/intl/uconv/ucvko/Makefile.in b/intl/uconv/ucvko/Makefile.in index c3a720e6360..65594f25b33 100644 --- a/intl/uconv/ucvko/Makefile.in +++ b/intl/uconv/ucvko/Makefile.in @@ -45,8 +45,9 @@ include $(DEPTH)/config/autoconf.mk MODULE = ucvko LIBRARY_NAME = ucvko_s FORCE_STATIC_LIB=1 +ifneq (WINNT,$(OS_TARGET)) LIBXUL_LIBRARY = 1 - +endif CPPSRCS = \ nsEUCKRToUnicode.cpp \ diff --git a/intl/uconv/ucvko/nsISO2022KRToUnicode.cpp b/intl/uconv/ucvko/nsISO2022KRToUnicode.cpp index e383a13654f..c99f0e88661 100644 --- a/intl/uconv/ucvko/nsISO2022KRToUnicode.cpp +++ b/intl/uconv/ucvko/nsISO2022KRToUnicode.cpp @@ -39,6 +39,7 @@ #include "nsUCSupport.h" #include "nsICharsetConverterManager.h" #include "nsIServiceManager.h" +#include "nsServiceManagerUtils.h" static NS_DEFINE_CID(kCharsetConverterManagerCID, NS_ICHARSETCONVERTERMANAGER_CID); diff --git a/intl/uconv/ucvlatin/Makefile.in b/intl/uconv/ucvlatin/Makefile.in index db6e08c6e7f..8230d45a202 100644 --- a/intl/uconv/ucvlatin/Makefile.in +++ b/intl/uconv/ucvlatin/Makefile.in @@ -45,8 +45,9 @@ include $(DEPTH)/config/autoconf.mk MODULE = ucvlatin LIBRARY_NAME = ucvlatin_s FORCE_STATIC_LIB = 1 +ifneq (WINNT,$(OS_TARGET)) LIBXUL_LIBRARY = 1 - +endif CPPSRCS = \ nsAsciiToUnicode.cpp \ diff --git a/intl/uconv/ucvtw/Makefile.in b/intl/uconv/ucvtw/Makefile.in index eb20a17cd14..178ba41361a 100644 --- a/intl/uconv/ucvtw/Makefile.in +++ b/intl/uconv/ucvtw/Makefile.in @@ -45,8 +45,9 @@ include $(DEPTH)/config/autoconf.mk MODULE = ucvtw LIBRARY_NAME = ucvtw_s FORCE_STATIC_LIB=1 +ifneq (WINNT,$(OS_TARGET)) LIBXUL_LIBRARY = 1 - +endif CPPSRCS = \ nsBIG5ToUnicode.cpp \ diff --git a/intl/uconv/ucvtw2/Makefile.in b/intl/uconv/ucvtw2/Makefile.in index 16f6f3df196..480f8596156 100644 --- a/intl/uconv/ucvtw2/Makefile.in +++ b/intl/uconv/ucvtw2/Makefile.in @@ -45,8 +45,9 @@ include $(DEPTH)/config/autoconf.mk MODULE = ucvtw2 LIBRARY_NAME = ucvtw2_s FORCE_STATIC_LIB=1 +ifneq (WINNT,$(OS_TARGET)) LIBXUL_LIBRARY = 1 - +endif CPPSRCS = \ nsEUCTWToUnicode.cpp \ diff --git a/intl/uconv/util/Makefile.in b/intl/uconv/util/Makefile.in index 276648b0613..edce9d575ee 100644 --- a/intl/uconv/util/Makefile.in +++ b/intl/uconv/util/Makefile.in @@ -42,6 +42,8 @@ VPATH = @srcdir@ include $(DEPTH)/config/autoconf.mk +DIRS = external + MODULE = uconv LIBRARY_NAME = ucvutil_s EXPORT_LIBRARY = 1 @@ -50,18 +52,7 @@ LIBXUL_LIBRARY = 1 MODULE_NAME = nsUCUtil -CSRCS = \ - ugen.c \ - uscan.c \ - umap.c \ - $(NULL) - -CPPSRCS = \ - nsUCSupport.cpp \ - nsUCConstructors.cpp \ - nsUnicodeDecodeHelper.cpp \ - nsUnicodeEncodeHelper.cpp \ - $(NULL) +include $(srcdir)/objs.mk include $(topsrcdir)/config/rules.mk diff --git a/intl/uconv/util/external/Makefile.in b/intl/uconv/util/external/Makefile.in new file mode 100644 index 00000000000..b73caddd4f5 --- /dev/null +++ b/intl/uconv/util/external/Makefile.in @@ -0,0 +1,57 @@ +# +# ***** BEGIN LICENSE BLOCK ***** +# Version: MPL 1.1/GPL 2.0/LGPL 2.1 +# +# The contents of this file are subject to the Mozilla Public License Version +# 1.1 (the "License"); you may not use this file except in compliance with +# the License. You may obtain a copy of the License at +# http://www.mozilla.org/MPL/ +# +# Software distributed under the License is distributed on an "AS IS" basis, +# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License +# for the specific language governing rights and limitations under the +# License. +# +# The Original Code is mozilla.org code. +# +# The Initial Developer of the Original Code is +# Netscape Communications Corporation. +# Portions created by the Initial Developer are Copyright (C) 1998 +# the Initial Developer. All Rights Reserved. +# +# Contributor(s): +# +# Alternatively, the contents of this file may be used under the terms of +# either of the GNU General Public License Version 2 or later (the "GPL"), +# or the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), +# in which case the provisions of the GPL or the LGPL are applicable instead +# of those above. If you wish to allow use of your version of this file only +# under the terms of either the GPL or the LGPL, and not to allow others to +# use your version of this file under the terms of the MPL, indicate your +# decision by deleting the provisions above and replace them with the notice +# and other provisions required by the GPL or the LGPL. If you do not delete +# the provisions above, a recipient may use your version of this file under +# the terms of any one of the MPL, the GPL or the LGPL. +# +# ***** END LICENSE BLOCK ***** + +DEPTH = ../../../.. +topsrcdir = @top_srcdir@ +srcdir = @srcdir@ +VPATH = @srcdir@ + +include $(DEPTH)/config/autoconf.mk + +MODULE = uconv +LIBRARY_NAME = ucvxutil_s +EXPORT_LIBRARY = 1 +FORCE_STATIC_LIB = 1 + +MODULE_NAME = nsExternalUCUtil + +VPATH += $(srcdir)/.. + +include $(srcdir)/../objs.mk + +include $(topsrcdir)/config/rules.mk + diff --git a/intl/uconv/util/objs.mk b/intl/uconv/util/objs.mk new file mode 100644 index 00000000000..5d32b3a9646 --- /dev/null +++ b/intl/uconv/util/objs.mk @@ -0,0 +1,12 @@ +CSRCS = \ + ugen.c \ + uscan.c \ + umap.c \ + $(NULL) + +CPPSRCS = \ + nsUCSupport.cpp \ + nsUCConstructors.cpp \ + nsUnicodeDecodeHelper.cpp \ + nsUnicodeEncodeHelper.cpp \ + $(NULL) diff --git a/testing/xpcshell/runxpcshelltests.py b/testing/xpcshell/runxpcshelltests.py index eccdb16e653..102fc5b4d52 100644 --- a/testing/xpcshell/runxpcshelltests.py +++ b/testing/xpcshell/runxpcshelltests.py @@ -312,6 +312,7 @@ class XPCShellTests(object): On a remote system, this is more complex and we need to overload this function. """ cmd = wrapCommand(cmd) + print cmd proc = Popen(cmd, stdout=stdout, stderr=stderr, env=env, cwd=cwd) return proc diff --git a/toolkit/library/Makefile.in b/toolkit/library/Makefile.in index c285afb4903..9e59b1f82ce 100644 --- a/toolkit/library/Makefile.in +++ b/toolkit/library/Makefile.in @@ -200,6 +200,12 @@ COMPONENT_LIBS += \ windowds \ $(NULL) +ifneq (WINNT,$(OS_ARCH)) +COMPONENT_LIBS += \ + uconvd \ + $(NULL) +endif + ifdef BUILD_CTYPES COMPONENT_LIBS += \ jsctypes \ diff --git a/toolkit/library/nsStaticXULComponents.cpp b/toolkit/library/nsStaticXULComponents.cpp index 8a668b0fd59..b71d905e97e 100644 --- a/toolkit/library/nsStaticXULComponents.cpp +++ b/toolkit/library/nsStaticXULComponents.cpp @@ -205,8 +205,15 @@ #endif #endif +#ifdef XP_WIN +#define UCONV_DATA_MODULE +#else +#define UCONV_DATA_MODULE MODULE(nsUConvDataModule) +#endif + #define XUL_MODULES \ MODULE(nsUConvModule) \ + UCONV_DATA_MODULE \ MODULE(nsI18nModule) \ MODULE(nsChardetModule) \ UNIVERSALCHARDET_MODULE \ diff --git a/toolkit/toolkit-tiers.mk b/toolkit/toolkit-tiers.mk index bb974f94d67..9005886cf63 100644 --- a/toolkit/toolkit-tiers.mk +++ b/toolkit/toolkit-tiers.mk @@ -237,10 +237,18 @@ ifdef APP_LIBXUL_DIRS tier_platform_dirs += $(APP_LIBXUL_DIRS) endif +ifneq (WINNT,$(OS_ARCH)) +tier_platform_dirs += intl/uconv/datamodule +endif + tier_platform_dirs += toolkit/library tier_platform_dirs += xpcom/stub +ifeq (WINNT,$(OS_ARCH)) +tier_platform_dirs += intl/uconv/datamodule +endif + ifdef NS_TRACE_MALLOC tier_platform_dirs += tools/trace-malloc endif diff --git a/xpcom/build/nsXPCOM.h b/xpcom/build/nsXPCOM.h index b7a68871124..e8a564035a8 100644 --- a/xpcom/build/nsXPCOM.h +++ b/xpcom/build/nsXPCOM.h @@ -67,6 +67,7 @@ # define NS_CycleCollectorForget NS_CycleCollectorForget_P # define NS_CycleCollectorSuspect2 NS_CycleCollectorSuspect2_P # define NS_CycleCollectorForget2 NS_CycleCollectorForget2_P +# define NS_IsCycleCollectorThread NS_IsCycleCollectorThread_P #endif #include "nscore.h" @@ -404,6 +405,9 @@ NS_CycleCollectorSuspect2(nsISupports *n); XPCOM_API(bool) NS_CycleCollectorForget2(nsPurpleBufferEntry *e); +XPCOM_API(bool) +NS_IsCycleCollectorThread(); + #endif /** diff --git a/xpcom/glue/BlockingResourceBase.h b/xpcom/glue/BlockingResourceBase.h index e106c0ce3e2..55e251940cc 100644 --- a/xpcom/glue/BlockingResourceBase.h +++ b/xpcom/glue/BlockingResourceBase.h @@ -345,6 +345,7 @@ private: return PR_SUCCESS; } +public: /** * Shutdown * Free static members. @@ -356,6 +357,8 @@ private: sDeadlockDetector = 0; } +private: + # ifdef MOZILLA_INTERNAL_API // so it can call BlockingResourceBase::Shutdown() friend void LogTerm(); diff --git a/xpcom/glue/DeadlockDetector.h b/xpcom/glue/DeadlockDetector.h index 0f9e3abaa6e..e408738376e 100644 --- a/xpcom/glue/DeadlockDetector.h +++ b/xpcom/glue/DeadlockDetector.h @@ -225,9 +225,11 @@ private: mFirstSeen(CallStack::kNone), mOrderedLT() // FIXME bug 456272: set to empirical { // dep size? + MOZ_COUNT_CTOR(OrderingEntry); } ~OrderingEntry() { + MOZ_COUNT_DTOR(OrderingEntry); } CallStack mFirstSeen; // first site from which the resource appeared @@ -367,6 +369,7 @@ public: mLock = PR_NewLock(); if (!mLock) NS_RUNTIMEABORT("couldn't allocate deadlock detector lock"); + MOZ_COUNT_CTOR(DeadlockDetector); } /** @@ -378,6 +381,7 @@ public: { PL_HashTableDestroy(mOrdering); PR_DestroyLock(mLock); + MOZ_COUNT_DTOR(DeadlockDetector); } /** diff --git a/xpcom/glue/nsCycleCollectorUtils.h b/xpcom/glue/nsCycleCollectorUtils.h index 89bd8885bfd..8fa3bca01dd 100644 --- a/xpcom/glue/nsCycleCollectorUtils.h +++ b/xpcom/glue/nsCycleCollectorUtils.h @@ -40,10 +40,9 @@ #include "nscore.h" #include "mozilla/threads/nsThreadIDs.h" -#if defined(MOZILLA_INTERNAL_API) -#define NS_IsCycleCollectorThread NS_IsCycleCollectorThread_P +#if defined(MOZILLA_INTERNAL_API) && !defined(XPCOM_MAKING_STUB) #if defined(XP_WIN) -bool NS_IsCycleCollectorThread(); +XPCOM_API(bool) NS_IsCycleCollectorThread(); #elif defined(NS_TLS) // Defined in nsThreadManager.cpp. extern NS_TLS mozilla::threads::ID gTLSThreadID; @@ -52,10 +51,10 @@ inline bool NS_IsCycleCollectorThread() return gTLSThreadID == mozilla::threads::CycleCollector; } #else -NS_COM_GLUE bool NS_IsCycleCollectorThread(); +XPCOM_API(bool) NS_IsCycleCollectorThread(); #endif #else -NS_COM_GLUE bool NS_IsCycleCollectorThread(); +XPCOM_API(bool) NS_IsCycleCollectorThread(); #endif #endif /* nsCycleCollectorUtils_h__ */ diff --git a/xpcom/stub/nsXPComStub.cpp b/xpcom/stub/nsXPComStub.cpp index d2d6c415d3e..6cd60ce1477 100644 --- a/xpcom/stub/nsXPComStub.cpp +++ b/xpcom/stub/nsXPComStub.cpp @@ -35,6 +35,8 @@ * * ***** END LICENSE BLOCK ***** */ +#define XPCOM_MAKING_STUB + #include "nsXPCOM.h" #include "nsXPCOMPrivate.h" #include "nsXPCOMStrings.h" @@ -559,3 +561,12 @@ NS_CycleCollectorForget2(nsPurpleBufferEntry* e) { return NS_CycleCollectorForget2_P(e); } + +#ifdef XP_WIN +#undef NS_IsCycleCollectorThread +EXPORT_XPCOM_API(bool) +NS_IsCycleCollectorThread() +{ + return NS_IsCycleCollectorThread_P(); +} +#endif