jdk/src/java.desktop/share/native/libfontmanager/layout/MorphTables2.cpp
changeset 33299 78f5508cde89
parent 31694 dd8aceb1d10e
equal deleted inserted replaced
33298:617fcb4b52f8 33299:78f5508cde89
   195               if (length & 0x03) { // incorrect alignment for 32 bit tables
   195               if (length & 0x03) { // incorrect alignment for 32 bit tables
   196                   success = LE_MEMORY_ALLOCATION_ERROR; // as good a choice as any
   196                   success = LE_MEMORY_ALLOCATION_ERROR; // as good a choice as any
   197                   return;
   197                   return;
   198               }
   198               }
   199               subtableHeader.addOffset(length, success); // Don't addOffset for the last entry.
   199               subtableHeader.addOffset(length, success); // Don't addOffset for the last entry.
       
   200               if (LE_FAILURE(success)) break;
   200             }
   201             }
   201             le_uint32 coverage = SWAPL(subtableHeader->coverage);
   202             le_uint32 coverage = SWAPL(subtableHeader->coverage);
   202             FeatureFlags subtableFeatures = SWAPL(subtableHeader->subtableFeatures);
   203             FeatureFlags subtableFeatures = SWAPL(subtableHeader->subtableFeatures);
   203             // should check coverage more carefully...
   204             // should check coverage more carefully...
   204             if (((coverage & scfIgnoreVt2) || !(coverage & scfVertical2)) && (subtableFeatures & flag) != 0) {
   205             if (((coverage & scfIgnoreVt2) || !(coverage & scfVertical2)) && (subtableFeatures & flag) != 0) {
   210 
   211 
   211 void MorphSubtableHeader2::process(const LEReferenceTo<MorphSubtableHeader2> &base, LEGlyphStorage &glyphStorage, LEErrorCode &success) const
   212 void MorphSubtableHeader2::process(const LEReferenceTo<MorphSubtableHeader2> &base, LEGlyphStorage &glyphStorage, LEErrorCode &success) const
   212 {
   213 {
   213     SubtableProcessor2 *processor = NULL;
   214     SubtableProcessor2 *processor = NULL;
   214 
   215 
       
   216     if (LE_FAILURE(success)) return;
       
   217 
   215     switch (SWAPL(coverage) & scfTypeMask2)
   218     switch (SWAPL(coverage) & scfTypeMask2)
   216     {
   219     {
   217     case mstIndicRearrangement:
   220     case mstIndicRearrangement:
   218         processor = new IndicRearrangementProcessor2(base, success);
   221         processor = new IndicRearrangementProcessor2(base, success);
   219         break;
   222         break;