Тотальная неудачница и убийца жёстких дисков.
#post-id: 3547-17-43
#original-date: 12.04.2010 Mon
#original-time: 5:43 PM
#original-day:  3547
#original-host: WinXP Prof SP3 (Build 2600)

Индусы из Microsoft жгут. Вот фрагмент кода-примера:



df.fWide - это BOOL. Тоесть всё что НЕ РАВНО 0 - это TRUE. 0 - FALSE. А они сравнивают не с нулём, а с единицей. А если там будет 2? А если 200? Всё это тоже TRUE, но программа малость глюкнет. И где такому учат?

Или вот ещё шедевр:



Программер начала правильно, копируя данные по смещению, заданному в df.pFiles. Но размер данных он вычисляет очень странно, предполагая, что в буфере данные пойдёт СРАЗУ после структуры. А если нет? Тогда программа пойдёт читать за пределы буфера, где может быть всё что угодно. Нет, в условиях double NULL terminated string это не критично, но там дальше может быть защищённая страница, и будет исключение...

Весь опус:
http://support.microsoft.com/kb/231721