Чи доводилося вам виправляти дуже старі баги в легасі-коді?

💡 Усі статті, обговорення, новини про тестування — в одному місці. Приєднуйтесь до QA спільноти!

Минулого тижня активно обговорювалась історія 21-річної розробниці, яка знайшла та виправила баг у Linux-компоненті Enlightenment E16, що походить із 1997 року.

Якщо коротко, польська програмістка Каміла Шевчик помітила проблему під час підготовки матеріалів для курсу в університеті Саарланду. Після відкриття одного з PDF-файлів робочий стіл почав зависати.

З’ясувалося, що збій виникав, коли E16 намагався скоротити занадто довге ім’я файлу. Шевчик локалізувала причину та підготувала повноцінний патч для версії 1.0.30. У ньому вона обмежила кількість ітерацій обробки тексту, усунула некоректні перекриття та додала захист від ділення на нуль.

Цей випадок нагадує, що навіть у зрілих та давно існуючих проєктах можуть роками жити дуже старі помилки. Ці баги часто проявляються лише за специфічних умов, або ж для їхнього виправлення потрібен свіжий погляд.

Тому цікаво почути про ваш досвід.

Чи доводилося вам знаходити або виправляти дуже старі баги в легасі-коді? Як це сталося — випадково чи завдяки системному розбору проблеми?

👍ПодобаєтьсяСподобалось3
До обраногоВ обраному0
LinkedIn
Ctrl + Enter
Ctrl + Enter

В 2007 сабмітнув перший патч до FireFox із Null pointer-ом на JavaScript та Xul в Download Manager. На тоді ще ломаному англіському пояснив мейнтейнерам в чому проблема та вистачило щоб обійти мовний барьєр, вони мені в BugZilla показали як користуватись CVS та зробити патч (ми працювали із SVN тоді).
Щоправда тоді конкретно код був не старий, а новітній в бетта версії яку ще не зарелизили.

В далекому 2011му мав справу з сьогодні покійним американським маркетом апок для мобільних телефонів(jar-ки, симбіан, ітд) , з дуже древнім кодом чи часом не з кінця 90х. І от в продавця в акаунті було поле типу userId, і це був текстовий інпут значення якого можна було міняти. І якщо його змінити на id іншого реального користувача, то ви ставали овнером своїх і його виставлених апок і це все без будь-яких валідацій.
Це точно було в проді, дивно що не було (або не доходили до нас) інцидентів.
Фікс, як я памятаю був простий як двері — в прибиранні цього поля з формочки і по коду заборона можливості юзеру міняти свій id.

Підписатись на коментарі