Сегодня первой игре из серии DOOM исполняется ровно 30 лет! Мы не могли обойти стороной это событие и в честь этого решили посмотреть, как же выглядит код этой легендарной игры спустя годы.
Рубрика «bugs»
30 лет DOOM: новый код — новые баги
2023-12-10 в 11:12, admin, рубрики: bugs, c++, DOOM, Gamedev, gamedevelopment, id software, баги, ошибки в коде, разработка игрЛовля жуков в чемодане
2022-02-18 в 9:00, admin, рубрики: bugs, i8080, ruvds_статьи, Блог компании RUVDS.com, Волшебный чемодан, ненормальное программирование, старое железо, УМК-80Эпопею с чемоданом хотелось завершить красивой демкой, с бегущей строкой и всякими графическими эффектами на дисплее. Всё это вшить в ПЗУ, и наслаждаться этим в любой удобный момент.
На этапе пока я не научился шить ПЗУ, заготовки демки были реализованы ещё в оперативной памяти. И казалось бы, смени адреса, залей в ПЗУ и будет счастье. Но при попытке прошить это в постоянную память, ничего не работало. Попробовал проверить свою программу в эмуляторе и она без проблем выполнила всё именно так, как я от неё ожидал. Код даже работал при записи его частями в УМК, но целиком, со всеми прелестями, вылетал с ошибкой.
И всё никак в толк не мог взять: это лыжи не едут, либо у меня проблемы с ассемблером.
Пробегался по каждой инструкции, стал сам линкером, уже как процессор начал всё исполнять, но ошибку в коде никак не мог найти. И вот тут начинается квест жёсткого аппаратного дебага и трёх недель бессонных ночей.Читать полностью »
С++23: международный стандарт на удалёнке
2020-12-08 в 7:10, admin, рубрики: bugs, c++, C++20, c++23, clang, Clang-Tidy, gcc, IT-стандарты, MSVC, stack trace, stacktrace, Блог компании Яндекс, Компиляторы, Программирование, С++
C++20 прошёл все бюрократические инстанции и теперь официально готов! Международный комитет переехал в онлайн, и теперь мы вовсю работаем над C++23. Под катом вас ждут:
- std::stacktrace,
- z и uz,
- 61 с половиной багфикс в ядре языка,
- string::contains,
- Executors & Networking,
- и прочие новости.
Начало коллекционирования ошибок в функциях копирования
2020-04-04 в 8:37, admin, рубрики: bugs, C, c++, memcpy, static code analysis, баги, Блог компании PVS-Studio, ошибки в коде, Си, статический анализ кода
Уже несколько раз замечал, что программисты допускают ошибки в простых функциях копирования данных. Эта тема потребует в будущем ещё много времени для изучения и подбора материала, чтобы написать основательную статью. Но захотелось поделиться парой примеров, недавно замеченных мною.
Читать полностью »
Ноль, один, два, Фредди заберёт тебя
2020-02-14 в 8:39, admin, рубрики: bugs, C#, c++, code review, coding horror, coding style, dev, java, programming, pvs-studio, SAST, static code analysis, баги, Блог компании PVS-Studio, Программирование, статический анализ кода
Перед вами продолжение серии статей, которую можно озаглавить «ужасы для программистов». В этот раз речь пойдёт о типовом паттерне опечаток, связанном с использованием чисел 0, 1, 2. Неважно, пишите вы на C, C++, C# или Java. Если вы используете константы 0, 1, 2, или если эти числа содержатся в именах переменных, то, скорее всего, Фредди заглянет к вам ночью в гости. Читайте и не говорите потом, что вас не предупреждали.
Читать полностью »
Статическое тестирование безопасности опенсорсными инструментами
2020-02-04 в 8:58, admin, рубрики: bugs, findbugs, java, SAST, security, sonarqube, Блог компании Одноклассники, информационная безопасность, одноклассники, ок.tech, статический анализ кода, Тестирование IT-систем, Тестирование веб-сервисов
Уязвимости в своём коде хочется находить как можно быстрее, а значит нужно автоматизировать этот процесс. Как именно автоматизировать поиск уязвимостей? Существует динамическое тестирование безопасности, существует статическое — и у обоих свои преимущества и недостатки. Сегодня подробно разберёмся со статическим на опыте его применения в Одноклассниках.
По каким принципам можно выбирать инструмент для статического тестирования? С какими сложностями сталкиваешься, когда уже выбрал? Как писать собственные правила анализа, расширяющие стандартную функциональность? Я занималась всеми этими вопросами — и теперь делюсь с Хабром тем, что узнала.
Речь пойдёт о Java, веб-приложениях, SonarQube и Find Security Bugs, но рассказанное применимо также для других языков и технологий.
Поиск багов как образ жизни: обзор №2
2020-02-03 в 6:18, admin, рубрики: bugs, Блог компании PVS-Studio, поддержка клиентов, поддержка пользователей, Программирование, Рокетбанк, Ростелеком, тестирование, Тестирование IT-систем, Тестирование веб-сервисов, Тестирование мобильных приложенийДлительная работа в IT натаскивает видеть несовершенства в пользовательском софте. Иногда это откровенные баги, которые хорошо бы исправить. Но сообщить об этом затруднительно из-за непрофессиональной работы поддержки. Публикация таких обзоров багов действительно помогает привлечь внимание разработчиков. В этом обзоре будут рассмотрены проблемы на сайтах ОнлайнТрейд и Ростелеком, в мобильном приложении банка Рокетбанк и даже ! Про Ростелеком вообще детектив получился.
VVVVVV??? VVVVVV!!! :)
2020-01-16 в 7:36, admin, рубрики: bugs, c++, code analysis, game development, Gamedev, pvs-studio, static code analysis, VVVVVV, Блог компании PVS-Studio, Программирование, разработка игрЕсли вы читаете этот текст – значит, вы либо подумали, что с заголовком статьи что-то не то, либо увидели в нём название знакомой компьютерной игры. VVVVVV – это инди-игра в жанре «платформер», завоевавшая сердца многих игроков своей приятной внешней простотой и не менее приятной внутренней сложностью. Несколько дней назад VVVVVV исполнилось 10 лет, и автор игры – Terry Cavanagh – отметил этот праздник публикацией её исходного кода. Что же «вкусненького» можно в нём найти? Ответ читайте в данной статье.
Поиск багов как образ жизни
2020-01-13 в 9:23, admin, рубрики: 2x2, bugs, Блог компании PVS-Studio, поддержка клиентов, поддержка пользователей, Программирование, ржд, Ростелеком, сбербанк онлайнк, тестирование, Тестирование IT-систем, Тестирование веб-сервисов, Тестирование мобильных приложений
Разработка статических анализаторов кода и борьба за качество open-source проектов на протяжении более шести лет не могли не сказаться на моём взаимодействии с программами в нерабочее время. К сожалению, мне постоянно встречаются разные баги и, к ещё большему сожалению, повлиять на это почти невозможно. Я решил собрать несколько историй об интересных багах и их исправлении или игноре. Альтернативный формат статьи о поиске ошибок в коде.
Читать полностью »
Opencartforum и друзья
2019-09-05 в 8:16, admin, рубрики: bugs, exploit, lfi, opencartforum, php, информационная безопасность, Тестирование веб-сервисов
Все собаки попадают в рай, а все владельцы интернет магазинов на Opencart, рано или поздно на Opencartforum. Когда проходит эйфория от первой установки движка на хостинг и начинается суровая реальность, типичному владельцу магазина всегда начинает чего-то не хватать и он начинает сложный путь поиска квалифицированных подрядчиков и качественных дополнений для своего магазина.
Самый крупный ресурс в рунете, на котором можно найти и то и другое — это opencartforum.com, на котором на сегодня зарегистрировано более 140к пользователей. Из этих 140к регистраций, пусть половина — это живые люди с живыми магазинами, которые так или иначе пользуются шаблонами, модулями, которые можно тут же приобрести на площадке. И все эти люди, даже не догадываются, что вместе с дополнениями они приобретают себе чудесные бекдоры и уязвимости, о которых любой мамкин хакир может только мечтать.
Читать полностью »