-
Notifications
You must be signed in to change notification settings - Fork 173
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Checking with PVS-Studio static analyser #255
Comments
Here in russian https://habrahabr.ru/company/pvs-studio/blog/321948/ |
ну, большинство рассмотренных багов приехало из оригинального кода, так что к портированию отношения не имеют, но есть и несколько моих косяков) |
Решил поковырять немного..
Но надо признать есть и реальные косяки. |
@elfmz про неопределённое поведение довольно точные диагностики, я ещё раз посмотрю.
Такого очень много встречаем, пытаемся объяснить, что можно сделать лучше.
Если что, пишите, что-нибудь подскажем или анализатор поправим. |
Варнинги на APIStringMap.cpp прямиком из кода wine - dlls\kernel32\locale.c, даже не знаю что с ними делать. С одной стороны if-ы вроде как "сокращаются", с другой - если их "сократить" то код станет менее красивым и читабельным, так что пожалуй оставлю как есть :) |
А можно глупый вопрос? Зачем там используется Wine, если это полноценный порт? |
|
тогда всё понятно.. еще как вариант на будущее... можно попробывать в ReactOS посмотреть... |
ReactOS сами импортируют из вайна всё, что могут по части юзерспейса, а свои улучшения шлют потом обратно. Так что смысла нет. А вот libiconv - хорошая идея. Тут ведь как. Юникод как стандарт обновляется же регулярно, и я не уверен, что эти изменения не влекут за собой необходимость обновления соответствующих функций. Так что, как по мне, лучше уж пусть пакетный менеджер волнуется, чтобы у юзера была свежая libiconv, чем регулярно обновлять импортированный вайновский код. |
To demonstrate the capabilities of our analyzer, we regularly perform analysis of open source projects. We had recently checked the Far Manager project.
Here is the link to the article about it: Porting is a Delicate Matter: Checking Far Manager under Linux
If you have any questions, or if you are interested in the evaluation of our static analyzer or in any other source code quality control services that our company provides, please contact us at [email protected].
The text was updated successfully, but these errors were encountered: