--- a/extensions/universalchardet/src/base/nsEscCharsetProber.cpp
+++ b/extensions/universalchardet/src/base/nsEscCharsetProber.cpp
@@ -32,58 +32,70 @@
* 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 "nsEscCharsetProber.h"
+#include "nsUniversalDetector.h"
-nsEscCharSetProber::nsEscCharSetProber(void)
+nsEscCharSetProber::nsEscCharSetProber(PRUint32 aLanguageFilter)
{
- mCodingSM[0] = new nsCodingStateMachine(&HZSMModel);
- mCodingSM[1] = new nsCodingStateMachine(&ISO2022CNSMModel);
- mCodingSM[2] = new nsCodingStateMachine(&ISO2022JPSMModel);
- mCodingSM[3] = new nsCodingStateMachine(&ISO2022KRSMModel);
+ for (PRUint32 i = 0; i < NUM_OF_ESC_CHARSETS; i++)
+ mCodingSM[i] = nsnull;
+ if (aLanguageFilter & NS_FILTER_CHINESE_SIMPLIFIED)
+ {
+ mCodingSM[0] = new nsCodingStateMachine(&HZSMModel);
+ mCodingSM[1] = new nsCodingStateMachine(&ISO2022CNSMModel);
+ }
+ if (aLanguageFilter & NS_FILTER_JAPANESE)
+ mCodingSM[2] = new nsCodingStateMachine(&ISO2022JPSMModel);
+ if (aLanguageFilter & NS_FILTER_KOREAN)
+ mCodingSM[3] = new nsCodingStateMachine(&ISO2022KRSMModel);
mActiveSM = NUM_OF_ESC_CHARSETS;
mState = eDetecting;
mDetectedCharset = nsnull;
}
nsEscCharSetProber::~nsEscCharSetProber(void)
{
for (PRUint32 i = 0; i < NUM_OF_ESC_CHARSETS; i++)
delete mCodingSM[i];
}
void nsEscCharSetProber::Reset(void)
{
mState = eDetecting;
for (PRUint32 i = 0; i < NUM_OF_ESC_CHARSETS; i++)
- mCodingSM[i]->Reset();
+ if (mCodingSM[i])
+ mCodingSM[i]->Reset();
mActiveSM = NUM_OF_ESC_CHARSETS;
mDetectedCharset = nsnull;
}
nsProbingState nsEscCharSetProber::HandleData(const char* aBuf, PRUint32 aLen)
{
nsSMState codingState;
PRInt32 j;
PRUint32 i;
for ( i = 0; i < aLen && mState == eDetecting; i++)
{
for (j = mActiveSM-1; j>= 0; j--)
{
- codingState = mCodingSM[j]->NextState(aBuf[i]);
- if (codingState == eItsMe)
+ if (mCodingSM[j])
{
- mState = eFoundIt;
- mDetectedCharset = mCodingSM[j]->GetCodingStateMachine();
- return mState;
+ codingState = mCodingSM[j]->NextState(aBuf[i]);
+ if (codingState == eItsMe)
+ {
+ mState = eFoundIt;
+ mDetectedCharset = mCodingSM[j]->GetCodingStateMachine();
+ return mState;
+ }
}
}
}
return mState;
}
--- a/extensions/universalchardet/src/base/nsEscCharsetProber.h
+++ b/extensions/universalchardet/src/base/nsEscCharsetProber.h
@@ -40,17 +40,17 @@
#include "nsCharSetProber.h"
#include "nsCodingStateMachine.h"
#define NUM_OF_ESC_CHARSETS 4
class nsEscCharSetProber: public nsCharSetProber {
public:
- nsEscCharSetProber(void);
+ nsEscCharSetProber(PRUint32 aLanguageFilter);
virtual ~nsEscCharSetProber(void);
nsProbingState HandleData(const char* aBuf, PRUint32 aLen);
const char* GetCharSetName() {return mDetectedCharset;}
nsProbingState GetState(void) {return mState;}
void Reset(void);
float GetConfidence(void){return (float)0.99;}
void SetOpion() {}
--- a/extensions/universalchardet/src/base/nsMBCSGroupProber.cpp
+++ b/extensions/universalchardet/src/base/nsMBCSGroupProber.cpp
@@ -34,40 +34,52 @@
* 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 <stdio.h>
#include "nsMBCSGroupProber.h"
+#include "nsUniversalDetector.h"
#if defined(DEBUG_chardet) || defined(DEBUG_jgmyers)
const char *ProberName[] =
{
"UTF8",
"SJIS",
"EUCJP",
"GB18030",
"EUCKR",
"Big5",
"EUCTW",
};
#endif
-nsMBCSGroupProber::nsMBCSGroupProber()
+nsMBCSGroupProber::nsMBCSGroupProber(PRUint32 aLanguageFilter)
{
+ for (PRUint32 i = 0; i < NUM_OF_PROBERS; i++)
+ mProbers[i] = nsnull;
+
mProbers[0] = new nsUTF8Prober();
- mProbers[1] = new nsSJISProber();
- mProbers[2] = new nsEUCJPProber();
- mProbers[3] = new nsGB18030Prober();
- mProbers[4] = new nsEUCKRProber();
- mProbers[5] = new nsBig5Prober();
- mProbers[6] = new nsEUCTWProber();
+ if (aLanguageFilter & NS_FILTER_JAPANESE)
+ {
+ mProbers[1] = new nsSJISProber();
+ mProbers[2] = new nsEUCJPProber();
+ }
+ if (aLanguageFilter & NS_FILTER_CHINESE_SIMPLIFIED)
+ mProbers[3] = new nsGB18030Prober();
+ if (aLanguageFilter & NS_FILTER_KOREAN)
+ mProbers[4] = new nsEUCKRProber();
+ if (aLanguageFilter & NS_FILTER_CHINESE_TRADITIONAL)
+ {
+ mProbers[5] = new nsBig5Prober();
+ mProbers[6] = new nsEUCTWProber();
+ }
Reset();
}
nsMBCSGroupProber::~nsMBCSGroupProber()
{
for (PRUint32 i = 0; i < NUM_OF_PROBERS; i++)
{
delete mProbers[i];
--- a/extensions/universalchardet/src/base/nsMBCSGroupProber.h
+++ b/extensions/universalchardet/src/base/nsMBCSGroupProber.h
@@ -46,17 +46,17 @@
#include "nsEUCKRProber.h"
#include "nsBig5Prober.h"
#include "nsEUCTWProber.h"
#define NUM_OF_PROBERS 7
class nsMBCSGroupProber: public nsCharSetProber {
public:
- nsMBCSGroupProber();
+ nsMBCSGroupProber(PRUint32 aLanguageFilter);
virtual ~nsMBCSGroupProber();
nsProbingState HandleData(const char* aBuf, PRUint32 aLen);
const char* GetCharSetName();
nsProbingState GetState(void) {return mState;}
void Reset(void);
float GetConfidence(void);
void SetOpion() {}
--- a/extensions/universalchardet/src/base/nsUniversalDetector.cpp
+++ b/extensions/universalchardet/src/base/nsUniversalDetector.cpp
@@ -40,28 +40,29 @@
#include "nsUniversalDetector.h"
#include "nsMBCSGroupProber.h"
#include "nsSBCSGroupProber.h"
#include "nsEscCharsetProber.h"
#include "nsLatin1Prober.h"
-nsUniversalDetector::nsUniversalDetector()
+nsUniversalDetector::nsUniversalDetector(PRUint32 aLanguageFilter)
{
mDone = PR_FALSE;
mBestGuess = -1; //illegal value as signal
mInTag = PR_FALSE;
mEscCharSetProber = nsnull;
mStart = PR_TRUE;
mDetectedCharset = nsnull;
mGotData = PR_FALSE;
mInputState = ePureAscii;
mLastChar = '\0';
+ mLanguageFilter = aLanguageFilter;
PRUint32 i;
for (i = 0; i < NUM_OF_CHARSET_PROBERS; i++)
mCharSetProbers[i] = nsnull;
}
nsUniversalDetector::~nsUniversalDetector()
{
@@ -166,26 +167,31 @@ nsresult nsUniversalDetector::HandleData
//kill mEscCharSetProber if it is active
if (mEscCharSetProber) {
delete mEscCharSetProber;
mEscCharSetProber = nsnull;
}
//start multibyte and singlebyte charset prober
if (nsnull == mCharSetProbers[0])
- mCharSetProbers[0] = new nsMBCSGroupProber;
- if (nsnull == mCharSetProbers[1])
+ {
+ mCharSetProbers[0] = new nsMBCSGroupProber(mLanguageFilter);
+ if (nsnull == mCharSetProbers[0])
+ return NS_ERROR_OUT_OF_MEMORY;
+ }
+ if (nsnull == mCharSetProbers[1] &&
+ (mLanguageFilter & NS_FILTER_NON_CJK))
+ {
mCharSetProbers[1] = new nsSBCSGroupProber;
+ if (nsnull == mCharSetProbers[1])
+ return NS_ERROR_OUT_OF_MEMORY;
+ }
+ mCharSetProbers[2] = new nsLatin1Prober;
if (nsnull == mCharSetProbers[2])
- mCharSetProbers[2] = new nsLatin1Prober;
-
- if ((nsnull == mCharSetProbers[0]) ||
- (nsnull == mCharSetProbers[1]) ||
- (nsnull == mCharSetProbers[2]))
- return NS_ERROR_OUT_OF_MEMORY;
+ return NS_ERROR_OUT_OF_MEMORY;
}
}
else
{
//ok, just pure ascii so far
if ( ePureAscii == mInputState &&
(aBuf[i] == '\033' || (aBuf[i] == '{' && mLastChar == '~')) )
{
@@ -196,36 +202,39 @@ nsresult nsUniversalDetector::HandleData
}
}
nsProbingState st;
switch (mInputState)
{
case eEscAscii:
if (nsnull == mEscCharSetProber) {
- mEscCharSetProber = new nsEscCharSetProber;
+ mEscCharSetProber = new nsEscCharSetProber(mLanguageFilter);
if (nsnull == mEscCharSetProber)
return NS_ERROR_OUT_OF_MEMORY;
}
st = mEscCharSetProber->HandleData(aBuf, aLen);
if (st == eFoundIt)
{
mDone = PR_TRUE;
mDetectedCharset = mEscCharSetProber->GetCharSetName();
}
break;
case eHighbyte:
for (i = 0; i < NUM_OF_CHARSET_PROBERS; i++)
{
- st = mCharSetProbers[i]->HandleData(aBuf, aLen);
- if (st == eFoundIt)
+ if (mCharSetProbers[i])
{
- mDone = PR_TRUE;
- mDetectedCharset = mCharSetProbers[i]->GetCharSetName();
- return NS_OK;
+ st = mCharSetProbers[i]->HandleData(aBuf, aLen);
+ if (st == eFoundIt)
+ {
+ mDone = PR_TRUE;
+ mDetectedCharset = mCharSetProbers[i]->GetCharSetName();
+ return NS_OK;
+ }
}
}
break;
default: //pure ascii
;//do nothing here
}
return NS_OK;
@@ -254,21 +263,24 @@ void nsUniversalDetector::DataEnd()
case eHighbyte:
{
float proberConfidence;
float maxProberConfidence = (float)0.0;
PRInt32 maxProber = 0;
for (PRInt32 i = 0; i < NUM_OF_CHARSET_PROBERS; i++)
{
- proberConfidence = mCharSetProbers[i]->GetConfidence();
- if (proberConfidence > maxProberConfidence)
+ if (mCharSetProbers[i])
{
- maxProberConfidence = proberConfidence;
- maxProber = i;
+ proberConfidence = mCharSetProbers[i]->GetConfidence();
+ if (proberConfidence > maxProberConfidence)
+ {
+ maxProberConfidence = proberConfidence;
+ maxProber = i;
+ }
}
}
//do not report anything because we are not confident of it, that's in fact a negative answer
if (maxProberConfidence > MINIMUM_THRESHOLD)
Report(mCharSetProbers[maxProber]->GetCharSetName());
}
break;
case eEscAscii:
--- a/extensions/universalchardet/src/base/nsUniversalDetector.h
+++ b/extensions/universalchardet/src/base/nsUniversalDetector.h
@@ -43,33 +43,47 @@ class nsCharSetProber;
#define NUM_OF_CHARSET_PROBERS 3
typedef enum {
ePureAscii = 0,
eEscAscii = 1,
eHighbyte = 2
} nsInputState;
+#define NS_FILTER_CHINESE_SIMPLIFIED 0x01
+#define NS_FILTER_CHINESE_TRADITIONAL 0x02
+#define NS_FILTER_JAPANESE 0x04
+#define NS_FILTER_KOREAN 0x08
+#define NS_FILTER_NON_CJK 0x10
+#define NS_FILTER_ALL 0x1F
+#define NS_FILTER_CHINESE (NS_FILTER_CHINESE_SIMPLIFIED | \
+ NS_FILTER_CHINESE_TRADITIONAL)
+#define NS_FILTER_CJK (NS_FILTER_CHINESE_SIMPLIFIED | \
+ NS_FILTER_CHINESE_TRADITIONAL | \
+ NS_FILTER_JAPANESE | \
+ NS_FILTER_KOREAN)
+
class nsUniversalDetector {
public:
- nsUniversalDetector();
+ nsUniversalDetector(PRUint32 aLanguageFilter);
virtual ~nsUniversalDetector();
virtual nsresult HandleData(const char* aBuf, PRUint32 aLen);
virtual void DataEnd(void);
protected:
virtual void Report(const char* aCharset) = 0;
virtual void Reset();
nsInputState mInputState;
PRBool mDone;
PRBool mInTag;
PRBool mStart;
PRBool mGotData;
char mLastChar;
const char * mDetectedCharset;
PRInt32 mBestGuess;
+ PRUint32 mLanguageFilter;
nsCharSetProber *mCharSetProbers[NUM_OF_CHARSET_PROBERS];
nsCharSetProber *mEscCharSetProber;
};
#endif
--- a/extensions/universalchardet/src/xpcom/nsUdetXPCOMWrapper.cpp
+++ b/extensions/universalchardet/src/xpcom/nsUdetXPCOMWrapper.cpp
@@ -49,40 +49,41 @@
#include "pratom.h"
#include "prmem.h"
#include "nsCOMPtr.h"
static NS_DEFINE_CID(kUniversalDetectorCID, NS_UNIVERSAL_DETECTOR_CID);
static NS_DEFINE_CID(kUniversalStringDetectorCID, NS_UNIVERSAL_STRING_DETECTOR_CID);
//---------------------------------------------------------------------
-nsUniversalXPCOMDetector:: nsUniversalXPCOMDetector() : nsUniversalDetector()
+nsXPCOMDetector:: nsXPCOMDetector(PRUint32 aLanguageFilter)
+ : nsUniversalDetector(aLanguageFilter)
{
}
//---------------------------------------------------------------------
-nsUniversalXPCOMDetector::~nsUniversalXPCOMDetector()
+nsXPCOMDetector::~nsXPCOMDetector()
{
}
//---------------------------------------------------------------------
-NS_IMPL_ISUPPORTS1(nsUniversalXPCOMDetector, nsICharsetDetector)
+NS_IMPL_ISUPPORTS1(nsXPCOMDetector, nsICharsetDetector)
//---------------------------------------------------------------------
-NS_IMETHODIMP nsUniversalXPCOMDetector::Init(
+NS_IMETHODIMP nsXPCOMDetector::Init(
nsICharsetDetectionObserver* aObserver)
{
NS_ASSERTION(mObserver == nsnull , "Init twice");
if(nsnull == aObserver)
return NS_ERROR_ILLEGAL_VALUE;
mObserver = aObserver;
return NS_OK;
}
//----------------------------------------------------------
-NS_IMETHODIMP nsUniversalXPCOMDetector::DoIt(const char* aBuf,
+NS_IMETHODIMP nsXPCOMDetector::DoIt(const char* aBuf,
PRUint32 aLen, PRBool* oDontFeedMe)
{
NS_ASSERTION(mObserver != nsnull , "have not init yet");
if((nsnull == aBuf) || (nsnull == oDontFeedMe))
return NS_ERROR_ILLEGAL_VALUE;
nsresult rv = this->HandleData(aBuf, aLen);
@@ -95,64 +96,64 @@ NS_IMETHODIMP nsUniversalXPCOMDetector::
Report(mDetectedCharset);
*oDontFeedMe = PR_TRUE;
}
*oDontFeedMe = PR_FALSE;
return NS_OK;
}
//----------------------------------------------------------
-NS_IMETHODIMP nsUniversalXPCOMDetector::Done()
+NS_IMETHODIMP nsXPCOMDetector::Done()
{
NS_ASSERTION(mObserver != nsnull , "have not init yet");
#ifdef DEBUG_chardet
for (PRInt32 i = 0; i < NUM_OF_CHARSET_PROBERS; i++)
{
// If no data was received the array might stay filled with nulls
// the way it was initialized in the constructor.
if (mCharSetProbers[i])
mCharSetProbers[i]->DumpStatus();
}
#endif
this->DataEnd();
return NS_OK;
}
//----------------------------------------------------------
-void nsUniversalXPCOMDetector::Report(const char* aCharset)
+void nsXPCOMDetector::Report(const char* aCharset)
{
NS_ASSERTION(mObserver != nsnull , "have not init yet");
#ifdef DEBUG_chardet
printf("Universal Charset Detector report charset %s . \r\n", aCharset);
#endif
mObserver->Notify(aCharset, eBestAnswer);
}
//---------------------------------------------------------------------
-nsUniversalXPCOMStringDetector:: nsUniversalXPCOMStringDetector()
- : nsUniversalDetector()
+nsXPCOMStringDetector:: nsXPCOMStringDetector(PRUint32 aLanguageFilter)
+ : nsUniversalDetector(aLanguageFilter)
{
}
//---------------------------------------------------------------------
-nsUniversalXPCOMStringDetector::~nsUniversalXPCOMStringDetector()
+nsXPCOMStringDetector::~nsXPCOMStringDetector()
{
}
//---------------------------------------------------------------------
-NS_IMPL_ISUPPORTS1(nsUniversalXPCOMStringDetector, nsIStringCharsetDetector)
+NS_IMPL_ISUPPORTS1(nsXPCOMStringDetector, nsIStringCharsetDetector)
//---------------------------------------------------------------------
-void nsUniversalXPCOMStringDetector::Report(const char *aCharset)
+void nsXPCOMStringDetector::Report(const char *aCharset)
{
mResult = aCharset;
#ifdef DEBUG_chardet
printf("New Charset Prober report charset %s . \r\n", aCharset);
#endif
}
//---------------------------------------------------------------------
-NS_IMETHODIMP nsUniversalXPCOMStringDetector::DoIt(const char* aBuf,
+NS_IMETHODIMP nsXPCOMStringDetector::DoIt(const char* aBuf,
PRUint32 aLen, const char** oCharset,
nsDetectionConfident &oConf)
{
mResult = nsnull;
this->Reset();
nsresult rv = this->HandleData(aBuf, aLen);
if (NS_FAILED(rv))
return rv;
--- a/extensions/universalchardet/src/xpcom/nsUdetXPCOMWrapper.h
+++ b/extensions/universalchardet/src/xpcom/nsUdetXPCOMWrapper.h
@@ -48,47 +48,196 @@
// {374E0CDE-F605-4259-8C92-E639C6C2EEEF}
#define NS_UNIVERSAL_DETECTOR_CID \
{ 0x374e0cde, 0xf605, 0x4259, { 0x8c, 0x92, 0xe6, 0x39, 0xc6, 0xc2, 0xee, 0xef } }
// {6EE5301A-3981-49bd-85F8-1A2CC228CF3E}
#define NS_UNIVERSAL_STRING_DETECTOR_CID \
{ 0x6ee5301a, 0x3981, 0x49bd, { 0x85, 0xf8, 0x1a, 0x2c, 0xc2, 0x28, 0xcf, 0x3e } }
+// {12BB8F1B-2389-11d3-B3BF-00805F8A6670}
+#define NS_JA_PSMDETECTOR_CID \
+{ 0x12bb8f1b, 0x2389, 0x11d3, { 0xb3, 0xbf, 0x0, 0x80, 0x5f, 0x8a, 0x66, 0x70 } }
+
+// {12BB8F1C-2389-11d3-B3BF-00805F8A6670}
+#define NS_JA_STRING_PSMDETECTOR_CID \
+{ 0x12bb8f1c, 0x2389, 0x11d3, { 0xb3, 0xbf, 0x0, 0x80, 0x5f, 0x8a, 0x66, 0x70 } }
+
+// {EA06D4E1-2B3D-11d3-B3BF-00805F8A6670}
+#define NS_KO_PSMDETECTOR_CID \
+{ 0xea06d4e1, 0x2b3d, 0x11d3, { 0xb3, 0xbf, 0x0, 0x80, 0x5f, 0x8a, 0x66, 0x70 } }
+
+// {EA06D4E2-2B3D-11d3-B3BF-00805F8A6670}
+#define NS_ZHCN_PSMDETECTOR_CID \
+{ 0xea06d4e2, 0x2b3d, 0x11d3, { 0xb3, 0xbf, 0x0, 0x80, 0x5f, 0x8a, 0x66, 0x70 } }
+
+// {EA06D4E3-2B3D-11d3-B3BF-00805F8A6670}
+#define NS_ZHTW_PSMDETECTOR_CID \
+{ 0xea06d4e3, 0x2b3d, 0x11d3, { 0xb3, 0xbf, 0x0, 0x80, 0x5f, 0x8a, 0x66, 0x70 } }
+
+
+// {EA06D4E4-2B3D-11d3-B3BF-00805F8A6670}
+#define NS_KO_STRING_PSMDETECTOR_CID \
+{ 0xea06d4e4, 0x2b3d, 0x11d3, { 0xb3, 0xbf, 0x0, 0x80, 0x5f, 0x8a, 0x66, 0x70 } }
+
+// {EA06D4E5-2B3D-11d3-B3BF-00805F8A6670}
+#define NS_ZHCN_STRING_PSMDETECTOR_CID \
+{ 0xea06d4e5, 0x2b3d, 0x11d3, { 0xb3, 0xbf, 0x0, 0x80, 0x5f, 0x8a, 0x66, 0x70 } }
+
+// {EA06D4E6-2B3D-11d3-B3BF-00805F8A6670}
+#define NS_ZHTW_STRING_PSMDETECTOR_CID \
+{ 0xea06d4e6, 0x2b3d, 0x11d3, { 0xb3, 0xbf, 0x0, 0x80, 0x5f, 0x8a, 0x66, 0x70 } }
+
+
+// {FCACEF21-2B40-11d3-B3BF-00805F8A6670}
+#define NS_ZH_STRING_PSMDETECTOR_CID \
+{ 0xfcacef21, 0x2b40, 0x11d3, { 0xb3, 0xbf, 0x0, 0x80, 0x5f, 0x8a, 0x66, 0x70 } }
+
+// {FCACEF22-2B40-11d3-B3BF-00805F8A6670}
+#define NS_CJK_STRING_PSMDETECTOR_CID \
+{ 0xfcacef22, 0x2b40, 0x11d3, { 0xb3, 0xbf, 0x0, 0x80, 0x5f, 0x8a, 0x66, 0x70 } }
+
+
+// {FCACEF23-2B40-11d3-B3BF-00805F8A6670}
+#define NS_ZH_PSMDETECTOR_CID \
+{ 0xfcacef23, 0x2b40, 0x11d3, { 0xb3, 0xbf, 0x0, 0x80, 0x5f, 0x8a, 0x66, 0x70 } }
+
+// {FCACEF24-2B40-11d3-B3BF-00805F8A6670}
+#define NS_CJK_PSMDETECTOR_CID \
+{ 0xfcacef24, 0x2b40, 0x11d3, { 0xb3, 0xbf, 0x0, 0x80, 0x5f, 0x8a, 0x66, 0x70 } }
//=====================================================================
-class nsUniversalXPCOMDetector :
+class nsXPCOMDetector :
public nsUniversalDetector,
public nsICharsetDetector
{
NS_DECL_ISUPPORTS
public:
- nsUniversalXPCOMDetector();
- virtual ~nsUniversalXPCOMDetector();
+ nsXPCOMDetector(PRUint32 aLanguageFilter);
+ virtual ~nsXPCOMDetector();
NS_IMETHOD Init(nsICharsetDetectionObserver* aObserver);
NS_IMETHOD DoIt(const char* aBuf, PRUint32 aLen, PRBool *oDontFeedMe);
NS_IMETHOD Done();
protected:
virtual void Report(const char* aCharset);
private:
nsCOMPtr<nsICharsetDetectionObserver> mObserver;
};
//=====================================================================
-class nsUniversalXPCOMStringDetector :
+class nsXPCOMStringDetector :
public nsUniversalDetector,
public nsIStringCharsetDetector
{
NS_DECL_ISUPPORTS
public:
- nsUniversalXPCOMStringDetector();
- virtual ~nsUniversalXPCOMStringDetector();
+ nsXPCOMStringDetector(PRUint32 aLanguageFilter);
+ virtual ~nsXPCOMStringDetector();
NS_IMETHOD DoIt(const char* aBuf, PRUint32 aLen,
const char** oCharset, nsDetectionConfident &oConf);
protected:
virtual void Report(const char* aCharset);
private:
nsCOMPtr<nsICharsetDetectionObserver> mObserver;
const char* mResult;
};
+//=====================================================================
+class nsUniversalXPCOMDetector : public nsXPCOMDetector
+{
+public:
+ nsUniversalXPCOMDetector()
+ : nsXPCOMDetector(NS_FILTER_ALL) {}
+};
+
+class nsUniversalXPCOMStringDetector : public nsXPCOMStringDetector
+{
+public:
+ nsUniversalXPCOMStringDetector()
+ : nsXPCOMStringDetector(NS_FILTER_ALL) {}
+};
+
+class nsJAPSMDetector : public nsXPCOMDetector
+{
+public:
+ nsJAPSMDetector()
+ : nsXPCOMDetector(NS_FILTER_JAPANESE) {}
+};
+
+class nsJAStringPSMDetector : public nsXPCOMStringDetector
+{
+public:
+ nsJAStringPSMDetector()
+ : nsXPCOMStringDetector(NS_FILTER_JAPANESE) {}
+};
+
+class nsKOPSMDetector : public nsXPCOMDetector
+{
+public:
+ nsKOPSMDetector()
+ : nsXPCOMDetector(NS_FILTER_KOREAN) {}
+};
+
+class nsKOStringPSMDetector : public nsXPCOMStringDetector
+{
+public:
+ nsKOStringPSMDetector()
+ : nsXPCOMStringDetector(NS_FILTER_KOREAN) {}
+};
+
+class nsZHTWPSMDetector : public nsXPCOMDetector
+{
+public:
+ nsZHTWPSMDetector()
+ : nsXPCOMDetector(NS_FILTER_CHINESE_TRADITIONAL) {}
+};
+
+class nsZHTWStringPSMDetector : public nsXPCOMStringDetector
+{
+public:
+ nsZHTWStringPSMDetector()
+ : nsXPCOMStringDetector(NS_FILTER_CHINESE_TRADITIONAL) {}
+};
+
+class nsZHCNPSMDetector : public nsXPCOMDetector
+{
+public:
+ nsZHCNPSMDetector()
+ : nsXPCOMDetector(NS_FILTER_CHINESE_SIMPLIFIED) {}
+};
+
+class nsZHCNStringPSMDetector : public nsXPCOMStringDetector
+{
+public:
+ nsZHCNStringPSMDetector()
+ : nsXPCOMStringDetector(NS_FILTER_CHINESE_SIMPLIFIED) {}
+};
+
+class nsZHPSMDetector : public nsXPCOMDetector
+{
+public:
+ nsZHPSMDetector()
+ : nsXPCOMDetector(NS_FILTER_CHINESE) {}
+};
+
+class nsZHStringPSMDetector : public nsXPCOMStringDetector
+{
+public:
+ nsZHStringPSMDetector()
+ : nsXPCOMStringDetector(NS_FILTER_CHINESE) {}
+};
+
+class nsCJKPSMDetector : public nsXPCOMDetector
+{
+public:
+ nsCJKPSMDetector()
+ : nsXPCOMDetector(NS_FILTER_CJK) {}
+};
+
+class nsCJKStringPSMDetector : public nsXPCOMStringDetector
+{
+public:
+ nsCJKStringPSMDetector()
+ : nsXPCOMStringDetector(NS_FILTER_CJK) {}
+};
+
#endif //_nsUdetXPCOMWrapper_h__
--- a/extensions/universalchardet/src/xpcom/nsUniversalCharDetModule.cpp
+++ b/extensions/universalchardet/src/xpcom/nsUniversalCharDetModule.cpp
@@ -53,40 +53,168 @@
#include "nsIGenericFactory.h"
#include "nsUniversalDetector.h"
#include "nsUdetXPCOMWrapper.h"
NS_GENERIC_FACTORY_CONSTRUCTOR(nsUniversalXPCOMDetector)
NS_GENERIC_FACTORY_CONSTRUCTOR(nsUniversalXPCOMStringDetector)
+NS_GENERIC_FACTORY_CONSTRUCTOR(nsJAPSMDetector)
+NS_GENERIC_FACTORY_CONSTRUCTOR(nsJAStringPSMDetector)
+NS_GENERIC_FACTORY_CONSTRUCTOR(nsKOPSMDetector)
+NS_GENERIC_FACTORY_CONSTRUCTOR(nsKOStringPSMDetector)
+NS_GENERIC_FACTORY_CONSTRUCTOR(nsZHTWPSMDetector)
+NS_GENERIC_FACTORY_CONSTRUCTOR(nsZHTWStringPSMDetector)
+NS_GENERIC_FACTORY_CONSTRUCTOR(nsZHCNPSMDetector)
+NS_GENERIC_FACTORY_CONSTRUCTOR(nsZHCNStringPSMDetector)
+NS_GENERIC_FACTORY_CONSTRUCTOR(nsZHPSMDetector)
+NS_GENERIC_FACTORY_CONSTRUCTOR(nsZHStringPSMDetector)
+NS_GENERIC_FACTORY_CONSTRUCTOR(nsCJKPSMDetector)
+NS_GENERIC_FACTORY_CONSTRUCTOR(nsCJKStringPSMDetector)
//----------------------------------------
-static NS_METHOD nsUniversalCharDetectorRegistrationProc(nsIComponentManager *aCompMgr,
- nsIFile *aPath,
- const char *registryLocation,
- const char *componentType,
- const nsModuleComponentInfo *info)
+static NS_METHOD
+AddCategoryEntry(const char* category,
+ const char* key,
+ const char* value)
{
nsresult rv;
nsCOMPtr<nsICategoryManager>
categoryManager(do_GetService("@mozilla.org/categorymanager;1", &rv));
if (NS_FAILED(rv)) return rv;
- return categoryManager->AddCategoryEntry(NS_CHARSET_DETECTOR_CATEGORY,
- "universal_charset_detector",
- info->mContractID,
+ return categoryManager->AddCategoryEntry(category, key, value,
PR_TRUE, PR_TRUE,
nsnull);
}
+static NS_METHOD nsUniversalCharDetectorRegistrationProc(nsIComponentManager *aCompMgr,
+ nsIFile *aPath,
+ const char *registryLocation,
+ const char *componentType,
+ const nsModuleComponentInfo *info)
+{
+ return AddCategoryEntry(NS_CHARSET_DETECTOR_CATEGORY,
+ "universal_charset_detector",
+ info->mContractID);
+}
+
+static NS_METHOD
+nsJAPSMDetectorRegistrationProc(nsIComponentManager *aCompMgr,
+ nsIFile *aPath,
+ const char *registryLocation,
+ const char *componentType,
+ const nsModuleComponentInfo *info)
+{
+ return AddCategoryEntry(NS_CHARSET_DETECTOR_CATEGORY,
+ "ja_parallel_state_machine",
+ info->mContractID);
+}
+
+static NS_METHOD
+nsKOPSMDetectorRegistrationProc(nsIComponentManager *aCompMgr,
+ nsIFile *aPath,
+ const char *registryLocation,
+ const char *componentType,
+ const nsModuleComponentInfo *info)
+{
+ return AddCategoryEntry(NS_CHARSET_DETECTOR_CATEGORY,
+ "ko_parallel_state_machine",
+ info->mContractID);
+}
+
+static NS_METHOD
+nsZHTWPSMDetectorRegistrationProc(nsIComponentManager *aCompMgr,
+ nsIFile *aPath,
+ const char *registryLocation,
+ const char *componentType,
+ const nsModuleComponentInfo *info)
+{
+ return AddCategoryEntry(NS_CHARSET_DETECTOR_CATEGORY,
+ "zhtw_parallel_state_machine",
+ info->mContractID);
+}
+
+static NS_METHOD
+nsZHCNPSMDetectorRegistrationProc(nsIComponentManager *aCompMgr,
+ nsIFile *aPath,
+ const char *registryLocation,
+ const char *componentType,
+ const nsModuleComponentInfo *info)
+{
+ return AddCategoryEntry(NS_CHARSET_DETECTOR_CATEGORY,
+ "zhcn_parallel_state_machine",
+ info->mContractID);
+}
+
+static NS_METHOD
+nsZHPSMDetectorRegistrationProc(nsIComponentManager *aCompMgr,
+ nsIFile *aPath,
+ const char *registryLocation,
+ const char *componentType,
+ const nsModuleComponentInfo *info)
+{
+ return AddCategoryEntry(NS_CHARSET_DETECTOR_CATEGORY,
+ "zh_parallel_state_machine",
+ info->mContractID);
+}
+
+static NS_METHOD
+nsCJKPSMDetectorRegistrationProc(nsIComponentManager *aCompMgr,
+ nsIFile *aPath,
+ const char *registryLocation,
+ const char *componentType,
+ const nsModuleComponentInfo *info)
+{
+ return AddCategoryEntry(NS_CHARSET_DETECTOR_CATEGORY,
+ "cjk_parallel_state_machine",
+ info->mContractID);
+}
+
// Component Table
static const nsModuleComponentInfo components[] =
{
{ "Universal Charset Detector", NS_UNIVERSAL_DETECTOR_CID,
NS_CHARSET_DETECTOR_CONTRACTID_BASE "universal_charset_detector", nsUniversalXPCOMDetectorConstructor,
nsUniversalCharDetectorRegistrationProc, NULL},
{ "Universal String Charset Detector", NS_UNIVERSAL_STRING_DETECTOR_CID,
NS_STRCDETECTOR_CONTRACTID_BASE "universal_charset_detector", nsUniversalXPCOMStringDetectorConstructor,
- NULL, NULL}
+ NULL, NULL},
+ { "PSM based Japanese Charset Detector", NS_JA_PSMDETECTOR_CID,
+ NS_CHARSET_DETECTOR_CONTRACTID_BASE "ja_parallel_state_machine", nsJAPSMDetectorConstructor,
+ nsJAPSMDetectorRegistrationProc, NULL},
+ { "PSM based Japanese String Charset Detector", NS_JA_STRING_PSMDETECTOR_CID,
+ NS_STRCDETECTOR_CONTRACTID_BASE "ja_parallel_state_machine", nsJAStringPSMDetectorConstructor,
+ NULL, NULL},
+ { "PSM based Korean Charset Detector", NS_KO_PSMDETECTOR_CID,
+ NS_CHARSET_DETECTOR_CONTRACTID_BASE "ko_parallel_state_machine", nsKOPSMDetectorConstructor,
+ nsKOPSMDetectorRegistrationProc, NULL},
+ { "PSM based Korean String Charset Detector", NS_KO_STRING_PSMDETECTOR_CID,
+ NS_STRCDETECTOR_CONTRACTID_BASE "ko_parallel_state_machine", nsKOStringPSMDetectorConstructor,
+ NULL, NULL},
+ { "PSM based Traditional Chinese Charset Detector", NS_ZHTW_PSMDETECTOR_CID,
+ NS_CHARSET_DETECTOR_CONTRACTID_BASE "zhtw_parallel_state_machine", nsZHTWPSMDetectorConstructor,
+ nsZHTWPSMDetectorRegistrationProc, NULL},
+ { "PSM based Traditional Chinese String Charset Detector", NS_ZHTW_STRING_PSMDETECTOR_CID,
+ NS_STRCDETECTOR_CONTRACTID_BASE "zhtw_parallel_state_machine", nsZHTWStringPSMDetectorConstructor,
+ NULL, NULL},
+ { "PSM based Simplified Chinese Charset Detector", NS_ZHCN_PSMDETECTOR_CID,
+ NS_CHARSET_DETECTOR_CONTRACTID_BASE "zhcn_parallel_state_machine", nsZHCNPSMDetectorConstructor,
+ nsZHCNPSMDetectorRegistrationProc, NULL},
+ { "PSM based Simplified Chinese String Charset Detector", NS_ZHCN_STRING_PSMDETECTOR_CID,
+ NS_STRCDETECTOR_CONTRACTID_BASE "zhcn_parallel_state_machine", nsZHCNStringPSMDetectorConstructor,
+ NULL, NULL},
+ { "PSM based Chinese Charset Detector", NS_ZH_PSMDETECTOR_CID,
+ NS_CHARSET_DETECTOR_CONTRACTID_BASE "zh_parallel_state_machine", nsZHPSMDetectorConstructor,
+ nsZHPSMDetectorRegistrationProc, NULL},
+ { "PSM based Chinese String Charset Detector", NS_ZH_STRING_PSMDETECTOR_CID,
+ NS_STRCDETECTOR_CONTRACTID_BASE "zh_parallel_state_machine", nsZHStringPSMDetectorConstructor,
+ NULL, NULL},
+ { "PSM based CJK Charset Detector", NS_CJK_PSMDETECTOR_CID,
+ NS_CHARSET_DETECTOR_CONTRACTID_BASE "cjk_parallel_state_machine", nsCJKPSMDetectorConstructor,
+ nsCJKPSMDetectorRegistrationProc, NULL},
+ { "PSM based CJK String Charset Detector", NS_CJK_STRING_PSMDETECTOR_CID,
+ NS_STRCDETECTOR_CONTRACTID_BASE "cjk_parallel_state_machine", nsCJKStringPSMDetectorConstructor,
+ NULL, NULL},
};
NS_IMPL_NSGETMODULE(nsUniversalCharDetModule, components)
--- a/extensions/universalchardet/tests/Makefile.in
+++ b/extensions/universalchardet/tests/Makefile.in
@@ -62,8 +62,22 @@ include $(topsrcdir)/config/config.mk
LIBS += \
$(LIBS_DIR) \
../src/base/$(LIB_PREFIX)universalchardet_s.$(LIB_SUFFIX) \
$(NSPR_LIBS) \
$(NULL)
include $(topsrcdir)/config/rules.mk
+ifdef MOZ_MOCHITEST
+relativesrcdir = extensions/universalchardet/tests
+
+_TEST_FILES = \
+ test_bug426271-euc-jp.html \
+ bug426271_text-euc-jp.html \
+ test_bug426271-utf-8.html \
+ bug426271_text-utf-8.html \
+ $(NULL)
+
+libs:: $(_TEST_FILES)
+ $(INSTALL) $(foreach f,$^,"$f") $(DEPTH)/_tests/testing/mochitest/tests/$(relativesrcdir)
+
+endif # MOZ_MOCHITEST
--- a/extensions/universalchardet/tests/UniversalChardetTest.cpp
+++ b/extensions/universalchardet/tests/UniversalChardetTest.cpp
@@ -54,17 +54,17 @@ void usage() {
" blocksize: 1 ~ %ld\n"
" Data are passed in from STDIN\n"
, MAXBSIZE);
}
class nsUniversalChardetTest : public nsUniversalDetector
{
public:
- nsUniversalChardetTest() { };
+ nsUniversalChardetTest() : nsUniversalDetector(NS_FILTER_ALL) { };
virtual ~nsUniversalChardetTest() { };
PRBool done() const { return mDone; }
private:
virtual void Report(const char* aCharset)
{
printf("RESULT CHARSET : %s\n", aCharset);
new file mode 100644
--- /dev/null
+++ b/extensions/universalchardet/tests/bug426271_text-euc-jp.html
@@ -0,0 +1,11 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html lang="ja">
+<head>
+<title>ÆüËܸ쥨¥ó¥³¡¼¥É¥Æ¥¹¥È</title>
+</head>
+<body>
+<span id="testtext">¤³¤ì¤ÏEUC-JP¤Ç¤¹ÀΡ¹¡¢</span>¤¢¤ë½ê¤Ë»Ò¶¡¤Î¤¤¤Ê¤¤Ï·É×ÉØ¤¬½»¤ó¤Ç¤¤¤¿¡£¤¢¤ëÆü¡¢¤ªÇ̤µ¤ó¤¬Àî¤ÇÀöÂõ¤ò¤·¤Æ¤¤¤ë¤È¡¢Â礤ÊÅí¤¬Î®¤ì¤ÆÍ褿¤Î¤Ç¡¢¤ªÌ줵¤ó¤È¿©¤Ù¤è¤¦¤È»ý¤Áµ¢¤Ã¤¿¡£Æó¿Í¤ÇÅí¤ò³ä¤ë¤ÈÃæ¤«¤éÃˤλҤ¬À¸¤Þ¤ì¤¿¤Î¤Ç¡¢¡ÖÅíÂÀϺ¡×¤È̾ÉÕ¤±¤ÆÂç»ö¤Ë°é¤Æ¤¿¡£
+
+À®Ä¹¤·¤¿ÅíÂÀϺ¤Ï¡¢µ´¥öÅç¤Îµ´¤¬¿Í¡¹¤ò¶ì¤·¤á¤Æ¤¤¤ë¤³¤È¤òÃΤꡢµ´Â༣¤ò·è°Õ¤¹¤ë¡£Î¾¿Æ¤«¤éµÐÃĻҤòñ´Ê̤ËÌ㤤¡¢Æ»Ãæ¤Ë¤½¤ì¤òʬ¤±Í¿¤¨¤Æ¥¤¥Ì¡¢¥µ¥ë¡¢¥¥¸¤ò²ÈÍè¤Ë½¾¤¨¤ë¡£µ´¥öÅç¤Çµ´¤ÈÀ襤¡¢¸«»ö¤Ë¾¡Íø¤ò¼ý¤á¡¢µ´¤¬Êý¡¹¤«¤éÃ¥¤Ã¤Æ¤¤¤Ã¤¿ºâÊõ¤ò»ý¤Áµ¢¤ê¡¢¤ªÌ줵¤ó¡¦¤ªÇ̤µ¤ó¤Î¸µ¤ËÊ֤ꡢ¹¬¤»¤ËÊë¤é¤·¤¿¤È¤¤¤¦¡£½Ðŵ: ¥Õ¥ê¡¼É´²Ê»öŵ¡Ø¥¦¥£¥¥Ú¥Ç¥£¥¢¡ÊWikipedia¡Ë¡Ù
+</body>
+</html>
new file mode 100644
--- /dev/null
+++ b/extensions/universalchardet/tests/bug426271_text-utf-8.html
@@ -0,0 +1,11 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html lang="ja">
+<head>
+<title>日本語エンコードテスト</title>
+</head>
+<body>
+<span id="testtext">ã“れã¯UTF-8ã§ã™æ˜”々ã€</span>ã‚る所ã«åä¾›ã®ã„ãªã„è€å¤«å©¦ãŒä½ã‚“ã§ã„ãŸã€‚ã‚ã‚‹æ—¥ã€ãŠå©†ã•ã‚“ãŒå·ã§æ´—濯をã—ã¦ã„ã‚‹ã¨ã€å¤§ããªæ¡ƒãŒæµã‚Œã¦æ¥ãŸã®ã§ã€ãŠçˆºã•ã‚“ã¨é£Ÿã¹ã‚ˆã†ã¨æŒã¡å¸°ã£ãŸã€‚äºŒäººã§æ¡ƒã‚’割るã¨ä¸ã‹ã‚‰ç”·ã®åãŒç”Ÿã¾ã‚ŒãŸã®ã§ã€ã€Œæ¡ƒå¤ªéƒŽã€ã¨å付ã‘ã¦å¤§äº‹ã«è‚²ã¦ãŸã€‚
+
+æˆé•·ã—ãŸæ¡ƒå¤ªéƒŽã¯ã€é¬¼ãƒ¶å³¶ã®é¬¼ãŒäººã€…を苦ã—ã‚ã¦ã„ã‚‹ã“ã¨ã‚’知りã€é¬¼é€€æ²»ã‚’決æ„ã™ã‚‹ã€‚両親ã‹ã‚‰é»å›£åを餞別ã«è²°ã„ã€é“ä¸ã«ãれを分ã‘与ãˆã¦ã‚¤ãƒŒã€ã‚µãƒ«ã€ã‚ジを家æ¥ã«å¾“ãˆã‚‹ã€‚鬼ヶ島ã§é¬¼ã¨æˆ¦ã„ã€è¦‹äº‹ã«å‹åˆ©ã‚’åŽã‚ã€é¬¼ãŒæ–¹ã€…ã‹ã‚‰å¥ªã£ã¦ã„ã£ãŸè²¡å®ã‚’æŒã¡å¸°ã‚Šã€ãŠçˆºã•ん・ãŠå©†ã•ã‚“ã®å…ƒã«è¿”りã€å¹¸ã›ã«æš®ã‚‰ã—ãŸã¨ã„ã†ã€‚出典: フリー百科事典『ウィã‚ペディア(Wikipedia)ã€
+</body>
+</html>
new file mode 100644
--- /dev/null
+++ b/extensions/universalchardet/tests/test_bug426271-euc-jp.html
@@ -0,0 +1,65 @@
+<!DOCTYPE HTML>
+<html>
+<!--
+https://bugzilla.mozilla.org/show_bug.cgi?id=426271
+-->
+<head>
+ <title>Test for Bug 426271</title>
+ <script type="text/javascript" src="/MochiKit/MochiKit.js"></script>
+ <script type="text/javascript" src="/tests/SimpleTest/SimpleTest.js"></script>
+ <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css" />
+</head>
+<body>
+<a target="_blank" href="https://bugzilla.mozilla.org/show_bug.cgi?id=426271">Mozilla Bug 426271</a>
+<p id="display"></p>
+<div id="content" style="display: none">
+</div>
+<iframe id="testframe"></iframe>
+<pre id="test">
+<script class="testbody" type="text/javascript">
+/** Test for Bug 426271 **/
+const expectedText = "\u3053\u308C\u306FEUC-JP\u3067\u3059\u6614\u3005\u3001";
+netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
+var prefService = Components.classes["@mozilla.org/preferences-service;1"]
+ .getService(Components.interfaces.nsIPrefBranch);
+var str = Components.classes["@mozilla.org/supports-string;1"]
+ .createInstance(Components.interfaces.nsISupportsString);
+var oldPref;
+
+try {
+ oldPref = prefService
+ .getComplexValue("intl.charset.detector",
+ Components.interfaces.nsIPrefLocalizedString).data;
+} catch (e) {
+ oldPref = "";
+}
+str.data = "ja_parallel_state_machine";
+prefService.setComplexValue("intl.charset.detector",
+ Components.interfaces.nsISupportsString, str);
+
+function afterLoad() {
+ var iframeDoc = $("testframe").contentDocument;
+
+ is(iframeDoc.getElementById("testtext").innerHTML, expectedText,
+ "decoded as EUC-JP");
+
+ netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
+ var prefService = Components.classes["@mozilla.org/preferences-service;1"]
+ .getService(Components.interfaces.nsIPrefBranch);
+ var str = Components.classes["@mozilla.org/supports-string;1"]
+ .createInstance(Components.interfaces.nsISupportsString);
+ str.data = oldPref;
+ prefService.setComplexValue("intl.charset.detector",
+ Components.interfaces.nsISupportsString, str);
+ SimpleTest.finish();
+}
+
+$("testframe").onload= afterLoad;
+$("testframe").src="bug426271_text-euc-jp.html";
+SimpleTest.waitForExplicitFinish();
+
+</script>
+</pre>
+</body>
+</html>
+
new file mode 100644
--- /dev/null
+++ b/extensions/universalchardet/tests/test_bug426271-utf-8.html
@@ -0,0 +1,65 @@
+<!DOCTYPE HTML>
+<html>
+<!--
+https://bugzilla.mozilla.org/show_bug.cgi?id=426271
+-->
+<head>
+ <title>Test for Bug 426271</title>
+ <script type="text/javascript" src="/MochiKit/MochiKit.js"></script>
+ <script type="text/javascript" src="/tests/SimpleTest/SimpleTest.js"></script>
+ <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css" />
+</head>
+<body>
+<a target="_blank" href="https://bugzilla.mozilla.org/show_bug.cgi?id=426271">Mozilla Bug 426271</a>
+<p id="display"></p>
+<div id="content" style="display: none">
+</div>
+<iframe id="testframe"></iframe>
+<pre id="test">
+<script class="testbody" type="text/javascript">
+/** Test for Bug 426271 **/
+const expectedText = "\u3053\u308C\u306FUTF-8\u3067\u3059\u6614\u3005\u3001";
+netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
+var prefService = Components.classes["@mozilla.org/preferences-service;1"]
+ .getService(Components.interfaces.nsIPrefBranch);
+var str = Components.classes["@mozilla.org/supports-string;1"]
+ .createInstance(Components.interfaces.nsISupportsString);
+var oldPref;
+
+try {
+ oldPref = prefService
+ .getComplexValue("intl.charset.detector",
+ Components.interfaces.nsIPrefLocalizedString).data;
+} catch (e) {
+ oldPref = "";
+}
+str.data = "ja_parallel_state_machine";
+prefService.setComplexValue("intl.charset.detector",
+ Components.interfaces.nsISupportsString, str);
+
+function afterLoad() {
+ var iframeDoc = $("testframe").contentDocument;
+
+ is(iframeDoc.getElementById("testtext").innerHTML, expectedText,
+ "decoded as UTF-8");
+
+ netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
+ var prefService = Components.classes["@mozilla.org/preferences-service;1"]
+ .getService(Components.interfaces.nsIPrefBranch);
+ var str = Components.classes["@mozilla.org/supports-string;1"]
+ .createInstance(Components.interfaces.nsISupportsString);
+ str.data = oldPref;
+ prefService.setComplexValue("intl.charset.detector",
+ Components.interfaces.nsISupportsString, str);
+ SimpleTest.finish();
+}
+
+$("testframe").onload= afterLoad;
+$("testframe").src="bug426271_text-utf-8.html";
+SimpleTest.waitForExplicitFinish();
+
+</script>
+</pre>
+</body>
+</html>
+
deleted file mode 100644
--- a/intl/chardet/src/Big5Statistics.h
+++ /dev/null
@@ -1,236 +0,0 @@
-/* -*- Mode: C; tab-width: 4; 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.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 ***** */
-{
- {
- 0.000000f, // FreqH[a1]
- 0.000000f, // FreqH[a2]
- 0.000000f, // FreqH[a3]
- 0.114427f, // FreqH[a4]
- 0.061058f, // FreqH[a5]
- 0.075598f, // FreqH[a6]
- 0.048386f, // FreqH[a7]
- 0.063966f, // FreqH[a8]
- 0.027094f, // FreqH[a9]
- 0.095787f, // FreqH[aa]
- 0.029525f, // FreqH[ab]
- 0.031331f, // FreqH[ac]
- 0.036915f, // FreqH[ad]
- 0.021805f, // FreqH[ae]
- 0.019349f, // FreqH[af]
- 0.037496f, // FreqH[b0]
- 0.018068f, // FreqH[b1]
- 0.012760f, // FreqH[b2]
- 0.030053f, // FreqH[b3]
- 0.017339f, // FreqH[b4]
- 0.016731f, // FreqH[b5]
- 0.019501f, // FreqH[b6]
- 0.011240f, // FreqH[b7]
- 0.032973f, // FreqH[b8]
- 0.016658f, // FreqH[b9]
- 0.015872f, // FreqH[ba]
- 0.021458f, // FreqH[bb]
- 0.012378f, // FreqH[bc]
- 0.017003f, // FreqH[bd]
- 0.020802f, // FreqH[be]
- 0.012454f, // FreqH[bf]
- 0.009239f, // FreqH[c0]
- 0.012829f, // FreqH[c1]
- 0.007922f, // FreqH[c2]
- 0.010079f, // FreqH[c3]
- 0.009815f, // FreqH[c4]
- 0.010104f, // FreqH[c5]
- 0.000000f, // FreqH[c6]
- 0.000000f, // FreqH[c7]
- 0.000000f, // FreqH[c8]
- 0.000053f, // FreqH[c9]
- 0.000035f, // FreqH[ca]
- 0.000105f, // FreqH[cb]
- 0.000031f, // FreqH[cc]
- 0.000088f, // FreqH[cd]
- 0.000027f, // FreqH[ce]
- 0.000027f, // FreqH[cf]
- 0.000026f, // FreqH[d0]
- 0.000035f, // FreqH[d1]
- 0.000024f, // FreqH[d2]
- 0.000034f, // FreqH[d3]
- 0.000375f, // FreqH[d4]
- 0.000025f, // FreqH[d5]
- 0.000028f, // FreqH[d6]
- 0.000020f, // FreqH[d7]
- 0.000024f, // FreqH[d8]
- 0.000028f, // FreqH[d9]
- 0.000031f, // FreqH[da]
- 0.000059f, // FreqH[db]
- 0.000040f, // FreqH[dc]
- 0.000030f, // FreqH[dd]
- 0.000079f, // FreqH[de]
- 0.000037f, // FreqH[df]
- 0.000040f, // FreqH[e0]
- 0.000023f, // FreqH[e1]
- 0.000030f, // FreqH[e2]
- 0.000027f, // FreqH[e3]
- 0.000064f, // FreqH[e4]
- 0.000020f, // FreqH[e5]
- 0.000027f, // FreqH[e6]
- 0.000025f, // FreqH[e7]
- 0.000074f, // FreqH[e8]
- 0.000019f, // FreqH[e9]
- 0.000023f, // FreqH[ea]
- 0.000021f, // FreqH[eb]
- 0.000018f, // FreqH[ec]
- 0.000017f, // FreqH[ed]
- 0.000035f, // FreqH[ee]
- 0.000021f, // FreqH[ef]
- 0.000019f, // FreqH[f0]
- 0.000025f, // FreqH[f1]
- 0.000017f, // FreqH[f2]
- 0.000037f, // FreqH[f3]
- 0.000018f, // FreqH[f4]
- 0.000018f, // FreqH[f5]
- 0.000019f, // FreqH[f6]
- 0.000022f, // FreqH[f7]
- 0.000033f, // FreqH[f8]
- 0.000032f, // FreqH[f9]
- 0.000000f, // FreqH[fa]
- 0.000000f, // FreqH[fb]
- 0.000000f, // FreqH[fc]
- 0.000000f, // FreqH[fd]
- 0.000000f // FreqH[fe]
- },
-0.020606f, // Lead Byte StdDev
-0.010638f, // Lead Byte Mean
-0.675261f, // Lead Byte Weight
- {
- 0.020256f, // FreqL[a1]
- 0.003293f, // FreqL[a2]
- 0.045811f, // FreqL[a3]
- 0.016650f, // FreqL[a4]
- 0.007066f, // FreqL[a5]
- 0.004146f, // FreqL[a6]
- 0.009229f, // FreqL[a7]
- 0.007333f, // FreqL[a8]
- 0.003296f, // FreqL[a9]
- 0.005239f, // FreqL[aa]
- 0.008282f, // FreqL[ab]
- 0.003791f, // FreqL[ac]
- 0.006116f, // FreqL[ad]
- 0.003536f, // FreqL[ae]
- 0.004024f, // FreqL[af]
- 0.016654f, // FreqL[b0]
- 0.009334f, // FreqL[b1]
- 0.005429f, // FreqL[b2]
- 0.033392f, // FreqL[b3]
- 0.006121f, // FreqL[b4]
- 0.008983f, // FreqL[b5]
- 0.002801f, // FreqL[b6]
- 0.004221f, // FreqL[b7]
- 0.010357f, // FreqL[b8]
- 0.014695f, // FreqL[b9]
- 0.077937f, // FreqL[ba]
- 0.006314f, // FreqL[bb]
- 0.004020f, // FreqL[bc]
- 0.007331f, // FreqL[bd]
- 0.007150f, // FreqL[be]
- 0.005341f, // FreqL[bf]
- 0.009195f, // FreqL[c0]
- 0.005350f, // FreqL[c1]
- 0.005698f, // FreqL[c2]
- 0.004472f, // FreqL[c3]
- 0.007242f, // FreqL[c4]
- 0.004039f, // FreqL[c5]
- 0.011154f, // FreqL[c6]
- 0.016184f, // FreqL[c7]
- 0.004741f, // FreqL[c8]
- 0.012814f, // FreqL[c9]
- 0.007679f, // FreqL[ca]
- 0.008045f, // FreqL[cb]
- 0.016631f, // FreqL[cc]
- 0.009451f, // FreqL[cd]
- 0.016487f, // FreqL[ce]
- 0.007287f, // FreqL[cf]
- 0.012688f, // FreqL[d0]
- 0.017421f, // FreqL[d1]
- 0.013205f, // FreqL[d2]
- 0.031480f, // FreqL[d3]
- 0.003404f, // FreqL[d4]
- 0.009149f, // FreqL[d5]
- 0.008921f, // FreqL[d6]
- 0.007514f, // FreqL[d7]
- 0.008683f, // FreqL[d8]
- 0.008203f, // FreqL[d9]
- 0.031403f, // FreqL[da]
- 0.011733f, // FreqL[db]
- 0.015617f, // FreqL[dc]
- 0.015306f, // FreqL[dd]
- 0.004004f, // FreqL[de]
- 0.010899f, // FreqL[df]
- 0.009961f, // FreqL[e0]
- 0.008388f, // FreqL[e1]
- 0.010920f, // FreqL[e2]
- 0.003925f, // FreqL[e3]
- 0.008585f, // FreqL[e4]
- 0.009108f, // FreqL[e5]
- 0.015546f, // FreqL[e6]
- 0.004659f, // FreqL[e7]
- 0.006934f, // FreqL[e8]
- 0.007023f, // FreqL[e9]
- 0.020252f, // FreqL[ea]
- 0.005387f, // FreqL[eb]
- 0.024704f, // FreqL[ec]
- 0.006963f, // FreqL[ed]
- 0.002625f, // FreqL[ee]
- 0.009512f, // FreqL[ef]
- 0.002971f, // FreqL[f0]
- 0.008233f, // FreqL[f1]
- 0.010000f, // FreqL[f2]
- 0.011973f, // FreqL[f3]
- 0.010553f, // FreqL[f4]
- 0.005945f, // FreqL[f5]
- 0.006349f, // FreqL[f6]
- 0.009401f, // FreqL[f7]
- 0.008577f, // FreqL[f8]
- 0.008186f, // FreqL[f9]
- 0.008159f, // FreqL[fa]
- 0.005033f, // FreqL[fb]
- 0.008714f, // FreqL[fc]
- 0.010614f, // FreqL[fd]
- 0.006554f // FreqL[fe]
- },
-0.009909f, // Trail Byte StdDev
-0.010638f, // Trail Byte Mean
-0.324739f // Trial Byte Weight
-};
deleted file mode 100644
--- a/intl/chardet/src/EUCJPStatistics.h
+++ /dev/null
@@ -1,236 +0,0 @@
-/* -*- Mode: C; tab-width: 4; 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.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 ***** */
-{
- {
- 0.364808f, // FreqH[a1]
- 0.000000f, // FreqH[a2]
- 0.000000f, // FreqH[a3]
- 0.145325f, // FreqH[a4]
- 0.304891f, // FreqH[a5]
- 0.000000f, // FreqH[a6]
- 0.000000f, // FreqH[a7]
- 0.000000f, // FreqH[a8]
- 0.000000f, // FreqH[a9]
- 0.000000f, // FreqH[aa]
- 0.000000f, // FreqH[ab]
- 0.000000f, // FreqH[ac]
- 0.000000f, // FreqH[ad]
- 0.000000f, // FreqH[ae]
- 0.000000f, // FreqH[af]
- 0.001835f, // FreqH[b0]
- 0.010771f, // FreqH[b1]
- 0.006462f, // FreqH[b2]
- 0.001157f, // FreqH[b3]
- 0.002114f, // FreqH[b4]
- 0.003231f, // FreqH[b5]
- 0.001356f, // FreqH[b6]
- 0.007420f, // FreqH[b7]
- 0.004189f, // FreqH[b8]
- 0.003231f, // FreqH[b9]
- 0.003032f, // FreqH[ba]
- 0.033190f, // FreqH[bb]
- 0.006303f, // FreqH[bc]
- 0.006064f, // FreqH[bd]
- 0.009973f, // FreqH[be]
- 0.002354f, // FreqH[bf]
- 0.003670f, // FreqH[c0]
- 0.009135f, // FreqH[c1]
- 0.001675f, // FreqH[c2]
- 0.002792f, // FreqH[c3]
- 0.002194f, // FreqH[c4]
- 0.014720f, // FreqH[c5]
- 0.011928f, // FreqH[c6]
- 0.000878f, // FreqH[c7]
- 0.013124f, // FreqH[c8]
- 0.001077f, // FreqH[c9]
- 0.009295f, // FreqH[ca]
- 0.003471f, // FreqH[cb]
- 0.002872f, // FreqH[cc]
- 0.002433f, // FreqH[cd]
- 0.000957f, // FreqH[ce]
- 0.001636f, // FreqH[cf]
- 0.000000f, // FreqH[d0]
- 0.000000f, // FreqH[d1]
- 0.000000f, // FreqH[d2]
- 0.000000f, // FreqH[d3]
- 0.000000f, // FreqH[d4]
- 0.000000f, // FreqH[d5]
- 0.000000f, // FreqH[d6]
- 0.000000f, // FreqH[d7]
- 0.000000f, // FreqH[d8]
- 0.000000f, // FreqH[d9]
- 0.000000f, // FreqH[da]
- 0.000000f, // FreqH[db]
- 0.000000f, // FreqH[dc]
- 0.000000f, // FreqH[dd]
- 0.000080f, // FreqH[de]
- 0.000279f, // FreqH[df]
- 0.000000f, // FreqH[e0]
- 0.000000f, // FreqH[e1]
- 0.000000f, // FreqH[e2]
- 0.000000f, // FreqH[e3]
- 0.000000f, // FreqH[e4]
- 0.000000f, // FreqH[e5]
- 0.000000f, // FreqH[e6]
- 0.000000f, // FreqH[e7]
- 0.000000f, // FreqH[e8]
- 0.000000f, // FreqH[e9]
- 0.000000f, // FreqH[ea]
- 0.000000f, // FreqH[eb]
- 0.000000f, // FreqH[ec]
- 0.000000f, // FreqH[ed]
- 0.000000f, // FreqH[ee]
- 0.000000f, // FreqH[ef]
- 0.000000f, // FreqH[f0]
- 0.000000f, // FreqH[f1]
- 0.000000f, // FreqH[f2]
- 0.000000f, // FreqH[f3]
- 0.000000f, // FreqH[f4]
- 0.000000f, // FreqH[f5]
- 0.000000f, // FreqH[f6]
- 0.000000f, // FreqH[f7]
- 0.000000f, // FreqH[f8]
- 0.000000f, // FreqH[f9]
- 0.000000f, // FreqH[fa]
- 0.000000f, // FreqH[fb]
- 0.000000f, // FreqH[fc]
- 0.000080f, // FreqH[fd]
- 0.000000f // FreqH[fe]
- },
-0.050407f, // Lead Byte StdDev
-0.010638f, // Lead Byte Mean
-0.640871f, // Lead Byte Weight
- {
- 0.002473f, // FreqL[a1]
- 0.039134f, // FreqL[a2]
- 0.152745f, // FreqL[a3]
- 0.009694f, // FreqL[a4]
- 0.000359f, // FreqL[a5]
- 0.022180f, // FreqL[a6]
- 0.000758f, // FreqL[a7]
- 0.004308f, // FreqL[a8]
- 0.000160f, // FreqL[a9]
- 0.002513f, // FreqL[aa]
- 0.003072f, // FreqL[ab]
- 0.001316f, // FreqL[ac]
- 0.003830f, // FreqL[ad]
- 0.001037f, // FreqL[ae]
- 0.003590f, // FreqL[af]
- 0.000957f, // FreqL[b0]
- 0.000160f, // FreqL[b1]
- 0.000239f, // FreqL[b2]
- 0.006462f, // FreqL[b3]
- 0.001596f, // FreqL[b4]
- 0.031554f, // FreqL[b5]
- 0.001316f, // FreqL[b6]
- 0.002194f, // FreqL[b7]
- 0.016555f, // FreqL[b8]
- 0.003271f, // FreqL[b9]
- 0.000678f, // FreqL[ba]
- 0.000598f, // FreqL[bb]
- 0.206438f, // FreqL[bc]
- 0.000718f, // FreqL[bd]
- 0.001077f, // FreqL[be]
- 0.003710f, // FreqL[bf]
- 0.001356f, // FreqL[c0]
- 0.001356f, // FreqL[c1]
- 0.000439f, // FreqL[c2]
- 0.004388f, // FreqL[c3]
- 0.005704f, // FreqL[c4]
- 0.000878f, // FreqL[c5]
- 0.010172f, // FreqL[c6]
- 0.007061f, // FreqL[c7]
- 0.014680f, // FreqL[c8]
- 0.000638f, // FreqL[c9]
- 0.025730f, // FreqL[ca]
- 0.002792f, // FreqL[cb]
- 0.000718f, // FreqL[cc]
- 0.001795f, // FreqL[cd]
- 0.091551f, // FreqL[ce]
- 0.000758f, // FreqL[cf]
- 0.003909f, // FreqL[d0]
- 0.000558f, // FreqL[d1]
- 0.031195f, // FreqL[d2]
- 0.007061f, // FreqL[d3]
- 0.001316f, // FreqL[d4]
- 0.022579f, // FreqL[d5]
- 0.006981f, // FreqL[d6]
- 0.007260f, // FreqL[d7]
- 0.001117f, // FreqL[d8]
- 0.000239f, // FreqL[d9]
- 0.012127f, // FreqL[da]
- 0.000878f, // FreqL[db]
- 0.003790f, // FreqL[dc]
- 0.001077f, // FreqL[dd]
- 0.000758f, // FreqL[de]
- 0.002114f, // FreqL[df]
- 0.002234f, // FreqL[e0]
- 0.000678f, // FreqL[e1]
- 0.002992f, // FreqL[e2]
- 0.003311f, // FreqL[e3]
- 0.023416f, // FreqL[e4]
- 0.001237f, // FreqL[e5]
- 0.002753f, // FreqL[e6]
- 0.005146f, // FreqL[e7]
- 0.002194f, // FreqL[e8]
- 0.007021f, // FreqL[e9]
- 0.008497f, // FreqL[ea]
- 0.013763f, // FreqL[eb]
- 0.011768f, // FreqL[ec]
- 0.006303f, // FreqL[ed]
- 0.001915f, // FreqL[ee]
- 0.000638f, // FreqL[ef]
- 0.008776f, // FreqL[f0]
- 0.000918f, // FreqL[f1]
- 0.003431f, // FreqL[f2]
- 0.057603f, // FreqL[f3]
- 0.000439f, // FreqL[f4]
- 0.000439f, // FreqL[f5]
- 0.000758f, // FreqL[f6]
- 0.002872f, // FreqL[f7]
- 0.001675f, // FreqL[f8]
- 0.011050f, // FreqL[f9]
- 0.000000f, // FreqL[fa]
- 0.000279f, // FreqL[fb]
- 0.012127f, // FreqL[fc]
- 0.000718f, // FreqL[fd]
- 0.007380f // FreqL[fe]
- },
-0.028247f, // Trail Byte StdDev
-0.010638f, // Trail Byte Mean
-0.359129f // Trial Byte Weight
-};
deleted file mode 100644
--- a/intl/chardet/src/EUCKRStatistics.h
+++ /dev/null
@@ -1,236 +0,0 @@
-/* -*- Mode: C; tab-width: 4; 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.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 ***** */
-{
- {
- 0.000000f, // FreqH[a1]
- 0.000000f, // FreqH[a2]
- 0.000000f, // FreqH[a3]
- 0.000000f, // FreqH[a4]
- 0.000000f, // FreqH[a5]
- 0.000000f, // FreqH[a6]
- 0.000000f, // FreqH[a7]
- 0.000412f, // FreqH[a8]
- 0.000000f, // FreqH[a9]
- 0.000000f, // FreqH[aa]
- 0.000000f, // FreqH[ab]
- 0.000000f, // FreqH[ac]
- 0.000000f, // FreqH[ad]
- 0.000000f, // FreqH[ae]
- 0.000000f, // FreqH[af]
- 0.057502f, // FreqH[b0]
- 0.033182f, // FreqH[b1]
- 0.002267f, // FreqH[b2]
- 0.016076f, // FreqH[b3]
- 0.014633f, // FreqH[b4]
- 0.032976f, // FreqH[b5]
- 0.004122f, // FreqH[b6]
- 0.011336f, // FreqH[b7]
- 0.058533f, // FreqH[b8]
- 0.024526f, // FreqH[b9]
- 0.025969f, // FreqH[ba]
- 0.054411f, // FreqH[bb]
- 0.019580f, // FreqH[bc]
- 0.063273f, // FreqH[bd]
- 0.113974f, // FreqH[be]
- 0.029885f, // FreqH[bf]
- 0.150041f, // FreqH[c0]
- 0.059151f, // FreqH[c1]
- 0.002679f, // FreqH[c2]
- 0.009893f, // FreqH[c3]
- 0.014839f, // FreqH[c4]
- 0.026381f, // FreqH[c5]
- 0.015045f, // FreqH[c6]
- 0.069456f, // FreqH[c7]
- 0.089860f, // FreqH[c8]
- 0.000000f, // FreqH[c9]
- 0.000000f, // FreqH[ca]
- 0.000000f, // FreqH[cb]
- 0.000000f, // FreqH[cc]
- 0.000000f, // FreqH[cd]
- 0.000000f, // FreqH[ce]
- 0.000000f, // FreqH[cf]
- 0.000000f, // FreqH[d0]
- 0.000000f, // FreqH[d1]
- 0.000000f, // FreqH[d2]
- 0.000000f, // FreqH[d3]
- 0.000000f, // FreqH[d4]
- 0.000000f, // FreqH[d5]
- 0.000000f, // FreqH[d6]
- 0.000000f, // FreqH[d7]
- 0.000000f, // FreqH[d8]
- 0.000000f, // FreqH[d9]
- 0.000000f, // FreqH[da]
- 0.000000f, // FreqH[db]
- 0.000000f, // FreqH[dc]
- 0.000000f, // FreqH[dd]
- 0.000000f, // FreqH[de]
- 0.000000f, // FreqH[df]
- 0.000000f, // FreqH[e0]
- 0.000000f, // FreqH[e1]
- 0.000000f, // FreqH[e2]
- 0.000000f, // FreqH[e3]
- 0.000000f, // FreqH[e4]
- 0.000000f, // FreqH[e5]
- 0.000000f, // FreqH[e6]
- 0.000000f, // FreqH[e7]
- 0.000000f, // FreqH[e8]
- 0.000000f, // FreqH[e9]
- 0.000000f, // FreqH[ea]
- 0.000000f, // FreqH[eb]
- 0.000000f, // FreqH[ec]
- 0.000000f, // FreqH[ed]
- 0.000000f, // FreqH[ee]
- 0.000000f, // FreqH[ef]
- 0.000000f, // FreqH[f0]
- 0.000000f, // FreqH[f1]
- 0.000000f, // FreqH[f2]
- 0.000000f, // FreqH[f3]
- 0.000000f, // FreqH[f4]
- 0.000000f, // FreqH[f5]
- 0.000000f, // FreqH[f6]
- 0.000000f, // FreqH[f7]
- 0.000000f, // FreqH[f8]
- 0.000000f, // FreqH[f9]
- 0.000000f, // FreqH[fa]
- 0.000000f, // FreqH[fb]
- 0.000000f, // FreqH[fc]
- 0.000000f, // FreqH[fd]
- 0.000000f // FreqH[fe]
- },
-0.025593f, // Lead Byte StdDev
-0.010638f, // Lead Byte Mean
-0.647437f, // Lead Byte Weight
- {
- 0.016694f, // FreqL[a1]
- 0.000000f, // FreqL[a2]
- 0.012778f, // FreqL[a3]
- 0.030091f, // FreqL[a4]
- 0.002679f, // FreqL[a5]
- 0.006595f, // FreqL[a6]
- 0.001855f, // FreqL[a7]
- 0.000824f, // FreqL[a8]
- 0.005977f, // FreqL[a9]
- 0.004740f, // FreqL[aa]
- 0.003092f, // FreqL[ab]
- 0.000824f, // FreqL[ac]
- 0.019580f, // FreqL[ad]
- 0.037304f, // FreqL[ae]
- 0.008244f, // FreqL[af]
- 0.014633f, // FreqL[b0]
- 0.001031f, // FreqL[b1]
- 0.000000f, // FreqL[b2]
- 0.003298f, // FreqL[b3]
- 0.002061f, // FreqL[b4]
- 0.006183f, // FreqL[b5]
- 0.005977f, // FreqL[b6]
- 0.000824f, // FreqL[b7]
- 0.021847f, // FreqL[b8]
- 0.014839f, // FreqL[b9]
- 0.052968f, // FreqL[ba]
- 0.017312f, // FreqL[bb]
- 0.007626f, // FreqL[bc]
- 0.000412f, // FreqL[bd]
- 0.000824f, // FreqL[be]
- 0.011129f, // FreqL[bf]
- 0.000000f, // FreqL[c0]
- 0.000412f, // FreqL[c1]
- 0.001649f, // FreqL[c2]
- 0.005977f, // FreqL[c3]
- 0.065746f, // FreqL[c4]
- 0.020198f, // FreqL[c5]
- 0.021434f, // FreqL[c6]
- 0.014633f, // FreqL[c7]
- 0.004122f, // FreqL[c8]
- 0.001649f, // FreqL[c9]
- 0.000824f, // FreqL[ca]
- 0.000824f, // FreqL[cb]
- 0.051937f, // FreqL[cc]
- 0.019580f, // FreqL[cd]
- 0.023289f, // FreqL[ce]
- 0.026381f, // FreqL[cf]
- 0.040396f, // FreqL[d0]
- 0.009068f, // FreqL[d1]
- 0.001443f, // FreqL[d2]
- 0.003710f, // FreqL[d3]
- 0.007420f, // FreqL[d4]
- 0.001443f, // FreqL[d5]
- 0.013190f, // FreqL[d6]
- 0.002885f, // FreqL[d7]
- 0.000412f, // FreqL[d8]
- 0.003298f, // FreqL[d9]
- 0.025969f, // FreqL[da]
- 0.000412f, // FreqL[db]
- 0.000412f, // FreqL[dc]
- 0.006183f, // FreqL[dd]
- 0.003298f, // FreqL[de]
- 0.066983f, // FreqL[df]
- 0.002679f, // FreqL[e0]
- 0.002267f, // FreqL[e1]
- 0.011129f, // FreqL[e2]
- 0.000412f, // FreqL[e3]
- 0.010099f, // FreqL[e4]
- 0.015251f, // FreqL[e5]
- 0.007626f, // FreqL[e6]
- 0.043899f, // FreqL[e7]
- 0.003710f, // FreqL[e8]
- 0.002679f, // FreqL[e9]
- 0.001443f, // FreqL[ea]
- 0.010923f, // FreqL[eb]
- 0.002885f, // FreqL[ec]
- 0.009068f, // FreqL[ed]
- 0.019992f, // FreqL[ee]
- 0.000412f, // FreqL[ef]
- 0.008450f, // FreqL[f0]
- 0.005153f, // FreqL[f1]
- 0.000000f, // FreqL[f2]
- 0.010099f, // FreqL[f3]
- 0.000000f, // FreqL[f4]
- 0.001649f, // FreqL[f5]
- 0.012160f, // FreqL[f6]
- 0.011542f, // FreqL[f7]
- 0.006595f, // FreqL[f8]
- 0.001855f, // FreqL[f9]
- 0.010923f, // FreqL[fa]
- 0.000412f, // FreqL[fb]
- 0.023702f, // FreqL[fc]
- 0.003710f, // FreqL[fd]
- 0.001855f // FreqL[fe]
- },
-0.013937f, // Trail Byte StdDev
-0.010638f, // Trail Byte Mean
-0.352563f // Trial Byte Weight
-};
deleted file mode 100644
--- a/intl/chardet/src/EUCTWStatistics.h
+++ /dev/null
@@ -1,236 +0,0 @@
-/* -*- Mode: C; tab-width: 4; 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.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 ***** */
-{
- {
- 0.000000f, // FreqH[a1]
- 0.000000f, // FreqH[a2]
- 0.000000f, // FreqH[a3]
- 0.000000f, // FreqH[a4]
- 0.000000f, // FreqH[a5]
- 0.000000f, // FreqH[a6]
- 0.000000f, // FreqH[a7]
- 0.000000f, // FreqH[a8]
- 0.000000f, // FreqH[a9]
- 0.000000f, // FreqH[aa]
- 0.000000f, // FreqH[ab]
- 0.000000f, // FreqH[ac]
- 0.000000f, // FreqH[ad]
- 0.000000f, // FreqH[ae]
- 0.000000f, // FreqH[af]
- 0.000000f, // FreqH[b0]
- 0.000000f, // FreqH[b1]
- 0.000000f, // FreqH[b2]
- 0.000000f, // FreqH[b3]
- 0.000000f, // FreqH[b4]
- 0.000000f, // FreqH[b5]
- 0.000000f, // FreqH[b6]
- 0.000000f, // FreqH[b7]
- 0.000000f, // FreqH[b8]
- 0.000000f, // FreqH[b9]
- 0.000000f, // FreqH[ba]
- 0.000000f, // FreqH[bb]
- 0.000000f, // FreqH[bc]
- 0.000000f, // FreqH[bd]
- 0.000000f, // FreqH[be]
- 0.000000f, // FreqH[bf]
- 0.000000f, // FreqH[c0]
- 0.000000f, // FreqH[c1]
- 0.000000f, // FreqH[c2]
- 0.000000f, // FreqH[c3]
- 0.119286f, // FreqH[c4]
- 0.052233f, // FreqH[c5]
- 0.044126f, // FreqH[c6]
- 0.052494f, // FreqH[c7]
- 0.045906f, // FreqH[c8]
- 0.019038f, // FreqH[c9]
- 0.032465f, // FreqH[ca]
- 0.026252f, // FreqH[cb]
- 0.025502f, // FreqH[cc]
- 0.015963f, // FreqH[cd]
- 0.052493f, // FreqH[ce]
- 0.019256f, // FreqH[cf]
- 0.015137f, // FreqH[d0]
- 0.031782f, // FreqH[d1]
- 0.017370f, // FreqH[d2]
- 0.018494f, // FreqH[d3]
- 0.015575f, // FreqH[d4]
- 0.016621f, // FreqH[d5]
- 0.007444f, // FreqH[d6]
- 0.011642f, // FreqH[d7]
- 0.013916f, // FreqH[d8]
- 0.019159f, // FreqH[d9]
- 0.016445f, // FreqH[da]
- 0.007851f, // FreqH[db]
- 0.011079f, // FreqH[dc]
- 0.022842f, // FreqH[dd]
- 0.015513f, // FreqH[de]
- 0.010033f, // FreqH[df]
- 0.009950f, // FreqH[e0]
- 0.010347f, // FreqH[e1]
- 0.013103f, // FreqH[e2]
- 0.015371f, // FreqH[e3]
- 0.012502f, // FreqH[e4]
- 0.007436f, // FreqH[e5]
- 0.018253f, // FreqH[e6]
- 0.014134f, // FreqH[e7]
- 0.008907f, // FreqH[e8]
- 0.005411f, // FreqH[e9]
- 0.009570f, // FreqH[ea]
- 0.013598f, // FreqH[eb]
- 0.006092f, // FreqH[ec]
- 0.007409f, // FreqH[ed]
- 0.008432f, // FreqH[ee]
- 0.005816f, // FreqH[ef]
- 0.009349f, // FreqH[f0]
- 0.005472f, // FreqH[f1]
- 0.007170f, // FreqH[f2]
- 0.007420f, // FreqH[f3]
- 0.003681f, // FreqH[f4]
- 0.007523f, // FreqH[f5]
- 0.004610f, // FreqH[f6]
- 0.006154f, // FreqH[f7]
- 0.003348f, // FreqH[f8]
- 0.005074f, // FreqH[f9]
- 0.005922f, // FreqH[fa]
- 0.005254f, // FreqH[fb]
- 0.004682f, // FreqH[fc]
- 0.002093f, // FreqH[fd]
- 0.000000f // FreqH[fe]
- },
-0.016681f, // Lead Byte StdDev
-0.010638f, // Lead Byte Mean
-0.715599f, // Lead Byte Weight
- {
- 0.028933f, // FreqL[a1]
- 0.011371f, // FreqL[a2]
- 0.011053f, // FreqL[a3]
- 0.007232f, // FreqL[a4]
- 0.010192f, // FreqL[a5]
- 0.004093f, // FreqL[a6]
- 0.015043f, // FreqL[a7]
- 0.011752f, // FreqL[a8]
- 0.022387f, // FreqL[a9]
- 0.008410f, // FreqL[aa]
- 0.012448f, // FreqL[ab]
- 0.007473f, // FreqL[ac]
- 0.003594f, // FreqL[ad]
- 0.007139f, // FreqL[ae]
- 0.018912f, // FreqL[af]
- 0.006083f, // FreqL[b0]
- 0.003302f, // FreqL[b1]
- 0.010215f, // FreqL[b2]
- 0.008791f, // FreqL[b3]
- 0.024236f, // FreqL[b4]
- 0.014107f, // FreqL[b5]
- 0.014108f, // FreqL[b6]
- 0.010303f, // FreqL[b7]
- 0.009728f, // FreqL[b8]
- 0.007877f, // FreqL[b9]
- 0.009719f, // FreqL[ba]
- 0.007952f, // FreqL[bb]
- 0.021028f, // FreqL[bc]
- 0.005764f, // FreqL[bd]
- 0.009341f, // FreqL[be]
- 0.006591f, // FreqL[bf]
- 0.012517f, // FreqL[c0]
- 0.005921f, // FreqL[c1]
- 0.008982f, // FreqL[c2]
- 0.008771f, // FreqL[c3]
- 0.012802f, // FreqL[c4]
- 0.005926f, // FreqL[c5]
- 0.008342f, // FreqL[c6]
- 0.003086f, // FreqL[c7]
- 0.006843f, // FreqL[c8]
- 0.007576f, // FreqL[c9]
- 0.004734f, // FreqL[ca]
- 0.016404f, // FreqL[cb]
- 0.008803f, // FreqL[cc]
- 0.008071f, // FreqL[cd]
- 0.005349f, // FreqL[ce]
- 0.008566f, // FreqL[cf]
- 0.010840f, // FreqL[d0]
- 0.015401f, // FreqL[d1]
- 0.031904f, // FreqL[d2]
- 0.008670f, // FreqL[d3]
- 0.011479f, // FreqL[d4]
- 0.010936f, // FreqL[d5]
- 0.007617f, // FreqL[d6]
- 0.008995f, // FreqL[d7]
- 0.008114f, // FreqL[d8]
- 0.008658f, // FreqL[d9]
- 0.005934f, // FreqL[da]
- 0.010452f, // FreqL[db]
- 0.009142f, // FreqL[dc]
- 0.004519f, // FreqL[dd]
- 0.008339f, // FreqL[de]
- 0.007476f, // FreqL[df]
- 0.007027f, // FreqL[e0]
- 0.006025f, // FreqL[e1]
- 0.021804f, // FreqL[e2]
- 0.024248f, // FreqL[e3]
- 0.015895f, // FreqL[e4]
- 0.003768f, // FreqL[e5]
- 0.010171f, // FreqL[e6]
- 0.010007f, // FreqL[e7]
- 0.010178f, // FreqL[e8]
- 0.008316f, // FreqL[e9]
- 0.006832f, // FreqL[ea]
- 0.006364f, // FreqL[eb]
- 0.009141f, // FreqL[ec]
- 0.009148f, // FreqL[ed]
- 0.012081f, // FreqL[ee]
- 0.011914f, // FreqL[ef]
- 0.004464f, // FreqL[f0]
- 0.014257f, // FreqL[f1]
- 0.006907f, // FreqL[f2]
- 0.011292f, // FreqL[f3]
- 0.018622f, // FreqL[f4]
- 0.008149f, // FreqL[f5]
- 0.004636f, // FreqL[f6]
- 0.006612f, // FreqL[f7]
- 0.013478f, // FreqL[f8]
- 0.012614f, // FreqL[f9]
- 0.005186f, // FreqL[fa]
- 0.048285f, // FreqL[fb]
- 0.006816f, // FreqL[fc]
- 0.006743f, // FreqL[fd]
- 0.008671f // FreqL[fe]
- },
-0.006630f, // Trail Byte StdDev
-0.010638f, // Trail Byte Mean
-0.284401f // Trial Byte Weight
-};
deleted file mode 100644
--- a/intl/chardet/src/GB2312Statistics.h
+++ /dev/null
@@ -1,236 +0,0 @@
-/* -*- Mode: C; tab-width: 4; 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.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 ***** */
-{
- {
- 0.011628f, // FreqH[a1]
- 0.000000f, // FreqH[a2]
- 0.000000f, // FreqH[a3]
- 0.000000f, // FreqH[a4]
- 0.000000f, // FreqH[a5]
- 0.000000f, // FreqH[a6]
- 0.000000f, // FreqH[a7]
- 0.000000f, // FreqH[a8]
- 0.000000f, // FreqH[a9]
- 0.000000f, // FreqH[aa]
- 0.000000f, // FreqH[ab]
- 0.000000f, // FreqH[ac]
- 0.000000f, // FreqH[ad]
- 0.000000f, // FreqH[ae]
- 0.000000f, // FreqH[af]
- 0.011628f, // FreqH[b0]
- 0.012403f, // FreqH[b1]
- 0.009302f, // FreqH[b2]
- 0.003876f, // FreqH[b3]
- 0.017829f, // FreqH[b4]
- 0.037209f, // FreqH[b5]
- 0.008527f, // FreqH[b6]
- 0.010078f, // FreqH[b7]
- 0.019380f, // FreqH[b8]
- 0.054264f, // FreqH[b9]
- 0.010078f, // FreqH[ba]
- 0.041085f, // FreqH[bb]
- 0.020930f, // FreqH[bc]
- 0.018605f, // FreqH[bd]
- 0.010078f, // FreqH[be]
- 0.013178f, // FreqH[bf]
- 0.016279f, // FreqH[c0]
- 0.006202f, // FreqH[c1]
- 0.009302f, // FreqH[c2]
- 0.017054f, // FreqH[c3]
- 0.011628f, // FreqH[c4]
- 0.008527f, // FreqH[c5]
- 0.004651f, // FreqH[c6]
- 0.006202f, // FreqH[c7]
- 0.017829f, // FreqH[c8]
- 0.024806f, // FreqH[c9]
- 0.020155f, // FreqH[ca]
- 0.013953f, // FreqH[cb]
- 0.032558f, // FreqH[cc]
- 0.035659f, // FreqH[cd]
- 0.068217f, // FreqH[ce]
- 0.010853f, // FreqH[cf]
- 0.036434f, // FreqH[d0]
- 0.117054f, // FreqH[d1]
- 0.027907f, // FreqH[d2]
- 0.100775f, // FreqH[d3]
- 0.010078f, // FreqH[d4]
- 0.017829f, // FreqH[d5]
- 0.062016f, // FreqH[d6]
- 0.012403f, // FreqH[d7]
- 0.000000f, // FreqH[d8]
- 0.000000f, // FreqH[d9]
- 0.000000f, // FreqH[da]
- 0.000000f, // FreqH[db]
- 0.000000f, // FreqH[dc]
- 0.000000f, // FreqH[dd]
- 0.000000f, // FreqH[de]
- 0.000000f, // FreqH[df]
- 0.000000f, // FreqH[e0]
- 0.000000f, // FreqH[e1]
- 0.000000f, // FreqH[e2]
- 0.000000f, // FreqH[e3]
- 0.000000f, // FreqH[e4]
- 0.000000f, // FreqH[e5]
- 0.000000f, // FreqH[e6]
- 0.000000f, // FreqH[e7]
- 0.000000f, // FreqH[e8]
- 0.000000f, // FreqH[e9]
- 0.001550f, // FreqH[ea]
- 0.000000f, // FreqH[eb]
- 0.000000f, // FreqH[ec]
- 0.000000f, // FreqH[ed]
- 0.000000f, // FreqH[ee]
- 0.000000f, // FreqH[ef]
- 0.000000f, // FreqH[f0]
- 0.000000f, // FreqH[f1]
- 0.000000f, // FreqH[f2]
- 0.000000f, // FreqH[f3]
- 0.000000f, // FreqH[f4]
- 0.000000f, // FreqH[f5]
- 0.000000f, // FreqH[f6]
- 0.000000f, // FreqH[f7]
- 0.000000f, // FreqH[f8]
- 0.000000f, // FreqH[f9]
- 0.000000f, // FreqH[fa]
- 0.000000f, // FreqH[fb]
- 0.000000f, // FreqH[fc]
- 0.000000f, // FreqH[fd]
- 0.000000f // FreqH[fe]
- },
-0.020081f, // Lead Byte StdDev
-0.010638f, // Lead Byte Mean
-0.586533f, // Lead Byte Weight
- {
- 0.006202f, // FreqL[a1]
- 0.031008f, // FreqL[a2]
- 0.005426f, // FreqL[a3]
- 0.003101f, // FreqL[a4]
- 0.001550f, // FreqL[a5]
- 0.003101f, // FreqL[a6]
- 0.082171f, // FreqL[a7]
- 0.014729f, // FreqL[a8]
- 0.006977f, // FreqL[a9]
- 0.001550f, // FreqL[aa]
- 0.013953f, // FreqL[ab]
- 0.000000f, // FreqL[ac]
- 0.013953f, // FreqL[ad]
- 0.010078f, // FreqL[ae]
- 0.008527f, // FreqL[af]
- 0.006977f, // FreqL[b0]
- 0.004651f, // FreqL[b1]
- 0.003101f, // FreqL[b2]
- 0.003101f, // FreqL[b3]
- 0.003101f, // FreqL[b4]
- 0.008527f, // FreqL[b5]
- 0.003101f, // FreqL[b6]
- 0.005426f, // FreqL[b7]
- 0.005426f, // FreqL[b8]
- 0.005426f, // FreqL[b9]
- 0.003101f, // FreqL[ba]
- 0.001550f, // FreqL[bb]
- 0.006202f, // FreqL[bc]
- 0.014729f, // FreqL[bd]
- 0.010853f, // FreqL[be]
- 0.000000f, // FreqL[bf]
- 0.011628f, // FreqL[c0]
- 0.000000f, // FreqL[c1]
- 0.031783f, // FreqL[c2]
- 0.013953f, // FreqL[c3]
- 0.030233f, // FreqL[c4]
- 0.039535f, // FreqL[c5]
- 0.008527f, // FreqL[c6]
- 0.015504f, // FreqL[c7]
- 0.000000f, // FreqL[c8]
- 0.003101f, // FreqL[c9]
- 0.008527f, // FreqL[ca]
- 0.016279f, // FreqL[cb]
- 0.005426f, // FreqL[cc]
- 0.001550f, // FreqL[cd]
- 0.013953f, // FreqL[ce]
- 0.013953f, // FreqL[cf]
- 0.044961f, // FreqL[d0]
- 0.003101f, // FreqL[d1]
- 0.004651f, // FreqL[d2]
- 0.006977f, // FreqL[d3]
- 0.001550f, // FreqL[d4]
- 0.005426f, // FreqL[d5]
- 0.012403f, // FreqL[d6]
- 0.001550f, // FreqL[d7]
- 0.015504f, // FreqL[d8]
- 0.000000f, // FreqL[d9]
- 0.006202f, // FreqL[da]
- 0.001550f, // FreqL[db]
- 0.000000f, // FreqL[dc]
- 0.007752f, // FreqL[dd]
- 0.006977f, // FreqL[de]
- 0.001550f, // FreqL[df]
- 0.009302f, // FreqL[e0]
- 0.011628f, // FreqL[e1]
- 0.004651f, // FreqL[e2]
- 0.010853f, // FreqL[e3]
- 0.012403f, // FreqL[e4]
- 0.017829f, // FreqL[e5]
- 0.005426f, // FreqL[e6]
- 0.024806f, // FreqL[e7]
- 0.000000f, // FreqL[e8]
- 0.006202f, // FreqL[e9]
- 0.000000f, // FreqL[ea]
- 0.082171f, // FreqL[eb]
- 0.015504f, // FreqL[ec]
- 0.004651f, // FreqL[ed]
- 0.000000f, // FreqL[ee]
- 0.006977f, // FreqL[ef]
- 0.004651f, // FreqL[f0]
- 0.000000f, // FreqL[f1]
- 0.008527f, // FreqL[f2]
- 0.012403f, // FreqL[f3]
- 0.004651f, // FreqL[f4]
- 0.003876f, // FreqL[f5]
- 0.003101f, // FreqL[f6]
- 0.022481f, // FreqL[f7]
- 0.024031f, // FreqL[f8]
- 0.001550f, // FreqL[f9]
- 0.047287f, // FreqL[fa]
- 0.009302f, // FreqL[fb]
- 0.001550f, // FreqL[fc]
- 0.005426f, // FreqL[fd]
- 0.017054f // FreqL[fe]
- },
-0.014156f, // Trail Byte StdDev
-0.010638f, // Trail Byte Mean
-0.413467f // Trial Byte Weight
-};
--- a/intl/chardet/src/Makefile.in
+++ b/intl/chardet/src/Makefile.in
@@ -64,17 +64,16 @@ REQUIRES = xpcom \
$(NULL)
CPPSRCS = \
nsObserverBase.cpp \
nsXMLEncodingObserver.cpp \
nsMetaCharsetObserver.cpp \
nsDetectionAdaptor.cpp \
nsDebugDetector.cpp \
- nsPSMDetectors.cpp \
nsCyrillicDetector.cpp \
nsDocumentCharsetInfo.cpp \
nsChardetModule.cpp \
$(NULL)
EXTRA_DSO_LDOPTS = \
$(MOZ_UNICHARUTIL_LIBS) \
$(MOZ_COMPONENT_LIBS) \
deleted file mode 100644
--- a/intl/chardet/src/nsBIG5Verifier.h
+++ /dev/null
@@ -1,105 +0,0 @@
-/* -*- Mode: C; tab-width: 4; 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.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 ***** */
-/*
- * DO NOT EDIT THIS DOCUMENT MANUALLY !!!
- * THIS FILE IS AUTOMATICALLY GENERATED BY THE TOOLS UNDER
- * mozilla/intl/chardet/tools/
- * Please contact ftang@netscape.com or mozilla-i18n@mozilla.org
- * if you have any question. Thanks
- */
-#include "nsVerifier.h"
-static const PRUint32 BIG5_cls [ 256 / 8 ] = {
-PCK4BITS(1,1,1,1,1,1,1,1), // 00 - 07
-PCK4BITS(1,1,1,1,1,1,0,0), // 08 - 0f
-PCK4BITS(1,1,1,1,1,1,1,1), // 10 - 17
-PCK4BITS(1,1,1,0,1,1,1,1), // 18 - 1f
-PCK4BITS(1,1,1,1,1,1,1,1), // 20 - 27
-PCK4BITS(1,1,1,1,1,1,1,1), // 28 - 2f
-PCK4BITS(1,1,1,1,1,1,1,1), // 30 - 37
-PCK4BITS(1,1,1,1,1,1,1,1), // 38 - 3f
-PCK4BITS(2,2,2,2,2,2,2,2), // 40 - 47
-PCK4BITS(2,2,2,2,2,2,2,2), // 48 - 4f
-PCK4BITS(2,2,2,2,2,2,2,2), // 50 - 57
-PCK4BITS(2,2,2,2,2,2,2,2), // 58 - 5f
-PCK4BITS(2,2,2,2,2,2,2,2), // 60 - 67
-PCK4BITS(2,2,2,2,2,2,2,2), // 68 - 6f
-PCK4BITS(2,2,2,2,2,2,2,2), // 70 - 77
-PCK4BITS(2,2,2,2,2,2,2,1), // 78 - 7f
-PCK4BITS(4,4,4,4,4,4,4,4), // 80 - 87
-PCK4BITS(4,4,4,4,4,4,4,4), // 88 - 8f
-PCK4BITS(4,4,4,4,4,4,4,4), // 90 - 97
-PCK4BITS(4,4,4,4,4,4,4,4), // 98 - 9f
-PCK4BITS(4,3,3,3,3,3,3,3), // a0 - a7
-PCK4BITS(3,3,3,3,3,3,3,3), // a8 - af
-PCK4BITS(3,3,3,3,3,3,3,3), // b0 - b7
-PCK4BITS(3,3,3,3,3,3,3,3), // b8 - bf
-PCK4BITS(3,3,3,3,3,3,3,3), // c0 - c7
-PCK4BITS(3,3,3,3,3,3,3,3), // c8 - cf
-PCK4BITS(3,3,3,3,3,3,3,3), // d0 - d7
-PCK4BITS(3,3,3,3,3,3,3,3), // d8 - df
-PCK4BITS(3,3,3,3,3,3,3,3), // e0 - e7
-PCK4BITS(3,3,3,3,3,3,3,3), // e8 - ef
-PCK4BITS(3,3,3,3,3,3,3,3), // f0 - f7
-PCK4BITS(3,3,3,3,3,3,3,0) // f8 - ff
-};
-
-
-static const PRUint32 BIG5_st [ 3] = {
-PCK4BITS(eError,eStart,eStart, 3,eError,eError,eError,eError),//00-07
-PCK4BITS(eError,eError,eItsMe,eItsMe,eItsMe,eItsMe,eItsMe,eError),//08-0f
-PCK4BITS(eError,eStart,eStart,eStart,eStart,eStart,eStart,eStart) //10-17
-};
-
-
-static nsVerifier nsBIG5Verifier = {
- "Big5",
- {
- eIdxSft4bits,
- eSftMsk4bits,
- eBitSft4bits,
- eUnitMsk4bits,
- BIG5_cls
- },
- 5,
- {
- eIdxSft4bits,
- eSftMsk4bits,
- eBitSft4bits,
- eUnitMsk4bits,
- BIG5_st
- }
-};
deleted file mode 100644
--- a/intl/chardet/src/nsCP1252Verifier.h
+++ /dev/null
@@ -1,105 +0,0 @@
-/* -*- Mode: C; tab-width: 4; 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.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 ***** */
-/*
- * DO NOT EDIT THIS DOCUMENT MANUALLY !!!
- * THIS FILE IS AUTOMATICALLY GENERATED BY THE TOOLS UNDER
- * mozilla/intl/chardet/tools/
- * Please contact ftang@netscape.com or mozilla-i18n@mozilla.org
- * if you have any question. Thanks
- */
-#include "nsVerifier.h"
-static const PRUint32 CP1252_cls [ 256 / 8 ] = {
-PCK4BITS(2,2,2,2,2,2,2,2), // 00 - 07
-PCK4BITS(2,2,2,2,2,2,0,0), // 08 - 0f
-PCK4BITS(2,2,2,2,2,2,2,2), // 10 - 17
-PCK4BITS(2,2,2,0,2,2,2,2), // 18 - 1f
-PCK4BITS(2,2,2,2,2,2,2,2), // 20 - 27
-PCK4BITS(2,2,2,2,2,2,2,2), // 28 - 2f
-PCK4BITS(2,2,2,2,2,2,2,2), // 30 - 37
-PCK4BITS(2,2,2,2,2,2,2,2), // 38 - 3f
-PCK4BITS(2,2,2,2,2,2,2,2), // 40 - 47
-PCK4BITS(2,2,2,2,2,2,2,2), // 48 - 4f
-PCK4BITS(2,2,2,2,2,2,2,2), // 50 - 57
-PCK4BITS(2,2,2,2,2,2,2,2), // 58 - 5f
-PCK4BITS(2,2,2,2,2,2,2,2), // 60 - 67
-PCK4BITS(2,2,2,2,2,2,2,2), // 68 - 6f
-PCK4BITS(2,2,2,2,2,2,2,2), // 70 - 77
-PCK4BITS(2,2,2,2,2,2,2,2), // 78 - 7f
-PCK4BITS(2,0,2,2,2,2,2,2), // 80 - 87
-PCK4BITS(2,2,1,2,1,0,1,0), // 88 - 8f
-PCK4BITS(0,2,2,2,2,2,2,2), // 90 - 97
-PCK4BITS(2,2,1,2,1,0,1,1), // 98 - 9f
-PCK4BITS(2,2,2,2,2,2,2,2), // a0 - a7
-PCK4BITS(2,2,2,2,2,2,2,2), // a8 - af
-PCK4BITS(2,2,2,2,2,2,2,2), // b0 - b7
-PCK4BITS(2,2,2,2,2,2,2,2), // b8 - bf
-PCK4BITS(1,1,1,1,1,1,1,1), // c0 - c7
-PCK4BITS(1,1,1,1,1,1,1,1), // c8 - cf
-PCK4BITS(1,1,1,1,1,1,1,2), // d0 - d7
-PCK4BITS(1,1,1,1,1,1,1,1), // d8 - df
-PCK4BITS(1,1,1,1,1,1,1,1), // e0 - e7
-PCK4BITS(1,1,1,1,1,1,1,1), // e8 - ef
-PCK4BITS(1,1,1,1,1,1,1,2), // f0 - f7
-PCK4BITS(1,1,1,1,1,1,1,1) // f8 - ff
-};
-
-
-static const PRUint32 CP1252_st [ 3] = {
-PCK4BITS(eError, 3,eStart,eError,eError,eError,eItsMe,eItsMe),//00-07
-PCK4BITS(eItsMe,eError, 4,eStart,eError, 5, 4,eError),//08-0f
-PCK4BITS(eError, 4,eStart,eStart,eStart,eStart,eStart,eStart) //10-17
-};
-
-
-static nsVerifier nsCP1252Verifier = {
- "windows-1252",
- {
- eIdxSft4bits,
- eSftMsk4bits,
- eBitSft4bits,
- eUnitMsk4bits,
- CP1252_cls
- },
- 3,
- {
- eIdxSft4bits,
- eSftMsk4bits,
- eBitSft4bits,
- eUnitMsk4bits,
- CP1252_st
- }
-};
--- a/intl/chardet/src/nsCharDetConstructors.h
+++ b/intl/chardet/src/nsCharDetConstructors.h
@@ -51,38 +51,25 @@
#include "nsICharsetAlias.h"
#include "nsMetaCharsetObserver.h"
#include "nsDocumentCharsetInfo.h"
#include "nsXMLEncodingObserver.h"
#include "nsICharsetDetectionAdaptor.h"
#include "nsICharsetDetectionObserver.h"
#include "nsDetectionAdaptor.h"
#include "nsIStringCharsetDetector.h"
-#include "nsPSMDetectors.h"
#include "nsCyrillicDetector.h"
#include "nsDocumentCharsetInfoCID.h"
#include "nsXMLEncodingCID.h"
#include "nsCharsetDetectionAdaptorCID.h"
NS_GENERIC_FACTORY_CONSTRUCTOR(nsMetaCharsetObserver)
NS_GENERIC_FACTORY_CONSTRUCTOR(nsDocumentCharsetInfo)
NS_GENERIC_FACTORY_CONSTRUCTOR(nsXMLEncodingObserver)
NS_GENERIC_FACTORY_CONSTRUCTOR(nsDetectionAdaptor)
-NS_GENERIC_FACTORY_CONSTRUCTOR(nsJAPSMDetector)
-NS_GENERIC_FACTORY_CONSTRUCTOR(nsJAStringPSMDetector)
-NS_GENERIC_FACTORY_CONSTRUCTOR(nsKOPSMDetector)
-NS_GENERIC_FACTORY_CONSTRUCTOR(nsKOStringPSMDetector)
-NS_GENERIC_FACTORY_CONSTRUCTOR(nsZHTWPSMDetector)
-NS_GENERIC_FACTORY_CONSTRUCTOR(nsZHTWStringPSMDetector)
-NS_GENERIC_FACTORY_CONSTRUCTOR(nsZHCNPSMDetector)
-NS_GENERIC_FACTORY_CONSTRUCTOR(nsZHCNStringPSMDetector)
-NS_GENERIC_FACTORY_CONSTRUCTOR(nsZHPSMDetector)
-NS_GENERIC_FACTORY_CONSTRUCTOR(nsZHStringPSMDetector)
-NS_GENERIC_FACTORY_CONSTRUCTOR(nsCJKPSMDetector)
-NS_GENERIC_FACTORY_CONSTRUCTOR(nsCJKStringPSMDetector)
NS_GENERIC_FACTORY_CONSTRUCTOR(nsRUProbDetector)
NS_GENERIC_FACTORY_CONSTRUCTOR(nsUKProbDetector)
NS_GENERIC_FACTORY_CONSTRUCTOR(nsRUStringProbDetector)
NS_GENERIC_FACTORY_CONSTRUCTOR(nsUKStringProbDetector)
#ifdef INCLUDE_DBGDETECTOR
NS_GENERIC_FACTORY_CONSTRUCTOR(ns1stBlkDbgDetector)
NS_GENERIC_FACTORY_CONSTRUCTOR(ns2ndBlkDbgDetector)
--- a/intl/chardet/src/nsChardetModule.cpp
+++ b/intl/chardet/src/nsChardetModule.cpp
@@ -98,88 +98,16 @@ nsDetectionAdaptorRegistrationProc(nsICo
const char *registryLocation,
const char *componentType,
const nsModuleComponentInfo *info)
{
return AddCategoryEntry(NS_CHARSET_DETECTOR_CATEGORY, "off", "off");
}
static NS_METHOD
-nsJAPSMDetectorRegistrationProc(nsIComponentManager *aCompMgr,
- nsIFile *aPath,
- const char *registryLocation,
- const char *componentType,
- const nsModuleComponentInfo *info)
-{
- return AddCategoryEntry(NS_CHARSET_DETECTOR_CATEGORY,
- "ja_parallel_state_machine",
- info->mContractID);
-}
-
-static NS_METHOD
-nsKOPSMDetectorRegistrationProc(nsIComponentManager *aCompMgr,
- nsIFile *aPath,
- const char *registryLocation,
- const char *componentType,
- const nsModuleComponentInfo *info)
-{
- return AddCategoryEntry(NS_CHARSET_DETECTOR_CATEGORY,
- "ko_parallel_state_machine",
- info->mContractID);
-}
-
-static NS_METHOD
-nsZHTWPSMDetectorRegistrationProc(nsIComponentManager *aCompMgr,
- nsIFile *aPath,
- const char *registryLocation,
- const char *componentType,
- const nsModuleComponentInfo *info)
-{
- return AddCategoryEntry(NS_CHARSET_DETECTOR_CATEGORY,
- "zhtw_parallel_state_machine",
- info->mContractID);
-}
-
-static NS_METHOD
-nsZHCNPSMDetectorRegistrationProc(nsIComponentManager *aCompMgr,
- nsIFile *aPath,
- const char *registryLocation,
- const char *componentType,
- const nsModuleComponentInfo *info)
-{
- return AddCategoryEntry(NS_CHARSET_DETECTOR_CATEGORY,
- "zhcn_parallel_state_machine",
- info->mContractID);
-}
-
-static NS_METHOD
-nsZHPSMDetectorRegistrationProc(nsIComponentManager *aCompMgr,
- nsIFile *aPath,
- const char *registryLocation,
- const char *componentType,
- const nsModuleComponentInfo *info)
-{
- return AddCategoryEntry(NS_CHARSET_DETECTOR_CATEGORY,
- "zh_parallel_state_machine",
- info->mContractID);
-}
-
-static NS_METHOD
-nsCJKPSMDetectorRegistrationProc(nsIComponentManager *aCompMgr,
- nsIFile *aPath,
- const char *registryLocation,
- const char *componentType,
- const nsModuleComponentInfo *info)
-{
- return AddCategoryEntry(NS_CHARSET_DETECTOR_CATEGORY,
- "cjk_parallel_state_machine",
- info->mContractID);
-}
-
-static NS_METHOD
nsRUProbDetectorRegistrationProc(nsIComponentManager *aCompMgr,
nsIFile *aPath,
const char *registryLocation,
const char *componentType,
const nsModuleComponentInfo *info)
{
return AddCategoryEntry(NS_CHARSET_DETECTOR_CATEGORY,
"ruprob",
@@ -209,52 +137,16 @@ static nsModuleComponentInfo components[
NS_DOCUMENTCHARSETINFO_CONTRACTID, nsDocumentCharsetInfoConstructor,
NULL, NULL},
{ "XML Encoding", NS_XML_ENCODING_CID,
NS_XML_ENCODING_CONTRACTID, nsXMLEncodingObserverConstructor,
NULL, NULL},
{ "Charset Detection Adaptor", NS_CHARSET_DETECTION_ADAPTOR_CID,
NS_CHARSET_DETECTION_ADAPTOR_CONTRACTID, nsDetectionAdaptorConstructor,
nsDetectionAdaptorRegistrationProc, NULL},
- { "PSM based Japanese Charset Detector", NS_JA_PSMDETECTOR_CID,
- NS_CHARSET_DETECTOR_CONTRACTID_BASE "ja_parallel_state_machine", nsJAPSMDetectorConstructor,
- nsJAPSMDetectorRegistrationProc, NULL},
- { "PSM based Japanese String Charset Detector", NS_JA_STRING_PSMDETECTOR_CID,
- NS_STRCDETECTOR_CONTRACTID_BASE "ja_parallel_state_machine", nsJAStringPSMDetectorConstructor,
- NULL, NULL},
- { "PSM based Korean Charset Detector", NS_KO_PSMDETECTOR_CID,
- NS_CHARSET_DETECTOR_CONTRACTID_BASE "ko_parallel_state_machine", nsKOPSMDetectorConstructor,
- nsKOPSMDetectorRegistrationProc, NULL},
- { "PSM based Korean String Charset Detector", NS_KO_STRING_PSMDETECTOR_CID,
- NS_STRCDETECTOR_CONTRACTID_BASE "ko_parallel_state_machine", nsKOStringPSMDetectorConstructor,
- NULL, NULL},
- { "PSM based Traditional Chinese Charset Detector", NS_ZHTW_PSMDETECTOR_CID,
- NS_CHARSET_DETECTOR_CONTRACTID_BASE "zhtw_parallel_state_machine", nsZHTWPSMDetectorConstructor,
- nsZHTWPSMDetectorRegistrationProc, NULL},
- { "PSM based Traditional Chinese String Charset Detector", NS_ZHTW_STRING_PSMDETECTOR_CID,
- NS_STRCDETECTOR_CONTRACTID_BASE "zhtw_parallel_state_machine", nsZHTWStringPSMDetectorConstructor,
- NULL, NULL},
- { "PSM based Simplified Chinese Charset Detector", NS_ZHCN_PSMDETECTOR_CID,
- NS_CHARSET_DETECTOR_CONTRACTID_BASE "zhcn_parallel_state_machine", nsZHCNPSMDetectorConstructor,
- nsZHCNPSMDetectorRegistrationProc, NULL},
- { "PSM based Simplified Chinese String Charset Detector", NS_ZHCN_STRING_PSMDETECTOR_CID,
- NS_STRCDETECTOR_CONTRACTID_BASE "zhcn_parallel_state_machine", nsZHCNStringPSMDetectorConstructor,
- NULL, NULL},
- { "PSM based Chinese Charset Detector", NS_ZH_PSMDETECTOR_CID,
- NS_CHARSET_DETECTOR_CONTRACTID_BASE "zh_parallel_state_machine", nsZHPSMDetectorConstructor,
- nsZHPSMDetectorRegistrationProc, NULL},
- { "PSM based Chinese String Charset Detector", NS_ZH_STRING_PSMDETECTOR_CID,
- NS_STRCDETECTOR_CONTRACTID_BASE "zh_parallel_state_machine", nsZHStringPSMDetectorConstructor,
- NULL, NULL},
- { "PSM based CJK Charset Detector", NS_CJK_PSMDETECTOR_CID,
- NS_CHARSET_DETECTOR_CONTRACTID_BASE "cjk_parallel_state_machine", nsCJKPSMDetectorConstructor,
- nsCJKPSMDetectorRegistrationProc, NULL},
- { "PSM based CJK String Charset Detector", NS_CJK_STRING_PSMDETECTOR_CID,
- NS_STRCDETECTOR_CONTRACTID_BASE "cjk_parallel_state_machine", nsCJKStringPSMDetectorConstructor,
- NULL, NULL},
{ "Probability based Russian Charset Detector", NS_RU_PROBDETECTOR_CID,
NS_CHARSET_DETECTOR_CONTRACTID_BASE "ruprob", nsRUProbDetectorConstructor,
nsRUProbDetectorRegistrationProc, NULL},
{ "Probability based Ukrainian Charset Detector", NS_UK_PROBDETECTOR_CID,
NS_CHARSET_DETECTOR_CONTRACTID_BASE "ukprob", nsUKProbDetectorConstructor,
nsUKProbDetectorRegistrationProc, NULL},
{ "Probability based Russian String Charset Detector", NS_RU_STRING_PROBDETECTOR_CID,
NS_STRCDETECTOR_CONTRACTID_BASE "ruprob", nsRUStringProbDetectorConstructor,
deleted file mode 100644
--- a/intl/chardet/src/nsEUCJPVerifier.h
+++ /dev/null
@@ -1,107 +0,0 @@
-/* -*- Mode: C; tab-width: 4; 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.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 ***** */
-/*
- * DO NOT EDIT THIS DOCUMENT MANUALLY !!!
- * THIS FILE IS AUTOMATICALLY GENERATED BY THE TOOLS UNDER
- * mozilla/intl/chardet/tools/
- * Please contact ftang@netscape.com or mozilla-i18n@mozilla.org
- * if you have any question. Thanks
- */
-#include "nsVerifier.h"
-static const PRUint32 EUCJP_cls [ 256 / 8 ] = {
-PCK4BITS(4,4,4,4,4,4,4,4), // 00 - 07
-PCK4BITS(4,4,4,4,4,4,5,5), // 08 - 0f
-PCK4BITS(4,4,4,4,4,4,4,4), // 10 - 17
-PCK4BITS(4,4,4,5,4,4,4,4), // 18 - 1f
-PCK4BITS(4,4,4,4,4,4,4,4), // 20 - 27
-PCK4BITS(4,4,4,4,4,4,4,4), // 28 - 2f
-PCK4BITS(4,4,4,4,4,4,4,4), // 30 - 37
-PCK4BITS(4,4,4,4,4,4,4,4), // 38 - 3f
-PCK4BITS(4,4,4,4,4,4,4,4), // 40 - 47
-PCK4BITS(4,4,4,4,4,4,4,4), // 48 - 4f
-PCK4BITS(4,4,4,4,4,4,4,4), // 50 - 57
-PCK4BITS(4,4,4,4,4,4,4,4), // 58 - 5f
-PCK4BITS(4,4,4,4,4,4,4,4), // 60 - 67
-PCK4BITS(4,4,4,4,4,4,4,4), // 68 - 6f
-PCK4BITS(4,4,4,4,4,4,4,4), // 70 - 77
-PCK4BITS(4,4,4,4,4,4,4,4), // 78 - 7f
-PCK4BITS(5,5,5,5,5,5,5,5), // 80 - 87
-PCK4BITS(5,5,5,5,5,5,1,3), // 88 - 8f
-PCK4BITS(5,5,5,5,5,5,5,5), // 90 - 97
-PCK4BITS(5,5,5,5,5,5,5,5), // 98 - 9f
-PCK4BITS(5,2,2,2,2,2,2,2), // a0 - a7
-PCK4BITS(2,2,2,2,2,2,2,2), // a8 - af
-PCK4BITS(2,2,2,2,2,2,2,2), // b0 - b7
-PCK4BITS(2,2,2,2,2,2,2,2), // b8 - bf
-PCK4BITS(2,2,2,2,2,2,2,2), // c0 - c7
-PCK4BITS(2,2,2,2,2,2,2,2), // c8 - cf
-PCK4BITS(2,2,2,2,2,2,2,2), // d0 - d7
-PCK4BITS(2,2,2,2,2,2,2,2), // d8 - df
-PCK4BITS(0,0,0,0,0,0,0,0), // e0 - e7
-PCK4BITS(0,0,0,0,0,0,0,0), // e8 - ef
-PCK4BITS(0,0,0,0,0,0,0,0), // f0 - f7
-PCK4BITS(0,0,0,0,0,0,0,5) // f8 - ff
-};
-
-
-static const PRUint32 EUCJP_st [ 5] = {
-PCK4BITS( 3, 4, 3, 5,eStart,eError,eError,eError),//00-07
-PCK4BITS(eError,eError,eError,eError,eItsMe,eItsMe,eItsMe,eItsMe),//08-0f
-PCK4BITS(eItsMe,eItsMe,eStart,eError,eStart,eError,eError,eError),//10-17
-PCK4BITS(eError,eError,eStart,eError,eError,eError, 3,eError),//18-1f
-PCK4BITS( 3,eError,eError,eError,eStart,eStart,eStart,eStart) //20-27
-};
-
-
-static nsVerifier nsEUCJPVerifier = {
- "EUC-JP",
- {
- eIdxSft4bits,
- eSftMsk4bits,
- eBitSft4bits,
- eUnitMsk4bits,
- EUCJP_cls
- },
- 6,
- {
- eIdxSft4bits,
- eSftMsk4bits,
- eBitSft4bits,
- eUnitMsk4bits,
- EUCJP_st
- }
-};
deleted file mode 100644
--- a/intl/chardet/src/nsEUCKRVerifier.h
+++ /dev/null
@@ -1,104 +0,0 @@
-/* -*- Mode: C; tab-width: 4; 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.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 ***** */
-/*
- * DO NOT EDIT THIS DOCUMENT MANUALLY !!!
- * THIS FILE IS AUTOMATICALLY GENERATED BY THE TOOLS UNDER
- * mozilla/intl/chardet/tools/
- * Please contact ftang@netscape.com or mozilla-i18n@mozilla.org
- * if you have any question. Thanks
- */
-#include "nsVerifier.h"
-static const PRUint32 EUCKR_cls [ 256 / 8 ] = {
-PCK4BITS(1,1,1,1,1,1,1,1), // 00 - 07
-PCK4BITS(1,1,1,1,1,1,0,0), // 08 - 0f
-PCK4BITS(1,1,1,1,1,1,1,1), // 10 - 17
-PCK4BITS(1,1,1,0,1,1,1,1), // 18 - 1f
-PCK4BITS(1,1,1,1,1,1,1,1), // 20 - 27
-PCK4BITS(1,1,1,1,1,1,1,1), // 28 - 2f
-PCK4BITS(1,1,1,1,1,1,1,1), // 30 - 37
-PCK4BITS(1,1,1,1,1,1,1,1), // 38 - 3f
-PCK4BITS(1,1,1,1,1,1,1,1), // 40 - 47
-PCK4BITS(1,1,1,1,1,1,1,1), // 48 - 4f
-PCK4BITS(1,1,1,1,1,1,1,1), // 50 - 57
-PCK4BITS(1,1,1,1,1,1,1,1), // 58 - 5f
-PCK4BITS(1,1,1,1,1,1,1,1), // 60 - 67
-PCK4BITS(1,1,1,1,1,1,1,1), // 68 - 6f
-PCK4BITS(1,1,1,1,1,1,1,1), // 70 - 77
-PCK4BITS(1,1,1,1,1,1,1,1), // 78 - 7f
-PCK4BITS(0,0,0,0,0,0,0,0), // 80 - 87
-PCK4BITS(0,0,0,0,0,0,0,0), // 88 - 8f
-PCK4BITS(0,0,0,0,0,0,0,0), // 90 - 97
-PCK4BITS(0,0,0,0,0,0,0,0), // 98 - 9f
-PCK4BITS(0,2,2,2,2,2,2,2), // a0 - a7
-PCK4BITS(2,2,2,2,2,3,3,3), // a8 - af
-PCK4BITS(2,2,2,2,2,2,2,2), // b0 - b7
-PCK4BITS(2,2,2,2,2,2,2,2), // b8 - bf
-PCK4BITS(2,2,2,2,2,2,2,2), // c0 - c7
-PCK4BITS(2,3,2,2,2,2,2,2), // c8 - cf
-PCK4BITS(2,2,2,2,2,2,2,2), // d0 - d7
-PCK4BITS(2,2,2,2,2,2,2,2), // d8 - df
-PCK4BITS(2,2,2,2,2,2,2,2), // e0 - e7
-PCK4BITS(2,2,2,2,2,2,2,2), // e8 - ef
-PCK4BITS(2,2,2,2,2,2,2,2), // f0 - f7
-PCK4BITS(2,2,2,2,2,2,2,0) // f8 - ff
-};
-
-
-static const PRUint32 EUCKR_st [ 2] = {
-PCK4BITS(eError,eStart, 3,eError,eError,eError,eError,eError),//00-07
-PCK4BITS(eItsMe,eItsMe,eItsMe,eItsMe,eError,eError,eStart,eStart) //08-0f
-};
-
-
-static nsVerifier nsEUCKRVerifier = {
- "EUC-KR",
- {
- eIdxSft4bits,
- eSftMsk4bits,
- eBitSft4bits,
- eUnitMsk4bits,
- EUCKR_cls
- },
- 4,
- {
- eIdxSft4bits,
- eSftMsk4bits,
- eBitSft4bits,
- eUnitMsk4bits,
- EUCKR_st
- }
-};
deleted file mode 100644
--- a/intl/chardet/src/nsEUCTWVerifier.h
+++ /dev/null
@@ -1,108 +0,0 @@
-/* -*- Mode: C; tab-width: 4; 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.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 ***** */
-/*
- * DO NOT EDIT THIS DOCUMENT MANUALLY !!!
- * THIS FILE IS AUTOMATICALLY GENERATED BY THE TOOLS UNDER
- * mozilla/intl/chardet/tools/
- * Please contact ftang@netscape.com or mozilla-i18n@mozilla.org
- * if you have any question. Thanks
- */
-#include "nsVerifier.h"
-static const PRUint32 EUCTW_cls [ 256 / 8 ] = {
-PCK4BITS(2,2,2,2,2,2,2,2), // 00 - 07
-PCK4BITS(2,2,2,2,2,2,0,0), // 08 - 0f
-PCK4BITS(2,2,2,2,2,2,2,2), // 10 - 17
-PCK4BITS(2,2,2,0,2,2,2,2), // 18 - 1f
-PCK4BITS(2,2,2,2,2,2,2,2), // 20 - 27
-PCK4BITS(2,2,2,2,2,2,2,2), // 28 - 2f
-PCK4BITS(2,2,2,2,2,2,2,2), // 30 - 37
-PCK4BITS(2,2,2,2,2,2,2,2), // 38 - 3f
-PCK4BITS(2,2,2,2,2,2,2,2), // 40 - 47
-PCK4BITS(2,2,2,2,2,2,2,2), // 48 - 4f
-PCK4BITS(2,2,2,2,2,2,2,2), // 50 - 57
-PCK4BITS(2,2,2,2,2,2,2,2), // 58 - 5f
-PCK4BITS(2,2,2,2,2,2,2,2), // 60 - 67
-PCK4BITS(2,2,2,2,2,2,2,2), // 68 - 6f
-PCK4BITS(2,2,2,2,2,2,2,2), // 70 - 77
-PCK4BITS(2,2,2,2,2,2,2,2), // 78 - 7f
-PCK4BITS(0,0,0,0,0,0,0,0), // 80 - 87
-PCK4BITS(0,0,0,0,0,0,6,0), // 88 - 8f
-PCK4BITS(0,0,0,0,0,0,0,0), // 90 - 97
-PCK4BITS(0,0,0,0,0,0,0,0), // 98 - 9f
-PCK4BITS(0,3,4,4,4,4,4,4), // a0 - a7
-PCK4BITS(5,5,1,1,1,1,1,1), // a8 - af
-PCK4BITS(1,1,1,1,1,1,1,1), // b0 - b7
-PCK4BITS(1,1,1,1,1,1,1,1), // b8 - bf
-PCK4BITS(1,1,3,1,3,3,3,3), // c0 - c7
-PCK4BITS(3,3,3,3,3,3,3,3), // c8 - cf
-PCK4BITS(3,3,3,3,3,3,3,3), // d0 - d7
-PCK4BITS(3,3,3,3,3,3,3,3), // d8 - df
-PCK4BITS(3,3,3,3,3,3,3,3), // e0 - e7
-PCK4BITS(3,3,3,3,3,3,3,3), // e8 - ef
-PCK4BITS(3,3,3,3,3,3,3,3), // f0 - f7
-PCK4BITS(3,3,3,3,3,3,3,0) // f8 - ff
-};
-
-
-static const PRUint32 EUCTW_st [ 6] = {
-PCK4BITS(eError,eError,eStart, 3, 3, 3, 4,eError),//00-07
-PCK4BITS(eError,eError,eError,eError,eError,eError,eItsMe,eItsMe),//08-0f
-PCK4BITS(eItsMe,eItsMe,eItsMe,eItsMe,eItsMe,eError,eStart,eError),//10-17
-PCK4BITS(eStart,eStart,eStart,eError,eError,eError,eError,eError),//18-1f
-PCK4BITS( 5,eError,eError,eError,eStart,eError,eStart,eStart),//20-27
-PCK4BITS(eStart,eError,eStart,eStart,eStart,eStart,eStart,eStart) //28-2f
-};
-
-
-static nsVerifier nsEUCTWVerifier = {
- "x-euc-tw",
- {
- eIdxSft4bits,
- eSftMsk4bits,
- eBitSft4bits,
- eUnitMsk4bits,
- EUCTW_cls
- },
- 7,
- {
- eIdxSft4bits,
- eSftMsk4bits,
- eBitSft4bits,
- eUnitMsk4bits,
- EUCTW_st
- }
-};
deleted file mode 100644
--- a/intl/chardet/src/nsGB18030Verifier.h
+++ /dev/null
@@ -1,108 +0,0 @@
-/* -*- Mode: C; tab-width: 4; 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.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 ***** */
-/*
- * DO NOT EDIT THIS DOCUMENT MANUALLY !!!
- * THIS FILE IS AUTOMATICALLY GENERATED BY THE TOOLS UNDER
- * mozilla/intl/chardet/tools/
- * Please contact ftang@netscape.com or mozilla-i18n@mozilla.org
- * if you have any question. Thanks
- */
-#include "nsVerifier.h"
-static const PRUint32 gb18030_cls [ 256 / 8 ] = {
-PCK4BITS(1,1,1,1,1,1,1,1), // 00 - 07
-PCK4BITS(1,1,1,1,1,1,0,0), // 08 - 0f
-PCK4BITS(1,1,1,1,1,1,1,1), // 10 - 17
-PCK4BITS(1,1,1,0,1,1,1,1), // 18 - 1f
-PCK4BITS(1,1,1,1,1,1,1,1), // 20 - 27
-PCK4BITS(1,1,1,1,1,1,1,1), // 28 - 2f
-PCK4BITS(3,3,3,3,3,3,3,3), // 30 - 37
-PCK4BITS(3,3,1,1,1,1,1,1), // 38 - 3f
-PCK4BITS(2,2,2,2,2,2,2,2), // 40 - 47
-PCK4BITS(2,2,2,2,2,2,2,2), // 48 - 4f
-PCK4BITS(2,2,2,2,2,2,2,2), // 50 - 57
-PCK4BITS(2,2,2,2,2,2,2,2), // 58 - 5f
-PCK4BITS(2,2,2,2,2,2,2,2), // 60 - 67
-PCK4BITS(2,2,2,2,2,2,2,2), // 68 - 6f
-PCK4BITS(2,2,2,2,2,2,2,2), // 70 - 77
-PCK4BITS(2,2,2,2,2,2,2,4), // 78 - 7f
-PCK4BITS(5,6,6,6,6,6,6,6), // 80 - 87
-PCK4BITS(6,6,6,6,6,6,6,6), // 88 - 8f
-PCK4BITS(6,6,6,6,6,6,6,6), // 90 - 97
-PCK4BITS(6,6,6,6,6,6,6,6), // 98 - 9f
-PCK4BITS(6,6,6,6,6,6,6,6), // a0 - a7
-PCK4BITS(6,6,6,6,6,6,6,6), // a8 - af
-PCK4BITS(6,6,6,6,6,6,6,6), // b0 - b7
-PCK4BITS(6,6,6,6,6,6,6,6), // b8 - bf
-PCK4BITS(6,6,6,6,6,6,6,6), // c0 - c7
-PCK4BITS(6,6,6,6,6,6,6,6), // c8 - cf
-PCK4BITS(6,6,6,6,6,6,6,6), // d0 - d7
-PCK4BITS(6,6,6,6,6,6,6,6), // d8 - df
-PCK4BITS(6,6,6,6,6,6,6,6), // e0 - e7
-PCK4BITS(6,6,6,6,6,6,6,6), // e8 - ef
-PCK4BITS(6,6,6,6,6,6,6,6), // f0 - f7
-PCK4BITS(6,6,6,6,6,6,6,0) // f8 - ff
-};
-
-
-static const PRUint32 gb18030_st [ 6] = {
-PCK4BITS(eError,eStart,eStart,eStart,eStart,eStart, 3,eError),//00-07
-PCK4BITS(eError,eError,eError,eError,eError,eError,eItsMe,eItsMe),//08-0f
-PCK4BITS(eItsMe,eItsMe,eItsMe,eItsMe,eItsMe,eError,eError,eStart),//10-17
-PCK4BITS( 4,eError,eStart,eStart,eError,eError,eError,eError),//18-1f
-PCK4BITS(eError,eError, 5,eError,eError,eError,eItsMe,eError),//20-27
-PCK4BITS(eError,eError,eStart,eStart,eStart,eStart,eStart,eStart) //28-2f
-};
-
-
-static nsVerifier nsGB18030Verifier = {
- "gb18030",
- {
- eIdxSft4bits,
- eSftMsk4bits,
- eBitSft4bits,
- eUnitMsk4bits,
- gb18030_cls
- },
- 7,
- {
- eIdxSft4bits,
- eSftMsk4bits,
- eBitSft4bits,
- eUnitMsk4bits,
- gb18030_st
- }
-};
deleted file mode 100644
--- a/intl/chardet/src/nsGB2312Verifier.h
+++ /dev/null
@@ -1,104 +0,0 @@
-/* -*- Mode: C; tab-width: 4; 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.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 ***** */
-/*
- * DO NOT EDIT THIS DOCUMENT MANUALLY !!!
- * THIS FILE IS AUTOMATICALLY GENERATED BY THE TOOLS UNDER
- * mozilla/intl/chardet/tools/
- * Please contact ftang@netscape.com or mozilla-i18n@mozilla.org
- * if you have any question. Thanks
- */
-#include "nsVerifier.h"
-static const PRUint32 GB2312_cls [ 256 / 8 ] = {
-PCK4BITS(1,1,1,1,1,1,1,1), // 00 - 07
-PCK4BITS(1,1,1,1,1,1,0,0), // 08 - 0f
-PCK4BITS(1,1,1,1,1,1,1,1), // 10 - 17
-PCK4BITS(1,1,1,0,1,1,1,1), // 18 - 1f
-PCK4BITS(1,1,1,1,1,1,1,1), // 20 - 27
-PCK4BITS(1,1,1,1,1,1,1,1), // 28 - 2f
-PCK4BITS(1,1,1,1,1,1,1,1), // 30 - 37
-PCK4BITS(1,1,1,1,1,1,1,1), // 38 - 3f
-PCK4BITS(1,1,1,1,1,1,1,1), // 40 - 47
-PCK4BITS(1,1,1,1,1,1,1,1), // 48 - 4f
-PCK4BITS(1,1,1,1,1,1,1,1), // 50 - 57
-PCK4BITS(1,1,1,1,1,1,1,1), // 58 - 5f
-PCK4BITS(1,1,1,1,1,1,1,1), // 60 - 67
-PCK4BITS(1,1,1,1,1,1,1,1), // 68 - 6f
-PCK4BITS(1,1,1,1,1,1,1,1), // 70 - 77
-PCK4BITS(1,1,1,1,1,1,1,1), // 78 - 7f
-PCK4BITS(0,0,0,0,0,0,0,0), // 80 - 87
-PCK4BITS(0,0,0,0,0,0,0,0), // 88 - 8f
-PCK4BITS(0,0,0,0,0,0,0,0), // 90 - 97
-PCK4BITS(0,0,0,0,0,0,0,0), // 98 - 9f
-PCK4BITS(0,2,2,2,2,2,2,2), // a0 - a7
-PCK4BITS(2,2,3,3,3,3,3,3), // a8 - af
-PCK4BITS(2,2,2,2,2,2,2,2), // b0 - b7
-PCK4BITS(2,2,2,2,2,2,2,2), // b8 - bf
-PCK4BITS(2,2,2,2,2,2,2,2), // c0 - c7
-PCK4BITS(2,2,2,2,2,2,2,2), // c8 - cf
-PCK4BITS(2,2,2,2,2,2,2,2), // d0 - d7
-PCK4BITS(2,2,2,2,2,2,2,2), // d8 - df
-PCK4BITS(2,2,2,2,2,2,2,2), // e0 - e7
-PCK4BITS(2,2,2,2,2,2,2,2), // e8 - ef
-PCK4BITS(2,2,2,2,2,2,2,2), // f0 - f7
-PCK4BITS(2,2,2,2,2,2,2,0) // f8 - ff
-};
-
-
-static const PRUint32 GB2312_st [ 2] = {
-PCK4BITS(eError,eStart, 3,eError,eError,eError,eError,eError),//00-07
-PCK4BITS(eItsMe,eItsMe,eItsMe,eItsMe,eError,eError,eStart,eStart) //08-0f
-};
-
-
-static nsVerifier nsGB2312Verifier = {
- "GB2312",
- {
- eIdxSft4bits,
- eSftMsk4bits,
- eBitSft4bits,
- eUnitMsk4bits,
- GB2312_cls
- },
- 4,
- {
- eIdxSft4bits,
- eSftMsk4bits,
- eBitSft4bits,
- eUnitMsk4bits,
- GB2312_st
- }
-};
deleted file mode 100644
--- a/intl/chardet/src/nsHZVerifier.h
+++ /dev/null
@@ -1,108 +0,0 @@
-/* -*- Mode: C; tab-width: 4; 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.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 ***** */
-/*
- * DO NOT EDIT THIS DOCUMENT MANUALLY !!!
- * THIS FILE IS AUTOMATICALLY GENERATED BY THE TOOLS UNDER
- * mozilla/intl/chardet/tools/
- * Please contact ftang@netscape.com or mozilla-i18n@mozilla.org
- * if you have any question. Thanks
- */
-#include "nsVerifier.h"
-static const PRUint32 HZ_cls [ 256 / 8 ] = {
-PCK4BITS(1,0,0,0,0,0,0,0), // 00 - 07
-PCK4BITS(0,0,0,0,0,0,0,0), // 08 - 0f
-PCK4BITS(0,0,0,0,0,0,0,0), // 10 - 17
-PCK4BITS(0,0,0,1,0,0,0,0), // 18 - 1f
-PCK4BITS(0,0,0,0,0,0,0,0), // 20 - 27
-PCK4BITS(0,0,0,0,0,0,0,0), // 28 - 2f
-PCK4BITS(0,0,0,0,0,0,0,0), // 30 - 37
-PCK4BITS(0,0,0,0,0,0,0,0), // 38 - 3f
-PCK4BITS(0,0,0,0,0,0,0,0), // 40 - 47
-PCK4BITS(0,0,0,0,0,0,0,0), // 48 - 4f
-PCK4BITS(0,0,0,0,0,0,0,0), // 50 - 57
-PCK4BITS(0,0,0,0,0,0,0,0), // 58 - 5f
-PCK4BITS(0,0,0,0,0,0,0,0), // 60 - 67
-PCK4BITS(0,0,0,0,0,0,0,0), // 68 - 6f
-PCK4BITS(0,0,0,0,0,0,0,0), // 70 - 77
-PCK4BITS(0,0,0,4,0,5,2,0), // 78 - 7f
-PCK4BITS(1,1,1,1,1,1,1,1), // 80 - 87
-PCK4BITS(1,1,1,1,1,1,1,1), // 88 - 8f
-PCK4BITS(1,1,1,1,1,1,1,1), // 90 - 97
-PCK4BITS(1,1,1,1,1,1,1,1), // 98 - 9f
-PCK4BITS(1,1,1,1,1,1,1,1), // a0 - a7
-PCK4BITS(1,1,1,1,1,1,1,1), // a8 - af
-PCK4BITS(1,1,1,1,1,1,1,1), // b0 - b7
-PCK4BITS(1,1,1,1,1,1,1,1), // b8 - bf
-PCK4BITS(1,1,1,1,1,1,1,1), // c0 - c7
-PCK4BITS(1,1,1,1,1,1,1,1), // c8 - cf
-PCK4BITS(1,1,1,1,1,1,1,1), // d0 - d7
-PCK4BITS(1,1,1,1,1,1,1,1), // d8 - df
-PCK4BITS(1,1,1,1,1,1,1,1), // e0 - e7
-PCK4BITS(1,1,1,1,1,1,1,1), // e8 - ef
-PCK4BITS(1,1,1,1,1,1,1,1), // f0 - f7
-PCK4BITS(1,1,1,1,1,1,1,1) // f8 - ff
-};
-
-
-static const PRUint32 HZ_st [ 6] = {
-PCK4BITS(eStart,eError, 3,eStart,eStart,eStart,eError,eError),//00-07
-PCK4BITS(eError,eError,eError,eError,eItsMe,eItsMe,eItsMe,eItsMe),//08-0f
-PCK4BITS(eItsMe,eItsMe,eError,eError,eStart,eStart, 4,eError),//10-17
-PCK4BITS( 5,eError, 6,eError, 5, 5, 4,eError),//18-1f
-PCK4BITS( 4,eError, 4, 4, 4,eError, 4,eError),//20-27
-PCK4BITS( 4,eItsMe,eStart,eStart,eStart,eStart,eStart,eStart) //28-2f
-};
-
-
-static nsVerifier nsHZVerifier = {
- "HZ-GB-2312",
- {
- eIdxSft4bits,
- eSftMsk4bits,
- eBitSft4bits,
- eUnitMsk4bits,
- HZ_cls
- },
- 6,
- {
- eIdxSft4bits,
- eSftMsk4bits,
- eBitSft4bits,
- eUnitMsk4bits,
- HZ_st
- }
-};
deleted file mode 100644
--- a/intl/chardet/src/nsISO2022CNVerifier.h
+++ /dev/null
@@ -1,110 +0,0 @@
-/* -*- Mode: C; tab-width: 4; 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.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 ***** */
-/*
- * DO NOT EDIT THIS DOCUMENT MANUALLY !!!
- * THIS FILE IS AUTOMATICALLY GENERATED BY THE TOOLS UNDER
- * mozilla/intl/chardet/tools/
- * Please contact ftang@netscape.com or mozilla-i18n@mozilla.org
- * if you have any question. Thanks
- */
-#include "nsVerifier.h"
-static const PRUint32 ISO2022CN_cls [ 256 / 8 ] = {
-PCK4BITS(2,0,0,0,0,0,0,0), // 00 - 07
-PCK4BITS(0,0,0,0,0,0,0,0), // 08 - 0f
-PCK4BITS(0,0,0,0,0,0,0,0), // 10 - 17
-PCK4BITS(0,0,0,1,0,0,0,0), // 18 - 1f
-PCK4BITS(0,0,0,0,0,0,0,0), // 20 - 27
-PCK4BITS(0,3,0,0,0,0,0,0), // 28 - 2f
-PCK4BITS(0,0,0,0,0,0,0,0), // 30 - 37
-PCK4BITS(0,0,0,0,0,0,0,0), // 38 - 3f
-PCK4BITS(0,0,0,4,0,0,0,0), // 40 - 47
-PCK4BITS(0,0,0,0,0,0,0,0), // 48 - 4f
-PCK4BITS(0,0,0,0,0,0,0,0), // 50 - 57
-PCK4BITS(0,0,0,0,0,0,0,0), // 58 - 5f
-PCK4BITS(0,0,0,0,0,0,0,0), // 60 - 67
-PCK4BITS(0,0,0,0,0,0,0,0), // 68 - 6f
-PCK4BITS(0,0,0,0,0,0,0,0), // 70 - 77
-PCK4BITS(0,0,0,0,0,0,0,0), // 78 - 7f
-PCK4BITS(2,2,2,2,2,2,2,2), // 80 - 87
-PCK4BITS(2,2,2,2,2,2,2,2), // 88 - 8f
-PCK4BITS(2,2,2,2,2,2,2,2), // 90 - 97
-PCK4BITS(2,2,2,2,2,2,2,2), // 98 - 9f
-PCK4BITS(2,2,2,2,2,2,2,2), // a0 - a7
-PCK4BITS(2,2,2,2,2,2,2,2), // a8 - af
-PCK4BITS(2,2,2,2,2,2,2,2), // b0 - b7
-PCK4BITS(2,2,2,2,2,2,2,2), // b8 - bf
-PCK4BITS(2,2,2,2,2,2,2,2), // c0 - c7
-PCK4BITS(2,2,2,2,2,2,2,2), // c8 - cf
-PCK4BITS(2,2,2,2,2,2,2,2), // d0 - d7
-PCK4BITS(2,2,2,2,2,2,2,2), // d8 - df
-PCK4BITS(2,2,2,2,2,2,2,2), // e0 - e7
-PCK4BITS(2,2,2,2,2,2,2,2), // e8 - ef
-PCK4BITS(2,2,2,2,2,2,2,2), // f0 - f7
-PCK4BITS(2,2,2,2,2,2,2,2) // f8 - ff
-};
-
-
-static const PRUint32 ISO2022CN_st [ 8] = {
-PCK4BITS(eStart, 3,eError,eStart,eStart,eStart,eStart,eStart),//00-07
-PCK4BITS(eStart,eError,eError,eError,eError,eError,eError,eError),//08-0f
-PCK4BITS(eError,eError,eItsMe,eItsMe,eItsMe,eItsMe,eItsMe,eItsMe),//10-17
-PCK4BITS(eItsMe,eItsMe,eItsMe,eError,eError,eError, 4,eError),//18-1f
-PCK4BITS(eError,eError,eError,eItsMe,eError,eError,eError,eError),//20-27
-PCK4BITS( 5, 6,eError,eError,eError,eError,eError,eError),//28-2f
-PCK4BITS(eError,eError,eError,eItsMe,eError,eError,eError,eError),//30-37
-PCK4BITS(eError,eError,eError,eError,eError,eItsMe,eError,eStart) //38-3f
-};
-
-
-static nsVerifier nsISO2022CNVerifier = {
- "ISO-2022-CN",
- {
- eIdxSft4bits,
- eSftMsk4bits,
- eBitSft4bits,
- eUnitMsk4bits,
- ISO2022CN_cls
- },
- 9,
- {
- eIdxSft4bits,
- eSftMsk4bits,
- eBitSft4bits,
- eUnitMsk4bits,
- ISO2022CN_st
- }
-};
deleted file mode 100644
--- a/intl/chardet/src/nsISO2022JPVerifier.h
+++ /dev/null
@@ -1,111 +0,0 @@
-/* -*- Mode: C; tab-width: 4; 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.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 ***** */
-/*
- * DO NOT EDIT THIS DOCUMENT MANUALLY !!!
- * THIS FILE IS AUTOMATICALLY GENERATED BY THE TOOLS UNDER
- * mozilla/intl/chardet/tools/
- * Please contact ftang@netscape.com or mozilla-i18n@mozilla.org
- * if you have any question. Thanks
- */
-#include "nsVerifier.h"
-static const PRUint32 ISO2022JP_cls [ 256 / 8 ] = {
-PCK4BITS(2,0,0,0,0,0,0,0), // 00 - 07
-PCK4BITS(0,0,0,0,0,0,2,2), // 08 - 0f
-PCK4BITS(0,0,0,0,0,0,0,0), // 10 - 17
-PCK4BITS(0,0,0,1,0,0,0,0), // 18 - 1f
-PCK4BITS(0,0,0,0,7,0,0,0), // 20 - 27
-PCK4BITS(3,0,0,0,0,0,0,0), // 28 - 2f
-PCK4BITS(0,0,0,0,0,0,0,0), // 30 - 37
-PCK4BITS(0,0,0,0,0,0,0,0), // 38 - 3f
-PCK4BITS(6,0,4,0,8,0,0,0), // 40 - 47
-PCK4BITS(0,9,5,0,0,0,0,0), // 48 - 4f
-PCK4BITS(0,0,0,0,0,0,0,0), // 50 - 57
-PCK4BITS(0,0,0,0,0,0,0,0), // 58 - 5f
-PCK4BITS(0,0,0,0,0,0,0,0), // 60 - 67
-PCK4BITS(0,0,0,0,0,0,0,0), // 68 - 6f
-PCK4BITS(0,0,0,0,0,0,0,0), // 70 - 77
-PCK4BITS(0,0,0,0,0,0,0,0), // 78 - 7f
-PCK4BITS(2,2,2,2,2,2,2,2), // 80 - 87
-PCK4BITS(2,2,2,2,2,2,2,2), // 88 - 8f
-PCK4BITS(2,2,2,2,2,2,2,2), // 90 - 97
-PCK4BITS(2,2,2,2,2,2,2,2), // 98 - 9f
-PCK4BITS(2,2,2,2,2,2,2,2), // a0 - a7
-PCK4BITS(2,2,2,2,2,2,2,2), // a8 - af
-PCK4BITS(2,2,2,2,2,2,2,2), // b0 - b7
-PCK4BITS(2,2,2,2,2,2,2,2), // b8 - bf
-PCK4BITS(2,2,2,2,2,2,2,2), // c0 - c7
-PCK4BITS(2,2,2,2,2,2,2,2), // c8 - cf
-PCK4BITS(2,2,2,2,2,2,2,2), // d0 - d7
-PCK4BITS(2,2,2,2,2,2,2,2), // d8 - df
-PCK4BITS(2,2,2,2,2,2,2,2), // e0 - e7
-PCK4BITS(2,2,2,2,2,2,2,2), // e8 - ef
-PCK4BITS(2,2,2,2,2,2,2,2), // f0 - f7
-PCK4BITS(2,2,2,2,2,2,2,2) // f8 - ff
-};
-
-
-static const PRUint32 ISO2022JP_st [ 9] = {
-PCK4BITS(eStart, 3,eError,eStart,eStart,eStart,eStart,eStart),//00-07
-PCK4BITS(eStart,eStart,eError,eError,eError,eError,eError,eError),//08-0f
-PCK4BITS(eError,eError,eError,eError,eItsMe,eItsMe,eItsMe,eItsMe),//10-17
-PCK4BITS(eItsMe,eItsMe,eItsMe,eItsMe,eItsMe,eItsMe,eError,eError),//18-1f
-PCK4BITS(eError, 5,eError,eError,eError, 4,eError,eError),//20-27
-PCK4BITS(eError,eError,eError, 6,eItsMe,eError,eItsMe,eError),//28-2f
-PCK4BITS(eError,eError,eError,eError,eError,eError,eItsMe,eItsMe),//30-37
-PCK4BITS(eError,eError,eError,eItsMe,eError,eError,eError,eError),//38-3f
-PCK4BITS(eError,eError,eError,eError,eItsMe,eError,eStart,eStart) //40-47
-};
-
-
-static nsVerifier nsISO2022JPVerifier = {
- "ISO-2022-JP",
- {
- eIdxSft4bits,
- eSftMsk4bits,
- eBitSft4bits,
- eUnitMsk4bits,
- ISO2022JP_cls
- },
- 10,
- {
- eIdxSft4bits,
- eSftMsk4bits,
- eBitSft4bits,
- eUnitMsk4bits,
- ISO2022JP_st
- }
-};
deleted file mode 100644
--- a/intl/chardet/src/nsISO2022KRVerifier.h
+++ /dev/null
@@ -1,107 +0,0 @@
-/* -*- Mode: C; tab-width: 4; 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.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 ***** */
-/*
- * DO NOT EDIT THIS DOCUMENT MANUALLY !!!
- * THIS FILE IS AUTOMATICALLY GENERATED BY THE TOOLS UNDER
- * mozilla/intl/chardet/tools/
- * Please contact ftang@netscape.com or mozilla-i18n@mozilla.org
- * if you have any question. Thanks
- */
-#include "nsVerifier.h"
-static const PRUint32 ISO2022KR_cls [ 256 / 8 ] = {
-PCK4BITS(2,0,0,0,0,0,0,0), // 00 - 07
-PCK4BITS(0,0,0,0,0,0,0,0), // 08 - 0f
-PCK4BITS(0,0,0,0,0,0,0,0), // 10 - 17
-PCK4BITS(0,0,0,1,0,0,0,0), // 18 - 1f
-PCK4BITS(0,0,0,0,3,0,0,0), // 20 - 27
-PCK4BITS(0,4,0,0,0,0,0,0), // 28 - 2f
-PCK4BITS(0,0,0,0,0,0,0,0), // 30 - 37
-PCK4BITS(0,0,0,0,0,0,0,0), // 38 - 3f
-PCK4BITS(0,0,0,5,0,0,0,0), // 40 - 47
-PCK4BITS(0,0,0,0,0,0,0,0), // 48 - 4f
-PCK4BITS(0,0,0,0,0,0,0,0), // 50 - 57
-PCK4BITS(0,0,0,0,0,0,0,0), // 58 - 5f
-PCK4BITS(0,0,0,0,0,0,0,0), // 60 - 67
-PCK4BITS(0,0,0,0,0,0,0,0), // 68 - 6f
-PCK4BITS(0,0,0,0,0,0,0,0), // 70 - 77
-PCK4BITS(0,0,0,0,0,0,0,0), // 78 - 7f
-PCK4BITS(2,2,2,2,2,2,2,2), // 80 - 87
-PCK4BITS(2,2,2,2,2,2,2,2), // 88 - 8f
-PCK4BITS(2,2,2,2,2,2,2,2), // 90 - 97
-PCK4BITS(2,2,2,2,2,2,2,2), // 98 - 9f
-PCK4BITS(2,2,2,2,2,2,2,2), // a0 - a7
-PCK4BITS(2,2,2,2,2,2,2,2), // a8 - af
-PCK4BITS(2,2,2,2,2,2,2,2), // b0 - b7
-PCK4BITS(2,2,2,2,2,2,2,2), // b8 - bf
-PCK4BITS(2,2,2,2,2,2,2,2), // c0 - c7
-PCK4BITS(2,2,2,2,2,2,2,2), // c8 - cf
-PCK4BITS(2,2,2,2,2,2,2,2), // d0 - d7
-PCK4BITS(2,2,2,2,2,2,2,2), // d8 - df
-PCK4BITS(2,2,2,2,2,2,2,2), // e0 - e7
-PCK4BITS(2,2,2,2,2,2,2,2), // e8 - ef
-PCK4BITS(2,2,2,2,2,2,2,2), // f0 - f7
-PCK4BITS(2,2,2,2,2,2,2,2) // f8 - ff
-};
-
-
-static const PRUint32 ISO2022KR_st [ 5] = {
-PCK4BITS(eStart, 3,eError,eStart,eStart,eStart,eError,eError),//00-07
-PCK4BITS(eError,eError,eError,eError,eItsMe,eItsMe,eItsMe,eItsMe),//08-0f
-PCK4BITS(eItsMe,eItsMe,eError,eError,eError, 4,eError,eError),//10-17
-PCK4BITS(eError,eError,eError,eError, 5,eError,eError,eError),//18-1f
-PCK4BITS(eError,eError,eError,eItsMe,eStart,eStart,eStart,eStart) //20-27
-};
-
-
-static nsVerifier nsISO2022KRVerifier = {
- "ISO-2022-KR",
- {
- eIdxSft4bits,
- eSftMsk4bits,
- eBitSft4bits,
- eUnitMsk4bits,
- ISO2022KR_cls
- },
- 6,
- {
- eIdxSft4bits,
- eSftMsk4bits,
- eBitSft4bits,
- eUnitMsk4bits,
- ISO2022KR_st
- }
-};
deleted file mode 100644
--- a/intl/chardet/src/nsPSMDetectors.cpp
+++ /dev/null
@@ -1,564 +0,0 @@
-/* -*- Mode: C; tab-width: 4; 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.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):
- * Pierre Phaneuf <pp@ludusdesign.com>
- *
- * 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 <math.h>
-#include <stdio.h>
-//---- for XPCOM
-#include "nsIFactory.h"
-#include "nsIGenericFactory.h"
-#include "nsISupports.h"
-#include "nsCharDetDll.h"
-#include "pratom.h"
-#include "nsPSMDetectors.h"
-
-nsEUCStatistics gBig5Statistics =
-#include "Big5Statistics.h"
-// end of UECTWStatistics.h include
-
-nsEUCStatistics gEUCTWStatistics =
-#include "EUCTWStatistics.h"
-// end of UECTWStatistics.h include
-
-nsEUCStatistics gGB2312Statistics =
-#include "GB2312Statistics.h"
-// end of GB2312Statistics.h include
-
-nsEUCStatistics gEUCJPStatistics =
-#include "EUCJPStatistics.h"
-// end of EUCJPStatistics.h include
-
-nsEUCStatistics gEUCKRStatistics =
-#include "EUCKRStatistics.h"
-// end of EUCKRStatistics.h include
-
-//==========================================================
-/*
- This class won't detect x-euc-tw for now. It can only
- tell a Big5 document is not x-euc-tw , but cannot tell
- a x-euc-tw docuement is not Big5 unless we hit characters
- defined in CNS 11643 plane 2.
-
- May need improvement ....
- */
-
-nsVerifier* const gZhTwVerifierSet[ZHTW_DETECTOR_NUM_VERIFIERS] = {
- &nsUTF8Verifier,
- &nsBIG5Verifier,
- &nsISO2022CNVerifier,
- &nsEUCTWVerifier,
- &nsCP1252Verifier,
- &nsUCS2BEVerifier,
- &nsUCS2LEVerifier
-};
-
-nsEUCStatistics* const gZhTwStatisticsSet[ZHTW_DETECTOR_NUM_VERIFIERS] = {
- nsnull,
- &gBig5Statistics,
- nsnull,
- &gEUCTWStatistics,
- nsnull,
- nsnull,
- nsnull
-};
-
-//==========================================================
-
-nsVerifier* const gKoVerifierSet[KO_DETECTOR_NUM_VERIFIERS] = {
- &nsUTF8Verifier,
- &nsEUCKRVerifier,
- &nsISO2022KRVerifier,
- &nsCP1252Verifier,
- &nsUCS2BEVerifier,
- &nsUCS2LEVerifier
-};
-
-//==========================================================
-
-nsVerifier* const gZhCnVerifierSet[ZHCN_DETECTOR_NUM_VERIFIERS] = {
- &nsUTF8Verifier,
- &nsGB2312Verifier,
- &nsGB18030Verifier,
- &nsISO2022CNVerifier,
- &nsHZVerifier,
- &nsCP1252Verifier,
- &nsUCS2BEVerifier,
- &nsUCS2LEVerifier
-};
-
-//==========================================================
-
-nsVerifier* const gJaVerifierSet[JA_DETECTOR_NUM_VERIFIERS] = {
- &nsUTF8Verifier,
- &nsSJISVerifier,
- &nsEUCJPVerifier,
- &nsISO2022JPVerifier,
- &nsCP1252Verifier,
- &nsUCS2BEVerifier,
- &nsUCS2LEVerifier
-};
-
-//==========================================================
-
-nsVerifier* const gZhVerifierSet[ZH_DETECTOR_NUM_VERIFIERS] = {
- &nsUTF8Verifier,
- &nsGB2312Verifier,
- &nsGB18030Verifier,
- &nsBIG5Verifier,
- &nsISO2022CNVerifier,
- &nsHZVerifier,
- &nsEUCTWVerifier,
- &nsCP1252Verifier,
- &nsUCS2BEVerifier,
- &nsUCS2LEVerifier
-};
-
-nsEUCStatistics* const gZhStatisticsSet[ZH_DETECTOR_NUM_VERIFIERS] = {
- nsnull,
- &gGB2312Statistics,
- &gBig5Statistics,
- nsnull,
- nsnull,
- &gEUCTWStatistics,
- nsnull,
- nsnull,
- nsnull
-};
-
-//==========================================================
-
-nsVerifier* const gCJKVerifierSet[CJK_DETECTOR_NUM_VERIFIERS] = {
- &nsUTF8Verifier,
- &nsSJISVerifier,
- &nsEUCJPVerifier,
- &nsISO2022JPVerifier,
- &nsEUCKRVerifier,
- &nsISO2022KRVerifier,
- &nsBIG5Verifier,
- &nsEUCTWVerifier,
- &nsGB2312Verifier,
- &nsGB18030Verifier,
- &nsISO2022CNVerifier,
- &nsHZVerifier,
- &nsCP1252Verifier,
- &nsUCS2BEVerifier,
- &nsUCS2LEVerifier
-};
-
-nsEUCStatistics* const gCJKStatisticsSet[CJK_DETECTOR_NUM_VERIFIERS] = {
- nsnull,
- nsnull,
- &gEUCJPStatistics,
- nsnull,
- &gEUCKRStatistics,
- nsnull,
- &gBig5Statistics,
- &gEUCTWStatistics,
- &gGB2312Statistics,
- nsnull,
- nsnull,
- nsnull,
- nsnull,
- nsnull
-};
-
-PRBool nsEUCSampler::Sample(const char* aIn, PRUint32 aLen)
-{
- if(mState == 1)
- return PR_FALSE;
- const unsigned char* p = (const unsigned char*) aIn;
- if(aLen + mTotal > 0x80000000)
- aLen = 0x80000000 - mTotal;
-
- PRUint32 i;
- for(i=0; (i<aLen) && (1 != mState) ;i++,p++)
- {
- switch(mState) {
- case 0:
- if( *p & 0x0080)
- {
- if((0x00ff == *p) || ( 0x00a1 > *p)) {
- mState = 1;
- } else {
- mTotal++;
- mFirstByteCnt[*p - 0x00a1]++;
- mState = 2;
- }
- }
- break;
- case 1:
- break;
- case 2:
- if( *p & 0x0080)
- {
- if((0x00ff == *p) || ( 0x00a1 > *p)) {
- mState = 1;
- } else {
- mTotal++;
- mSecondByteCnt[*p - 0x00a1]++;
- mState = 0;
- }
- } else {
- mState = 1;
- }
- break;
- default:
- mState = 1;
- }
- }
- return (1 != mState );
-}
-float nsEUCSampler::GetScore(const float* aFirstByteFreq, float aFirstByteWeight,
- const float* aSecondByteFreq, float aSecondByteWeight)
-{
- return aFirstByteWeight * GetScore(aFirstByteFreq, mFirstByteFreq) +
- aSecondByteWeight * GetScore(aSecondByteFreq, mSecondByteFreq);
-}
-
-float nsEUCSampler::GetScore(const float* array1, const float* array2)
-{
- float s;
- float sum=0.0;
- PRUint16 i;
- for(i=0;i<94;i++) {
- s = array1[i] - array2[i];
- sum += s * s;
- }
- return (float)sqrt((double)sum) / 94.0f;
-}
-
-void nsEUCSampler::CalFreq()
-{
- PRUint32 i;
- for(i = 0 ; i < 94; i++) {
- mFirstByteFreq[i] = (float)mFirstByteCnt[i] / (float)mTotal;
- mSecondByteFreq[i] = (float)mSecondByteCnt[i] / (float)mTotal;
- }
-}
-
-//----------------------------------------------------------
-NS_IMPL_ISUPPORTS1(nsXPCOMDetector, nsICharsetDetector)
-NS_IMPL_ISUPPORTS1(nsXPCOMStringDetector, nsIStringCharsetDetector)
-nsPSMDetector::nsPSMDetector(PRUint8 aItems, nsVerifier* const * aVerifierSet, nsEUCStatistics* const * aStatisticsSet)
-{
- mClassRunSampler = (nsnull != aStatisticsSet);
- mStatisticsData = aStatisticsSet;
- mVerifier = aVerifierSet;
-
- mClassItems = aItems;
- Reset();
-}
-void nsPSMDetector::Reset()
-{
- mRunSampler = mClassRunSampler;
- mDone= PR_FALSE;
- mItems = mClassItems;
- NS_ASSERTION(MAX_VERIFIERS >= mItems , "MAX_VERIFIERS is too small!");
- for(PRUint8 i = 0; i < mItems ; i++)
- {
- mState[i] = 0;
- mItemIdx[i] = i;
- }
-#ifdef DETECTOR_DEBUG
- mDbgLen = mDbgTest = 0;
-#endif
-}
-//----------------------------------------------------------
-void nsPSMDetector::DataEnd()
-{
- // since gb18030 covers almost all code points in big5, sjis, euc-xx,
- // it effectively make other verifiers unusable. Gb18030 is not
- // very popular, and it could reach Itsme state. We need to eliminate
- // gb18030 when there are only 2 candidates left.
- if (mItems == 2) {
- if ((&nsGB18030Verifier) == mVerifier[mItemIdx[0]]) {
- Report( mVerifier[mItemIdx[1]]->charset);
- mDone = PR_TRUE;
- } else if ((&nsGB18030Verifier) == mVerifier[mItemIdx[1]]) {
- Report( mVerifier[mItemIdx[0]]->charset);
- mDone = PR_TRUE;
- }
- }
- if(mRunSampler)
- Sample(nsnull, 0, PR_TRUE);
-}
-//----------------------------------------------------------
-
-// #define ftang_TRACE_STATE
-// #define TRACE_VERIFIER nsCP1252Verifier
-
-PRBool nsPSMDetector::HandleData(const char* aBuf, PRUint32 aLen)
-{
- PRUint32 i,j;
- PRUint32 st;
- for(i=0; i < aLen; i++)
- {
- char b = aBuf[i];
- for(j = 0; j < mItems; )
- {
-#ifdef ftang_TRACE_STATE
- if( mVerifier[mItemIdx[j]] == & TRACE_VERIFIER )
- {
- printf("%d = %d\n", i + mDbgLen, mState[j]);
- }
-#endif
-#ifdef DETECTOR_DEBUG
- mDbgTest++;
-#endif
- st = GETNEXTSTATE( mVerifier[mItemIdx[j]], b, mState[j] );
- if(eItsMe == st)
- {
-#ifdef DETECTOR_DEBUG
- printf("It's %s- byte %d(%x) test %d\n",
- mVerifier[mItemIdx[j]]->charset,
- i+mDbgLen,
- i+mDbgLen,
- mDbgTest
- );
-#endif
- Report( mVerifier[mItemIdx[j]]->charset);
- mDone = PR_TRUE;
- return mDone;
- } else {
- mState[j++] = st;
- }
- }
- if( mItems <= 1)
- {
- if( 1 == mItems) {
-#ifdef DETECTOR_DEBUG
- printf("It's %s- byte %d (%x) Test %d. The only left\n",
- mVerifier[mItemIdx[0]]->charset,
- i+mDbgLen,
- i+mDbgLen,
- mDbgTest);
-#endif
- Report( mVerifier[mItemIdx[0]]->charset);
- }
- mDone = PR_TRUE;
- return mDone;
- } else {
- // If the only charset left is UCS2LE/UCS2BE and another, report the other
- PRInt32 nonUCS2Num=0;
- PRInt32 nonUCS2Idx=0;
- for(j = 0; j < mItems; j++) {
- if(((&nsUCS2BEVerifier) != mVerifier[mItemIdx[j]]) &&
- ((&nsUCS2LEVerifier) != mVerifier[mItemIdx[j]])) {
- nonUCS2Num++;
- nonUCS2Idx = j;
- }
- }
- if(1 == nonUCS2Num) {
-#ifdef DETECTOR_DEBUG
- printf("It's %s- byte %d (%x) Test %d. The only left except UCS2LE/BE\n",
- mVerifier[mItemIdx[nonUCS2Idx]]->charset,
- i+mDbgLen,
- i+mDbgLen,
- mDbgTest);
-#endif
- Report( mVerifier[mItemIdx[nonUCS2Idx]]->charset);
- mDone = PR_TRUE;
- return mDone;
- }
- }
- }
- if(mRunSampler)
- Sample(aBuf, aLen);
-
-#ifdef DETECTOR_DEBUG
- mDbgLen += aLen;
-#endif
- return PR_FALSE;
-}
-
-void nsPSMDetector::Sample(const char* aBuf, PRUint32 aLen, PRBool aLastChance)
-{
- PRInt32 possibleCandidateNum=0;
- PRInt32 j;
- PRInt32 eucNum=0;
- for(j = 0; j < mItems; j++) {
- if(nsnull != mStatisticsData[mItemIdx[j]])
- eucNum++;
- if(((&nsUCS2BEVerifier) != mVerifier[mItemIdx[j]]) &&
- ((&nsUCS2LEVerifier) != mVerifier[mItemIdx[j]]) &&
- ((&nsGB18030Verifier) != mVerifier[mItemIdx[j]]) ) {
- possibleCandidateNum++;
- }
- }
- mRunSampler = (eucNum > 1);
- if(mRunSampler) {
- mRunSampler = mSampler.Sample(aBuf, aLen);
- if(((aLastChance && mSampler.GetSomeData()) ||
- mSampler.EnoughData())
- && (eucNum == possibleCandidateNum)) {
- mSampler.CalFreq();
-#ifdef DETECTOR_DEBUG
- printf("We cannot figure out charset from the encoding, "
- "All EUC based charset share the same encoding structure.\n"
- "Detect based on statistics");
- if(aLastChance) {
- printf(" after we receive all the data.\n");
- } else {
- printf(" after we receive enough data.\n");
- }
-#endif
- PRInt32 bestIdx = -1;
- PRInt32 eucCnt=0;
- float bestScore = 0.0f;
- for(j = 0; j < mItems; j++) {
- if((nsnull != mStatisticsData[mItemIdx[j]]) &&
- (&gBig5Statistics != mStatisticsData[mItemIdx[j]]))
- {
- float score = mSampler.GetScore(
- mStatisticsData[mItemIdx[j]]->mFirstByteFreq,
- mStatisticsData[mItemIdx[j]]->mFirstByteWeight,
- mStatisticsData[mItemIdx[j]]->mSecoundByteFreq,
- mStatisticsData[mItemIdx[j]]->mSecoundByteWeight );
-#ifdef DETECTOR_DEBUG
- printf("Differences between %s and this data is %2.8f\n",
- mVerifier[mItemIdx[j]]->charset,
- score);
-#endif
- if(( 0 == eucCnt++) || (bestScore > score )) {
- bestScore = score;
- bestIdx = j;
- } // if(( 0 == eucCnt++) || (bestScore > score ))
- } // if(nsnull != ...)
- } // for
- if (bestIdx >= 0)
- {
-#ifdef DETECTOR_DEBUG
- printf("Based on the statistic, we decide it is %s",
- mVerifier[mItemIdx[bestIdx]]->charset);
-#endif
- Report( mVerifier[mItemIdx[bestIdx]]->charset);
- mDone = PR_TRUE;
- }
- } // if (eucNum == possibleCandidateNum)
- } // if(mRunSampler)
-}
-//----------------------------------------------------------
-nsXPCOMDetector::nsXPCOMDetector(PRUint8 aItems, nsVerifier * const *aVer, nsEUCStatistics* const * aStatisticsSet)
- : nsPSMDetector( aItems, aVer, aStatisticsSet)
-{
- mObserver = nsnull;
-}
-//----------------------------------------------------------
-nsXPCOMDetector::~nsXPCOMDetector()
-{
-}
-//----------------------------------------------------------
-NS_IMETHODIMP nsXPCOMDetector::Init(
- nsICharsetDetectionObserver* aObserver)
-{
- NS_ASSERTION(mObserver == nsnull , "Init twice");
- if(nsnull == aObserver)
- return NS_ERROR_ILLEGAL_VALUE;
-
- mObserver = aObserver;
- return NS_OK;
-}
-//----------------------------------------------------------
-NS_IMETHODIMP nsXPCOMDetector::DoIt(
- const char* aBuf, PRUint32 aLen, PRBool* oDontFeedMe)
-{
- NS_ASSERTION(mObserver != nsnull , "have not init yet");
-
- if((nsnull == aBuf) || (nsnull == oDontFeedMe))
- return NS_ERROR_ILLEGAL_VALUE;
-
- this->HandleData(aBuf, aLen);
- *oDontFeedMe = mDone;
- return NS_OK;
-}
-//----------------------------------------------------------
-NS_IMETHODIMP nsXPCOMDetector::Done()
-{
- NS_ASSERTION(mObserver != nsnull , "have not init yet");
- this->DataEnd();
- return NS_OK;
-}
-//----------------------------------------------------------
-void nsXPCOMDetector::Report(const char* charset)
-{
- mObserver->Notify(charset, eSureAnswer);
-}
-//----------------------------------------------------------
-nsXPCOMStringDetector::nsXPCOMStringDetector(PRUint8 aItems, nsVerifier* const * aVer, nsEUCStatistics* const * aStatisticsSet)
- : nsPSMDetector( aItems, aVer, aStatisticsSet)
-{
-}
-//----------------------------------------------------------
-nsXPCOMStringDetector::~nsXPCOMStringDetector()
-{
-}
-//----------------------------------------------------------
-void nsXPCOMStringDetector::Report(const char* charset)
-{
- mResult = charset;
-}
-//----------------------------------------------------------
-NS_IMETHODIMP nsXPCOMStringDetector::DoIt(const char* aBuf, PRUint32 aLen,
- const char** oCharset,
- nsDetectionConfident &oConfident)
-{
- mResult = nsnull;
- this->HandleData(aBuf, aLen);
-
- if( nsnull == mResult) {
- // If we have no result and detector is done - answer no match
- if(mDone)
- {
- *oCharset = nsnull;
- oConfident = eNoAnswerMatch;
- } else {
- // if we have no answer force the Done method and find the answer
- // if we find one, return it as eBestAnswer
- this->DataEnd();
- *oCharset = mResult;
- oConfident = (mResult) ? eBestAnswer : eNoAnswerMatch ;
- }
- } else {
- // If we have answer, return as eSureAnswer
- *oCharset = mResult;
- oConfident = eSureAnswer;
- }
- this->Reset();
- return NS_OK;
-}
-
deleted file mode 100644
--- a/intl/chardet/src/nsPSMDetectors.h
+++ /dev/null
@@ -1,375 +0,0 @@
-/* -*- Mode: C; tab-width: 4; 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.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 ***** */
-#ifndef nsPSMDetectors_h__
-#define nsPSMDetectors_h__
-
-#include "nsCOMPtr.h"
-#include "nsIFactory.h"
-#include "nsVerifier.h"
-//---- for verifiers
-#include "nsSJISVerifier.h"
-#include "nsEUCJPVerifier.h"
-#include "nsCP1252Verifier.h"
-#include "nsUTF8Verifier.h"
-#include "nsISO2022JPVerifier.h"
-#include "nsISO2022KRVerifier.h"
-#include "nsISO2022CNVerifier.h"
-#include "nsHZVerifier.h"
-#include "nsUCS2BEVerifier.h"
-#include "nsUCS2LEVerifier.h"
-#include "nsBIG5Verifier.h"
-#include "nsGB2312Verifier.h"
-#include "nsGB18030Verifier.h"
-#include "nsEUCTWVerifier.h"
-#include "nsEUCKRVerifier.h"
-//---- end verifiers
-
-//#define DETECTOR_DEBUG
-
-#define MAX_VERIFIERS 16
-
-// {12BB8F1B-2389-11d3-B3BF-00805F8A6670}
-#define NS_JA_PSMDETECTOR_CID \
-{ 0x12bb8f1b, 0x2389, 0x11d3, { 0xb3, 0xbf, 0x0, 0x80, 0x5f, 0x8a, 0x66, 0x70 } }
-
-// {12BB8F1C-2389-11d3-B3BF-00805F8A6670}
-#define NS_JA_STRING_PSMDETECTOR_CID \
-{ 0x12bb8f1c, 0x2389, 0x11d3, { 0xb3, 0xbf, 0x0, 0x80, 0x5f, 0x8a, 0x66, 0x70 } }
-
-// {EA06D4E1-2B3D-11d3-B3BF-00805F8A6670}
-#define NS_KO_PSMDETECTOR_CID \
-{ 0xea06d4e1, 0x2b3d, 0x11d3, { 0xb3, 0xbf, 0x0, 0x80, 0x5f, 0x8a, 0x66, 0x70 } }
-
-// {EA06D4E2-2B3D-11d3-B3BF-00805F8A6670}
-#define NS_ZHCN_PSMDETECTOR_CID \
-{ 0xea06d4e2, 0x2b3d, 0x11d3, { 0xb3, 0xbf, 0x0, 0x80, 0x5f, 0x8a, 0x66, 0x70 } }
-
-// {EA06D4E3-2B3D-11d3-B3BF-00805F8A6670}
-#define NS_ZHTW_PSMDETECTOR_CID \
-{ 0xea06d4e3, 0x2b3d, 0x11d3, { 0xb3, 0xbf, 0x0, 0x80, 0x5f, 0x8a, 0x66, 0x70 } }
-
-
-// {EA06D4E4-2B3D-11d3-B3BF-00805F8A6670}
-#define NS_KO_STRING_PSMDETECTOR_CID \
-{ 0xea06d4e4, 0x2b3d, 0x11d3, { 0xb3, 0xbf, 0x0, 0x80, 0x5f, 0x8a, 0x66, 0x70 } }
-
-// {EA06D4E5-2B3D-11d3-B3BF-00805F8A6670}
-#define NS_ZHCN_STRING_PSMDETECTOR_CID \
-{ 0xea06d4e5, 0x2b3d, 0x11d3, { 0xb3, 0xbf, 0x0, 0x80, 0x5f, 0x8a, 0x66, 0x70 } }
-
-// {EA06D4E6-2B3D-11d3-B3BF-00805F8A6670}
-#define NS_ZHTW_STRING_PSMDETECTOR_CID \
-{ 0xea06d4e6, 0x2b3d, 0x11d3, { 0xb3, 0xbf, 0x0, 0x80, 0x5f, 0x8a, 0x66, 0x70 } }
-
-
-// {FCACEF21-2B40-11d3-B3BF-00805F8A6670}
-#define NS_ZH_STRING_PSMDETECTOR_CID \
-{ 0xfcacef21, 0x2b40, 0x11d3, { 0xb3, 0xbf, 0x0, 0x80, 0x5f, 0x8a, 0x66, 0x70 } }
-
-// {FCACEF22-2B40-11d3-B3BF-00805F8A6670}
-#define NS_CJK_STRING_PSMDETECTOR_CID \
-{ 0xfcacef22, 0x2b40, 0x11d3, { 0xb3, 0xbf, 0x0, 0x80, 0x5f, 0x8a, 0x66, 0x70 } }
-
-
-// {FCACEF23-2B40-11d3-B3BF-00805F8A6670}
-#define NS_ZH_PSMDETECTOR_CID \
-{ 0xfcacef23, 0x2b40, 0x11d3, { 0xb3, 0xbf, 0x0, 0x80, 0x5f, 0x8a, 0x66, 0x70 } }
-
-// {FCACEF24-2B40-11d3-B3BF-00805F8A6670}
-#define NS_CJK_PSMDETECTOR_CID \
-{ 0xfcacef24, 0x2b40, 0x11d3, { 0xb3, 0xbf, 0x0, 0x80, 0x5f, 0x8a, 0x66, 0x70 } }
-
-typedef struct {
- float mFirstByteFreq[94];
- float mFirstByteStdDev;
- float mFirstByteMean;
- float mFirstByteWeight;
- float mSecoundByteFreq[94];
- float mSecoundByteStdDev;
- float mSecoundByteMean;
- float mSecoundByteWeight;
-} nsEUCStatisticsMutable;
-
-typedef const nsEUCStatisticsMutable nsEUCStatistics;
-
-/*
-extern nsEUCStatistics gBig5Statistics =
-#include "Big5Statistics.h"
-// end of UECTWStatistics.h include
-
-static nsEUCStatistics gEUCTWStatistics =
-#include "EUCTWStatistics.h"
-// end of UECTWStatistics.h include
-
-static nsEUCStatistics gGB2312Statistics =
-#include "GB2312Statistics.h"
-// end of GB2312Statistics.h include
-
-static nsEUCStatistics gEUCJPStatistics =
-#include "EUCJPStatistics.h"
-// end of EUCJPStatistics.h include
-
-static nsEUCStatistics gEUCKRStatistics =
-#include "EUCKRStatistics.h"
-// end of EUCKRStatistics.h include
-*/
-
-//==========================================================
-/*
- This class won't detect x-euc-tw for now. It can only
- tell a Big5 document is not x-euc-tw , but cannot tell
- a x-euc-tw docuement is not Big5 unless we hit characters
- defined in CNS 11643 plane 2.
-
- May need improvement ....
- */
-#define ZHTW_DETECTOR_NUM_VERIFIERS 7
-extern nsVerifier* const gZhTwVerifierSet[];
-extern nsEUCStatistics* const gZhTwStatisticsSet[];
-
-#define KO_DETECTOR_NUM_VERIFIERS 6
-extern nsVerifier* const gKoVerifierSet[];
-
-#define ZHCN_DETECTOR_NUM_VERIFIERS 8
-extern nsVerifier* const gZhCnVerifierSet[];
-
-#define JA_DETECTOR_NUM_VERIFIERS 7
-extern nsVerifier* const gJaVerifierSet[];
-
-#define ZH_DETECTOR_NUM_VERIFIERS 10
-extern nsVerifier* const gZhVerifierSet[];
-extern nsEUCStatistics* const gZhStatisticsSet[];
-
-#define CJK_DETECTOR_NUM_VERIFIERS 15
-extern nsVerifier* const gCJKVerifierSet[];
-extern nsEUCStatistics* const gCJKStatisticsSet[];
-
-class nsEUCSampler {
- public:
- nsEUCSampler() {
- mTotal =0;
- mThreshold = 200;
- mState = 0;
- PRInt32 i;
- for(i=0;i<94;i++)
- mFirstByteCnt[i] = mSecondByteCnt[i]=0;
- }
- PRBool EnoughData() { return mTotal > mThreshold; }
- PRBool GetSomeData() { return mTotal > 1; }
- PRBool Sample(const char* aIn, PRUint32 aLen);
- void CalFreq();
- float GetScore(const float* aFirstByteFreq, float aFirstByteWeight,
- const float* aSecondByteFreq, float aSecondByteWeight);
- float GetScore(const float* array1, const float* array2);
- private:
- PRUint32 mTotal;
- PRUint32 mThreshold;
- PRInt8 mState;
- PRUint32 mFirstByteCnt[94];
- PRUint32 mSecondByteCnt[94];
- float mFirstByteFreq[94];
- float mSecondByteFreq[94];
-
-};
-
-/*
- In the current design, we know the following combination of verifiers
- are not good-
-
- 1. Two or more of the following verifier in one detector:
- nsEUCJPVerifer
- nsGB2312Verifier
- nsEUCKRVerifer
- nsEUCTWVerifier
- nsBIG5Verifer
-
- */
-//----------------------------------------------------------
-class nsPSMDetector {
-public :
- nsPSMDetector(PRUint8 aItems, nsVerifier* const * aVerifierSet, nsEUCStatistics* const * aStatisticsSet);
- virtual ~nsPSMDetector() {}
-
- virtual PRBool HandleData(const char* aBuf, PRUint32 aLen);
- virtual void DataEnd();
-
-protected:
- virtual void Report(const char* charset) = 0;
-
- PRUint8 mItems;
- PRUint8 mClassItems;
- PRUint8 mState[MAX_VERIFIERS];
- PRUint8 mItemIdx[MAX_VERIFIERS];
- nsVerifier* const * mVerifier;
- nsEUCStatistics* const * mStatisticsData;
- PRBool mDone;
-
- PRBool mRunSampler;
- PRBool mClassRunSampler;
-protected:
- void Reset();
- void Sample(const char* aBuf, PRUint32 aLen, PRBool aLastChance=PR_FALSE);
-private:
-#ifdef DETECTOR_DEBUG
- PRUint32 mDbgTest;
- PRUint32 mDbgLen;
-#endif
- nsEUCSampler mSampler;
-
-};
-
-class nsXPCOMDetector :
- private nsPSMDetector,
- public nsICharsetDetector // Implement the interface
-{
- NS_DECL_ISUPPORTS
-public:
- nsXPCOMDetector(PRUint8 aItems, nsVerifier* const * aVer, nsEUCStatistics* const * aStatisticsSet);
- virtual ~nsXPCOMDetector();
- NS_IMETHOD Init(nsICharsetDetectionObserver* aObserver);
- NS_IMETHOD DoIt(const char* aBuf, PRUint32 aLen, PRBool* oDontFeedMe);
- NS_IMETHOD Done();
-
-protected:
- virtual void Report(const char* charset);
-
-private:
- nsCOMPtr<nsICharsetDetectionObserver> mObserver;
-};
-
-class nsXPCOMStringDetector :
- private nsPSMDetector,
- public nsIStringCharsetDetector // Implement the interface
-{
- NS_DECL_ISUPPORTS
-public:
- nsXPCOMStringDetector(PRUint8 aItems, nsVerifier* const * aVer, nsEUCStatistics* const * aStatisticsSet);
- virtual ~nsXPCOMStringDetector();
- NS_IMETHOD DoIt(const char* aBuf, PRUint32 aLen,
- const char** oCharset,
- nsDetectionConfident &oConfident);
-protected:
- virtual void Report(const char* charset);
-private:
- const char* mResult;
-};
-
-class nsJAPSMDetector : public nsXPCOMDetector
-{
-public:
- nsJAPSMDetector()
- : nsXPCOMDetector(JA_DETECTOR_NUM_VERIFIERS, gJaVerifierSet, nsnull) {}
-};
-
-class nsJAStringPSMDetector : public nsXPCOMStringDetector
-{
-public:
- nsJAStringPSMDetector()
- : nsXPCOMStringDetector(JA_DETECTOR_NUM_VERIFIERS - 3, gJaVerifierSet, nsnull) {}
-};
-
-class nsKOPSMDetector : public nsXPCOMDetector
-{
-public:
- nsKOPSMDetector()
- : nsXPCOMDetector(KO_DETECTOR_NUM_VERIFIERS, gKoVerifierSet, nsnull){}
-};
-
-class nsKOStringPSMDetector : public nsXPCOMStringDetector
-{
-public:
- nsKOStringPSMDetector()
- : nsXPCOMStringDetector(KO_DETECTOR_NUM_VERIFIERS - 3, gKoVerifierSet, nsnull) {}
-};
-
-class nsZHTWPSMDetector : public nsXPCOMDetector
-{
-public:
- nsZHTWPSMDetector()
- : nsXPCOMDetector(ZHTW_DETECTOR_NUM_VERIFIERS, gZhTwVerifierSet, gZhTwStatisticsSet) {}
-};
-
-class nsZHTWStringPSMDetector : public nsXPCOMStringDetector
-{
-public:
- nsZHTWStringPSMDetector()
- : nsXPCOMStringDetector(ZHTW_DETECTOR_NUM_VERIFIERS - 3, gZhTwVerifierSet, gZhTwStatisticsSet) {}
-};
-
-class nsZHCNPSMDetector : public nsXPCOMDetector
-{
-public:
- nsZHCNPSMDetector()
- : nsXPCOMDetector(ZHCN_DETECTOR_NUM_VERIFIERS, gZhCnVerifierSet, nsnull) {}
-};
-
-class nsZHCNStringPSMDetector : public nsXPCOMStringDetector
-{
-public:
- nsZHCNStringPSMDetector()
- : nsXPCOMStringDetector(ZHCN_DETECTOR_NUM_VERIFIERS - 3, gZhCnVerifierSet, nsnull) {}
-};
-
-class nsZHPSMDetector : public nsXPCOMDetector
-{
-public:
- nsZHPSMDetector()
- : nsXPCOMDetector(ZH_DETECTOR_NUM_VERIFIERS, gZhVerifierSet, gZhStatisticsSet) {}
-};
-
-class nsZHStringPSMDetector : public nsXPCOMStringDetector
-{
-public:
- nsZHStringPSMDetector()
- : nsXPCOMStringDetector(ZH_DETECTOR_NUM_VERIFIERS - 3, gZhVerifierSet, gZhStatisticsSet) {}
-};
-
-class nsCJKPSMDetector : public nsXPCOMDetector
-{
-public:
- nsCJKPSMDetector()
- : nsXPCOMDetector(CJK_DETECTOR_NUM_VERIFIERS, gCJKVerifierSet, gCJKStatisticsSet) {}
-};
-
-class nsCJKStringPSMDetector : public nsXPCOMStringDetector
-{
-public:
- nsCJKStringPSMDetector()
- : nsXPCOMStringDetector(CJK_DETECTOR_NUM_VERIFIERS - 3, gCJKVerifierSet, gCJKStatisticsSet) {}
-};
-
-#endif // nsPSMDetectors_h__
deleted file mode 100644
--- a/intl/chardet/src/nsPkgInt.h
+++ /dev/null
@@ -1,88 +0,0 @@
-/* -*- Mode: C; tab-width: 4; 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.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 ***** */
-
-#ifndef nsPkgInt_h__
-#define nsPkgInt_h__
-#include "nscore.h"
-
-typedef enum {
- eIdxSft4bits = 3,
- eIdxSft8bits = 2,
- eIdxSft16bits = 1
-} nsIdxSft;
-
-typedef enum {
- eSftMsk4bits = 7,
- eSftMsk8bits = 3,
- eSftMsk16bits = 1
-} nsSftMsk;
-
-typedef enum {
- eBitSft4bits = 2,
- eBitSft8bits = 3,
- eBitSft16bits = 4
-} nsBitSft;
-
-typedef enum {
- eUnitMsk4bits = 0x0000000FL,
- eUnitMsk8bits = 0x000000FFL,
- eUnitMsk16bits = 0x0000FFFFL
-} nsUnitMsk;
-
-typedef struct nsPkgInt {
- nsIdxSft idxsft;
- nsSftMsk sftmsk;
- nsBitSft bitsft;
- nsUnitMsk unitmsk;
- const PRUint32 *data;
-} nsPkgInt;
-
-
-#define PCK16BITS(a,b) ((PRUint32)(((b) << 16) | (a)))
-
-#define PCK8BITS(a,b,c,d) PCK16BITS( ((PRUint32)(((b) << 8) | (a))), \
- ((PRUint32)(((d) << 8) | (c))))
-
-#define PCK4BITS(a,b,c,d,e,f,g,h) PCK8BITS( ((PRUint32)(((b) << 4) | (a))), \
- ((PRUint32)(((d) << 4) | (c))), \
- ((PRUint32)(((f) << 4) | (e))), \
- ((PRUint32)(((h) << 4) | (g))) )
-
-#define GETFROMPCK(i, c) \
- (((((c).data)[(i)>>(c).idxsft])>>(((i)&(c).sftmsk)<<(c).bitsft))&(c).unitmsk)
-
-#endif /* nsPkgInt_h__ */
deleted file mode 100644
--- a/intl/chardet/src/nsSJISVerifier.h
+++ /dev/null
@@ -1,105 +0,0 @@
-/* -*- Mode: C; tab-width: 4; 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.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 ***** */
-/*
- * DO NOT EDIT THIS DOCUMENT MANUALLY !!!
- * THIS FILE IS AUTOMATICALLY GENERATED BY THE TOOLS UNDER
- * mozilla/intl/chardet/tools/
- * Please contact ftang@netscape.com or mozilla-i18n@mozilla.org
- * if you have any question. Thanks
- */
-#include "nsVerifier.h"
-static const PRUint32 SJIS_cls [ 256 / 8 ] = {
-PCK4BITS(1,1,1,1,1,1,1,1), // 00 - 07
-PCK4BITS(1,1,1,1,1,1,0,0), // 08 - 0f
-PCK4BITS(1,1,1,1,1,1,1,1), // 10 - 17
-PCK4BITS(1,1,1,0,1,1,1,1), // 18 - 1f
-PCK4BITS(1,1,1,1,1,1,1,1), // 20 - 27
-PCK4BITS(1,1,1,1,1,1,1,1), // 28 - 2f
-PCK4BITS(1,1,1,1,1,1,1,1), // 30 - 37
-PCK4BITS(1,1,1,1,1,1,1,1), // 38 - 3f
-PCK4BITS(2,2,2,2,2,2,2,2), // 40 - 47
-PCK4BITS(2,2,2,2,2,2,2,2), // 48 - 4f
-PCK4BITS(2,2,2,2,2,2,2,2), // 50 - 57
-PCK4BITS(2,2,2,2,2,2,2,2), // 58 - 5f
-PCK4BITS(2,2,2,2,2,2,2,2), // 60 - 67
-PCK4BITS(2,2,2,2,2,2,2,2), // 68 - 6f
-PCK4BITS(2,2,2,2,2,2,2,2), // 70 - 77
-PCK4BITS(2,2,2,2,2,2,2,1), // 78 - 7f
-PCK4BITS(3,3,3,3,3,3,3,3), // 80 - 87
-PCK4BITS(3,3,3,3,3,3,3,3), // 88 - 8f
-PCK4BITS(3,3,3,3,3,3,3,3), // 90 - 97
-PCK4BITS(3,3,3,3,3,3,3,3), // 98 - 9f
-PCK4BITS(4,2,2,2,2,2,2,2), // a0 - a7
-PCK4BITS(2,2,2,2,2,2,2,2), // a8 - af
-PCK4BITS(2,2,2,2,2,2,2,2), // b0 - b7
-PCK4BITS(2,2,2,2,2,2,2,2), // b8 - bf
-PCK4BITS(2,2,2,2,2,2,2,2), // c0 - c7
-PCK4BITS(2,2,2,2,2,2,2,2), // c8 - cf
-PCK4BITS(2,2,2,2,2,2,2,2), // d0 - d7
-PCK4BITS(2,2,2,2,2,2,2,2), // d8 - df
-PCK4BITS(3,3,3,3,3,3,3,3), // e0 - e7
-PCK4BITS(3,3,3,3,3,4,4,4), // e8 - ef
-PCK4BITS(4,4,4,4,4,4,4,4), // f0 - f7
-PCK4BITS(4,4,4,4,4,0,0,0) // f8 - ff
-};
-
-
-static PRUint32 const SJIS_st [ 3] = {
-PCK4BITS(eError,eStart,eStart, 3,eError,eError,eError,eError),//00-07
-PCK4BITS(eError,eError,eError,eError,eItsMe,eItsMe,eItsMe,eItsMe),//08-0f
-PCK4BITS(eItsMe,eItsMe,eError,eError,eStart,eStart,eStart,eStart) //10-17
-};
-
-
-static nsVerifier nsSJISVerifier = {
- "Shift_JIS",
- {
- eIdxSft4bits,
- eSftMsk4bits,
- eBitSft4bits,
- eUnitMsk4bits,
- SJIS_cls
- },
- 6,
- {
- eIdxSft4bits,
- eSftMsk4bits,
- eBitSft4bits,
- eUnitMsk4bits,
- SJIS_st
- }
-};
deleted file mode 100644
--- a/intl/chardet/src/nsUCS2BEVerifier.h
+++ /dev/null
@@ -1,109 +0,0 @@
-/* -*- Mode: C; tab-width: 4; 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.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 ***** */
-/*
- * DO NOT EDIT THIS DOCUMENT MANUALLY !!!
- * THIS FILE IS AUTOMATICALLY GENERATED BY THE TOOLS UNDER
- * mozilla/intl/chardet/tools/
- * Please contact ftang@netscape.com or mozilla-i18n@mozilla.org
- * if you have any question. Thanks
- */
-#include "nsVerifier.h"
-static const PRUint32 UCS2BE_cls [ 256 / 8 ] = {
-PCK4BITS(0,0,0,0,0,0,0,0), // 00 - 07
-PCK4BITS(0,0,1,0,0,2,0,0), // 08 - 0f
-PCK4BITS(0,0,0,0,0,0,0,0), // 10 - 17
-PCK4BITS(0,0,0,3,0,0,0,0), // 18 - 1f
-PCK4BITS(0,0,0,0,0,0,0,0), // 20 - 27
-PCK4BITS(0,3,3,3,3,3,0,0), // 28 - 2f
-PCK4BITS(0,0,0,0,0,0,0,0), // 30 - 37
-PCK4BITS(0,0,0,0,0,0,0,0), // 38 - 3f
-PCK4BITS(0,0,0,0,0,0,0,0), // 40 - 47
-PCK4BITS(0,0,0,0,0,0,0,0), // 48 - 4f
-PCK4BITS(0,0,0,0,0,0,0,0), // 50 - 57
-PCK4BITS(0,0,0,0,0,0,0,0), // 58 - 5f
-PCK4BITS(0,0,0,0,0,0,0,0), // 60 - 67
-PCK4BITS(0,0,0,0,0,0,0,0), // 68 - 6f
-PCK4BITS(0,0,0,0,0,0,0,0), // 70 - 77
-PCK4BITS(0,0,0,0,0,0,0,0), // 78 - 7f
-PCK4BITS(0,0,0,0,0,0,0,0), // 80 - 87
-PCK4BITS(0,0,0,0,0,0,0,0), // 88 - 8f
-PCK4BITS(0,0,0,0,0,0,0,0), // 90 - 97
-PCK4BITS(0,0,0,0,0,0,0,0), // 98 - 9f
-PCK4BITS(0,0,0,0,0,0,0,0), // a0 - a7
-PCK4BITS(0,0,0,0,0,0,0,0), // a8 - af
-PCK4BITS(0,0,0,0,0,0,0,0), // b0 - b7
-PCK4BITS(0,0,0,0,0,0,0,0), // b8 - bf
-PCK4BITS(0,0,0,0,0,0,0,0), // c0 - c7
-PCK4BITS(0,0,0,0,0,0,0,0), // c8 - cf
-PCK4BITS(0,0,0,0,0,0,0,0), // d0 - d7
-PCK4BITS(0,0,0,0,0,0,0,0), // d8 - df
-PCK4BITS(0,0,0,0,0,0,0,0), // e0 - e7
-PCK4BITS(0,0,0,0,0,0,0,0), // e8 - ef
-PCK4BITS(0,0,0,0,0,0,0,0), // f0 - f7
-PCK4BITS(0,0,0,0,0,0,4,5) // f8 - ff
-};
-
-
-static const PRUint32 UCS2BE_st [ 7] = {
-PCK4BITS( 5, 7, 7,eError, 4, 3,eError,eError),//00-07
-PCK4BITS(eError,eError,eError,eError,eItsMe,eItsMe,eItsMe,eItsMe),//08-0f
-PCK4BITS(eItsMe,eItsMe, 6, 6, 6, 6,eError,eError),//10-17
-PCK4BITS( 6, 6, 6, 6, 6,eItsMe, 6, 6),//18-1f
-PCK4BITS( 6, 6, 6, 6, 5, 7, 7,eError),//20-27
-PCK4BITS( 5, 8, 6, 6,eError, 6, 6, 6),//28-2f
-PCK4BITS( 6, 6, 6, 6,eError,eError,eStart,eStart) //30-37
-};
-
-
-static nsVerifier nsUCS2BEVerifier = {
- "UTF-16BE",
- {
- eIdxSft4bits,
- eSftMsk4bits,
- eBitSft4bits,
- eUnitMsk4bits,
- UCS2BE_cls
- },
- 6,
- {
- eIdxSft4bits,
- eSftMsk4bits,
- eBitSft4bits,
- eUnitMsk4bits,
- UCS2BE_st
- }
-};
deleted file mode 100644
--- a/intl/chardet/src/nsUCS2LEVerifier.h
+++ /dev/null
@@ -1,109 +0,0 @@
-/* -*- Mode: C; tab-width: 4; 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.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 ***** */
-/*
- * DO NOT EDIT THIS DOCUMENT MANUALLY !!!
- * THIS FILE IS AUTOMATICALLY GENERATED BY THE TOOLS UNDER
- * mozilla/intl/chardet/tools/
- * Please contact ftang@netscape.com or mozilla-i18n@mozilla.org
- * if you have any question. Thanks
- */
-#include "nsVerifier.h"
-static const PRUint32 UCS2LE_cls [ 256 / 8 ] = {
-PCK4BITS(0,0,0,0,0,0,0,0), // 00 - 07
-PCK4BITS(0,0,1,0,0,2,0,0), // 08 - 0f
-PCK4BITS(0,0,0,0,0,0,0,0), // 10 - 17
-PCK4BITS(0,0,0,3,0,0,0,0), // 18 - 1f
-PCK4BITS(0,0,0,0,0,0,0,0), // 20 - 27
-PCK4BITS(0,3,3,3,3,3,0,0), // 28 - 2f
-PCK4BITS(0,0,0,0,0,0,0,0), // 30 - 37
-PCK4BITS(0,0,0,0,0,0,0,0), // 38 - 3f
-PCK4BITS(0,0,0,0,0,0,0,0), // 40 - 47
-PCK4BITS(0,0,0,0,0,0,0,0), // 48 - 4f
-PCK4BITS(0,0,0,0,0,0,0,0), // 50 - 57
-PCK4BITS(0,0,0,0,0,0,0,0), // 58 - 5f
-PCK4BITS(0,0,0,0,0,0,0,0), // 60 - 67
-PCK4BITS(0,0,0,0,0,0,0,0), // 68 - 6f
-PCK4BITS(0,0,0,0,0,0,0,0), // 70 - 77
-PCK4BITS(0,0,0,0,0,0,0,0), // 78 - 7f
-PCK4BITS(0,0,0,0,0,0,0,0), // 80 - 87
-PCK4BITS(0,0,0,0,0,0,0,0), // 88 - 8f
-PCK4BITS(0,0,0,0,0,0,0,0), // 90 - 97
-PCK4BITS(0,0,0,0,0,0,0,0), // 98 - 9f
-PCK4BITS(0,0,0,0,0,0,0,0), // a0 - a7
-PCK4BITS(0,0,0,0,0,0,0,0), // a8 - af
-PCK4BITS(0,0,0,0,0,0,0,0), // b0 - b7
-PCK4BITS(0,0,0,0,0,0,0,0), // b8 - bf
-PCK4BITS(0,0,0,0,0,0,0,0), // c0 - c7
-PCK4BITS(0,0,0,0,0,0,0,0), // c8 - cf
-PCK4BITS(0,0,0,0,0,0,0,0), // d0 - d7
-PCK4BITS(0,0,0,0,0,0,0,0), // d8 - df
-PCK4BITS(0,0,0,0,0,0,0,0), // e0 - e7
-PCK4BITS(0,0,0,0,0,0,0,0), // e8 - ef
-PCK4BITS(0,0,0,0,0,0,0,0), // f0 - f7
-PCK4BITS(0,0,0,0,0,0,4,5) // f8 - ff
-};
-
-
-static const PRUint32 UCS2LE_st [ 7] = {
-PCK4BITS( 6, 6, 7, 6, 4, 3,eError,eError),//00-07
-PCK4BITS(eError,eError,eError,eError,eItsMe,eItsMe,eItsMe,eItsMe),//08-0f
-PCK4BITS(eItsMe,eItsMe, 5, 5, 5,eError,eItsMe,eError),//10-17
-PCK4BITS( 5, 5, 5,eError, 5,eError, 6, 6),//18-1f
-PCK4BITS( 7, 6, 8, 8, 5, 5, 5,eError),//20-27
-PCK4BITS( 5, 5, 5,eError,eError,eError, 5, 5),//28-2f
-PCK4BITS( 5, 5, 5,eError, 5,eError,eStart,eStart) //30-37
-};
-
-
-static nsVerifier nsUCS2LEVerifier = {
- "UTF-16LE",
- {
- eIdxSft4bits,
- eSftMsk4bits,
- eBitSft4bits,
- eUnitMsk4bits,
- UCS2LE_cls
- },
- 6,
- {
- eIdxSft4bits,
- eSftMsk4bits,
- eBitSft4bits,
- eUnitMsk4bits,
- UCS2LE_st
- }
-};
deleted file mode 100644
--- a/intl/chardet/src/nsUTF8Verifier.h
+++ /dev/null
@@ -1,128 +0,0 @@
-/* -*- Mode: C; tab-width: 4; 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.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 ***** */
-/*
- * DO NOT EDIT THIS DOCUMENT MANUALLY !!!
- * THIS FILE IS AUTOMATICALLY GENERATED BY THE TOOLS UNDER
- * mozilla/intl/chardet/tools/
- * Please contact ftang@netscape.com or mozilla-i18n@mozilla.org
- * if you have any question. Thanks
- */
-#include "nsVerifier.h"
-static const PRUint32 UTF8_cls [ 256 / 8 ] = {
-PCK4BITS(1,1,1,1,1,1,1,1), // 00 - 07
-PCK4BITS(1,1,1,1,1,1,0,0), // 08 - 0f
-PCK4BITS(1,1,1,1,1,1,1,1), // 10 - 17
-PCK4BITS(1,1,1,0,1,1,1,1), // 18 - 1f
-PCK4BITS(1,1,1,1,1,1,1,1), // 20 - 27
-PCK4BITS(1,1,1,1,1,1,1,1), // 28 - 2f
-PCK4BITS(1,1,1,1,1,1,1,1), // 30 - 37
-PCK4BITS(1,1,1,1,1,1,1,1), // 38 - 3f
-PCK4BITS(1,1,1,1,1,1,1,1), // 40 - 47
-PCK4BITS(1,1,1,1,1,1,1,1), // 48 - 4f
-PCK4BITS(1,1,1,1,1,1,1,1), // 50 - 57
-PCK4BITS(1,1,1,1,1,1,1,1), // 58 - 5f
-PCK4BITS(1,1,1,1,1,1,1,1), // 60 - 67
-PCK4BITS(1,1,1,1,1,1,1,1), // 68 - 6f
-PCK4BITS(1,1,1,1,1,1,1,1), // 70 - 77
-PCK4BITS(1,1,1,1,1,1,1,1), // 78 - 7f
-PCK4BITS(2,2,2,2,3,3,3,3), // 80 - 87
-PCK4BITS(4,4,4,4,4,4,4,4), // 88 - 8f
-PCK4BITS(4,4,4,4,4,4,4,4), // 90 - 97
-PCK4BITS(4,4,4,4,4,4,4,4), // 98 - 9f
-PCK4BITS(5,5,5,5,5,5,5,5), // a0 - a7
-PCK4BITS(5,5,5,5,5,5,5,5), // a8 - af
-PCK4BITS(5,5,5,5,5,5,5,5), // b0 - b7
-PCK4BITS(5,5,5,5,5,5,5,5), // b8 - bf
-PCK4BITS(0,0,6,6,6,6,6,6), // c0 - c7
-PCK4BITS(6,6,6,6,6,6,6,6), // c8 - cf
-PCK4BITS(6,6,6,6,6,6,6,6), // d0 - d7
-PCK4BITS(6,6,6,6,6,6,6,6), // d8 - df
-PCK4BITS(7,8,8,8,8,8,8,8), // e0 - e7
-PCK4BITS(8,8,8,8,8,9,8,8), // e8 - ef
-PCK4BITS(10,11,11,11,11,11,11,11), // f0 - f7
-PCK4BITS(12,13,13,13,14,15,0,0) // f8 - ff
-};
-
-
-static const PRUint32 UTF8_st [ 26] = {
-PCK4BITS(eError,eStart,eError,eError,eError,eError, 12, 10),//00-07
-PCK4BITS( 9, 11, 8, 7, 6, 5, 4, 3),//08-0f
-PCK4BITS(eError,eError,eError,eError,eError,eError,eError,eError),//10-17
-PCK4BITS(eError,eError,eError,eError,eError,eError,eError,eError),//18-1f
-PCK4BITS(eItsMe,eItsMe,eItsMe,eItsMe,eItsMe,eItsMe,eItsMe,eItsMe),//20-27
-PCK4BITS(eItsMe,eItsMe,eItsMe,eItsMe,eItsMe,eItsMe,eItsMe,eItsMe),//28-2f
-PCK4BITS(eError,eError, 5, 5, 5, 5,eError,eError),//30-37
-PCK4BITS(eError,eError,eError,eError,eError,eError,eError,eError),//38-3f
-PCK4BITS(eError,eError,eError, 5, 5, 5,eError,eError),//40-47
-PCK4BITS(eError,eError,eError,eError,eError,eError,eError,eError),//48-4f
-PCK4BITS(eError,eError, 7, 7, 7, 7,eError,eError),//50-57
-PCK4BITS(eError,eError,eError,eError,eError,eError,eError,eError),//58-5f
-PCK4BITS(eError,eError,eError,eError, 7, 7,eError,eError),//60-67
-PCK4BITS(eError,eError,eError,eError,eError,eError,eError,eError),//68-6f
-PCK4BITS(eError,eError, 9, 9, 9, 9,eError,eError),//70-77
-PCK4BITS(eError,eError,eError,eError,eError,eError,eError,eError),//78-7f
-PCK4BITS(eError,eError,eError,eError,eError, 9,eError,eError),//80-87
-PCK4BITS(eError,eError,eError,eError,eError,eError,eError,eError),//88-8f
-PCK4BITS(eError,eError, 12, 12, 12, 12,eError,eError),//90-97
-PCK4BITS(eError,eError,eError,eError,eError,eError,eError,eError),//98-9f
-PCK4BITS(eError,eError,eError,eError,eError, 12,eError,eError),//a0-a7
-PCK4BITS(eError,eError,eError,eError,eError,eError,eError,eError),//a8-af
-PCK4BITS(eError,eError, 12, 12, 12,eError,eError,eError),//b0-b7
-PCK4BITS(eError,eError,eError,eError,eError,eError,eError,eError),//b8-bf
-PCK4BITS(eError,eError,eStart,eStart,eStart,eStart,eError,eError),//c0-c7
-PCK4BITS(eError,eError,eError,eError,eError,eError,eError,eError) //c8-cf
-};
-
-
-static nsVerifier nsUTF8Verifier = {
- "UTF-8",
- {
- eIdxSft4bits,
- eSftMsk4bits,
- eBitSft4bits,
- eUnitMsk4bits,
- UTF8_cls
- },
- 16,
- {
- eIdxSft4bits,
- eSftMsk4bits,
- eBitSft4bits,
- eUnitMsk4bits,
- UTF8_st
- }
-};
deleted file mode 100644
--- a/intl/chardet/src/nsVerifier.h
+++ /dev/null
@@ -1,61 +0,0 @@
-/* -*- Mode: C; tab-width: 4; 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.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 ***** */
-#ifndef nsVerifier_h__
-#define nsVerifier_h__
-
-#include "nsPkgInt.h"
-
-typedef enum {
- eStart = 0,
- eError = 1,
- eItsMe = 2
-} nsSMState;
-
-typedef struct _nsVerifierMutable {
- const char* charset;
- nsPkgInt cclass;
- PRUint32 stFactor; // >= number of cclass.
- nsPkgInt states;
-} nsVerifierMutable;
-
-typedef const nsVerifierMutable nsVerifier;
-
-#define GETCLASS(v,c) GETFROMPCK(((unsigned char)(c)), (v)->cclass)
-#define GETNEXTSTATE(v,c,s) \
- GETFROMPCK((s)*((v)->stFactor)+GETCLASS((v),(c)), ((v)->states))
-
-#endif /* nsVerifier_h__ */
--- a/intl/chardet/tests/DetectCharset.cpp
+++ b/intl/chardet/tests/DetectCharset.cpp
@@ -347,43 +347,53 @@ int main(int argc, char** argv) {
nsSimpleStatis js(0xa4,0xa5, (float)0.45006, "EUC-JP");
nsStatis* stat[2] = {&ks, &js};
PRUint32 i;
do
{
sz = read(0, buf, bs);
if(sz > 0) {
if(! done) {
-printf("call DoIt %d\n",sz);
+#ifdef DEBUG_DetectCharset
+ printf("call DoIt %d\n",sz);
+#endif
rev = det->DoIt( buf, sz, &done);
-printf("DoIt return Done = %d\n",done);
+#ifdef DEBUG_DetectCharset
+ printf("DoIt return Done = %d\n",done);
+#endif
if(NS_FAILED(rev))
{
printf("XPCOM ERROR CODE = %x\n", rev);
return(-1);
}
}
for(i=0;i<2;i++)
stat[i]->HandleData(buf, sz);
}
// } while((sz > 0) && (!done) );
} while(sz > 0);
if(!done)
{
-printf("Done = %d\n",done);
-printf("call Done %d\n",sz);
+#ifdef DEBUG_DetectCharset
+ printf("Done = %d\n",done);
+ printf("call Done %d\n",sz);
+#endif
rev = det->Done();
if(NS_FAILED(rev))
{
printf("XPCOM ERROR CODE = %x\n", rev);
return(-1);
}
}
for(i=0;i<2;i++) {
stat[i]->DataEnd();
stat[i]->Report();
}
-printf( "Done\n");
+#ifdef DEBUG_DetectCharset
+ printf( "Done\n");
+#endif
NS_IF_RELEASE(det);
-printf( "Done 2\n");
+#ifdef DEBUG_DetectCharset
+ printf( "Done 2\n");
+#endif
return (0);
}