Blob Blame History Raw
--- icu.orig/source/layout/DeviceTables.cpp	2006-10-18 09:05:20.000000000 +0100
+++ icu/source/layout/DeviceTables.cpp	2006-11-08 09:08:09.000000000 +0000
@@ -22,7 +22,7 @@
     le_uint16 format = SWAPW(deltaFormat) - 1;
     le_int16 result = 0;
     
-    if (ppem >= start && ppem <= SWAPW(endSize)) {
+    if (ppem >= start && ppem <= SWAPW(endSize) && format < sizeof(fieldBits)/sizeof(fieldBits[0])) {
         le_uint16 sizeIndex = ppem - start;
         le_uint16 bits = fieldBits[format];
         le_uint16 count = 16 / bits;