diff -up poppler-0.8.6/poppler/CharCodeToUnicode.cc.liga-fix poppler-0.8.6/poppler/CharCodeToUnicode.cc --- poppler-0.8.6/poppler/CharCodeToUnicode.cc.liga-fix 2008-08-27 17:40:22.000000000 +0300 +++ poppler-0.8.6/poppler/CharCodeToUnicode.cc 2008-08-27 17:41:22.000000000 +0300 @@ -496,7 +496,7 @@ int CharCodeToUnicode::mapToUnicode(Char *u = &map[c]; return 1; } - for (i = 0; i < sMapLen; ++i) { + for (i = sMapLen - 1; i >= 0; --i) { // in reverse so CMap takes precedence if (sMap[i].c == c) { *u = sMap[i].u; for(int k = 0; k < sMap[i].len; ++k)