Няшная / Говнокод #17748 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
UInt64 unpackSizeSpec =
        p->UnpackPositions[p->FolderStartFileIndex[folderIndex + 1]] -
        p->UnpackPositions[p->FolderStartFileIndex[folderIndex]];
    size_t unpackSize = (size_t)unpackSizeSpec;

    if (unpackSize != unpackSizeSpec)
      return SZ_ERROR_MEM;

Из недр lzma sdk.
По заверениям разработчиков:
> ... может использоваться любым современным 32-битным процессором (или, при определенных условиях 16-битным CPU).
Очевидно что этот код вернет SZ_ERROR_MEM на 32-разрядной платформе, если unpackSizeSpec выходит за границы 32-битного числа.
На самом то деле все логично - пользователь просто посылается на хуй, если его нищебродское устройство не тянет такого толстого архива, но тогда утверждение разработчиков о безпроблемном использовании на любой кофеварке становится пиздежью.

Запостил: Pythoner Pythoner, (Updated )

Комментарии (2) RSS

  • Кстати, это в ANSI-C версии. Похожей проверки в C++ версии я не увидел. Возможно проглядел.
    Ответить
  • >>>UInt64 unpackSizeSpec
    >>>(size_t)unpackSizeSpec
    Фейспальм.
    Ответить

Добавить комментарий

Помни, guest, за тобой могут следить!

    А не использовать ли нам bbcode?


    8