Показать сообщение отдельно
Старый 15.06.2010, 15:10   #1  
Hyper is offline
Hyper
Участник
Соотечественники
 
163 / 29 (1) +++
Регистрация: 09.10.2003
Баг в классе SysPDFFontType2 (формирование PDF)
AX 2009 5.0.1500.1313

Столкнулся с тем, что один из отчетов отказывался печататься в pdf-файл, выдавая ошибку "Attempting to read illegal array index." в методе getCMap класса SysPDFFontType2.
В строке "widthsC.value(charIdx, any2int(( cValue*72 + (pixPerInchX>>1))/ pixPerInchX))" charIdx был равен 0.

Для решения проблемы необходимо заменить строку
X++:
            if (res != 0xFFFFFFFF)
на
X++:
            if (res != -1)

Вообще интересно, что следующие строки выдают разный результат:
X++:
info(strfmt("%1", hex2int("FFFFFFFF")));    // -1
info(strfmt("%1", 0xFFFFFFFF));             // 4294967295