LINUX.ORG.RU

История изменений

Исправление SZT, (текущая версия) :

Но до этой команды, нет никакого извлечения структуры gif:

А оно и не должно быть до этой проверки. Это извлечение структуры

  memcpy (&a, dataptr, sizeof(gif));
идет сразу после условия. Надо сначала проверить, есть ли в нашем файле достаточное количество байт, чтобы мы могли прочитать из него в структуру gif, и только после этого через memcpy копируется часть файла в структуру и разбирается. Если размер структуры gif больше чем тот файл, разбор которого мы осуществляем, мы прекращаем парсинг этой самой структуры, т.к. смысла в этом никакого нет, goto fail;.

Исходная версия SZT, :

Но до этой команды, нет никакого извлечения структуры gif:

А оно и не должно быть до этой проверки.Это извлечение структуры

  memcpy (&a, dataptr, sizeof(gif));
идет сразу после условия. Надо сначала проверить, есть ли в нашем файле достаточное количество байт, чтобы мы могли прочитать структуру gif, и только после этого через memcpy копируется часть файла в структуру и разбирается.