| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 2008 Nokia Corporation and/or its subsidiary(-ies) | 2 * Copyright (C) 2008 Nokia Corporation and/or its subsidiary(-ies) |
| 3 * | 3 * |
| 4 * This is part of HarfBuzz, an OpenType Layout engine library. | 4 * This is part of HarfBuzz, an OpenType Layout engine library. |
| 5 * | 5 * |
| 6 * Permission is hereby granted, without written agreement and without | 6 * Permission is hereby granted, without written agreement and without |
| 7 * license or royalty fees, to use, copy, modify, and distribute this | 7 * license or royalty fees, to use, copy, modify, and distribute this |
| 8 * software and its documentation for any purpose, provided that the | 8 * software and its documentation for any purpose, provided that the |
| 9 * above copyright notice and the following two paragraphs appear in | 9 * above copyright notice and the following two paragraphs appear in |
| 10 * all copies of this software. | 10 * all copies of this software. |
| (...skipping 406 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 417 item->attributes[i].clusterStart = FALSE; | 417 item->attributes[i].clusterStart = FALSE; |
| 418 item->attributes[i].justification = 0; | 418 item->attributes[i].justification = 0; |
| 419 item->attributes[i].zeroWidth = FALSE; | 419 item->attributes[i].zeroWidth = FALSE; |
| 420 MMDEBUG(" %d: %4x property=%x", i, reordered[i], properties[i]); | 420 MMDEBUG(" %d: %4x property=%x", i, reordered[i], properties[i]); |
| 421 } | 421 } |
| 422 | 422 |
| 423 /* now we have the syllable in the right order, and can start running it thr
ough open type. */ | 423 /* now we have the syllable in the right order, and can start running it thr
ough open type. */ |
| 424 | 424 |
| 425 #ifndef NO_OPENTYPE | 425 #ifndef NO_OPENTYPE |
| 426 if (openType) { | 426 if (openType) { |
| 427 unsigned short logClusters[32]; | |
| 428 hb_uint32 where[32]; | 427 hb_uint32 where[32]; |
| 429 | 428 |
| 430 for (i = 0; i < len; ++i) | |
| 431 logClusters[i] = i; | |
| 432 | |
| 433 for (i = 0; i < len; ++i) { | 429 for (i = 0; i < len; ++i) { |
| 434 where[i] = ~(PreSubstProperty | 430 where[i] = ~(PreSubstProperty |
| 435 | BelowSubstProperty | 431 | BelowSubstProperty |
| 436 | AboveSubstProperty | 432 | AboveSubstProperty |
| 437 | PostSubstProperty | 433 | PostSubstProperty |
| 438 | CligProperty | 434 | CligProperty |
| 439 | PositioningProperties); | 435 | PositioningProperties); |
| 440 if (properties[i] & PreForm) | 436 if (properties[i] & PreForm) |
| 441 where[i] &= ~PreFormProperty; | 437 where[i] &= ~PreFormProperty; |
| 442 if (properties[i] & BelowForm) | 438 if (properties[i] & BelowForm) |
| (...skipping 90 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 533 i++; | 529 i++; |
| 534 while (i < boundary) { | 530 while (i < boundary) { |
| 535 attributes[i].charStop = FALSE; | 531 attributes[i].charStop = FALSE; |
| 536 ++uc; | 532 ++uc; |
| 537 ++i; | 533 ++i; |
| 538 } | 534 } |
| 539 assert(i == boundary); | 535 assert(i == boundary); |
| 540 } | 536 } |
| 541 } | 537 } |
| 542 | 538 |
| OLD | NEW |