aboutsummaryrefslogtreecommitdiff
path: root/src/share/native/sun
diff options
context:
space:
mode:
authorasaha <none@none>2014-06-03 08:32:34 -0700
committerasaha <none@none>2014-06-03 08:32:34 -0700
commit0a5a6e7371a08cfe5a3e43931502418502db07ad (patch)
tree32d58c710386f626f52f4c674d2c180596e055aa /src/share/native/sun
parent7e658e15c1e27a99668f5c5233ee09e81cfd9f11 (diff)
parent57ac5a110f8b4dfeb6d3305b2d35887066b9be04 (diff)
Merge
Diffstat (limited to 'src/share/native/sun')
-rw-r--r--src/share/native/sun/font/layout/IndicLayoutEngine.cpp2
-rw-r--r--src/share/native/sun/font/layout/IndicReordering.cpp6
-rw-r--r--src/share/native/sun/font/layout/IndicReordering.h2
-rw-r--r--src/share/native/sun/font/layout/LEScripts.h6
4 files changed, 7 insertions, 9 deletions
diff --git a/src/share/native/sun/font/layout/IndicLayoutEngine.cpp b/src/share/native/sun/font/layout/IndicLayoutEngine.cpp
index d45ebb659..c50fbae61 100644
--- a/src/share/native/sun/font/layout/IndicLayoutEngine.cpp
+++ b/src/share/native/sun/font/layout/IndicLayoutEngine.cpp
@@ -151,7 +151,7 @@ le_int32 IndicOpenTypeLayoutEngine::characterProcessing(const LEUnicode chars[],
le_int32 outCharCount;
if (fVersion2) {
_LETRACE("v2process");
- outCharCount = IndicReordering::v2process(&chars[offset], count, fScriptCode, outChars, glyphStorage);
+ outCharCount = IndicReordering::v2process(&chars[offset], count, fScriptCode, outChars, glyphStorage, success);
} else {
_LETRACE("reorder");
outCharCount = IndicReordering::reorder(&chars[offset], count, fScriptCode, outChars, glyphStorage, &fMPreFixups, success);
diff --git a/src/share/native/sun/font/layout/IndicReordering.cpp b/src/share/native/sun/font/layout/IndicReordering.cpp
index 7753e2465..22bbb7cf8 100644
--- a/src/share/native/sun/font/layout/IndicReordering.cpp
+++ b/src/share/native/sun/font/layout/IndicReordering.cpp
@@ -1096,9 +1096,13 @@ void IndicReordering::finalReordering(LEGlyphStorage &glyphStorage, le_int32 cou
le_int32 IndicReordering::v2process(const LEUnicode *chars, le_int32 charCount, le_int32 scriptCode,
- LEUnicode *outChars, LEGlyphStorage &glyphStorage)
+ LEUnicode *outChars, LEGlyphStorage &glyphStorage, LEErrorCode& success)
{
const IndicClassTable *classTable = IndicClassTable::getScriptClassTable(scriptCode);
+ if (classTable == NULL) {
+ success = LE_MEMORY_ALLOCATION_ERROR;
+ return 0;
+ }
DynamicProperties dynProps[INDIC_BLOCK_SIZE];
IndicReordering::getDynamicProperties(dynProps,classTable);
diff --git a/src/share/native/sun/font/layout/IndicReordering.h b/src/share/native/sun/font/layout/IndicReordering.h
index f90bf1ba2..ca77fe0c6 100644
--- a/src/share/native/sun/font/layout/IndicReordering.h
+++ b/src/share/native/sun/font/layout/IndicReordering.h
@@ -181,7 +181,7 @@ public:
static void adjustMPres(MPreFixups *mpreFixups, LEGlyphStorage &glyphStorage, LEErrorCode& success);
static le_int32 v2process(const LEUnicode *theChars, le_int32 charCount, le_int32 scriptCode,
- LEUnicode *outChars, LEGlyphStorage &glyphStorage);
+ LEUnicode *outChars, LEGlyphStorage &glyphStorage, LEErrorCode& success);
static const FeatureMap *getFeatureMap(le_int32 &count);
diff --git a/src/share/native/sun/font/layout/LEScripts.h b/src/share/native/sun/font/layout/LEScripts.h
index 5524ef31a..bb1b07e03 100644
--- a/src/share/native/sun/font/layout/LEScripts.h
+++ b/src/share/native/sun/font/layout/LEScripts.h
@@ -263,12 +263,6 @@ enum ScriptCodes {
tirhScriptCode = 158,
/**
- * @stable ICU 52
- */
- aghbScriptCode = 159,
- mahjScriptCode = 160,
-
-/**
* @stable ICU 2.2
*/
scriptCodeCount