Что нового

[Баг] Некорректное сравнение функций _VersionCompare

CreatoR

Must AutoIt!
Команда форума
Администратор
Сообщения
8 472
Репутация
2 401
Мне вот для начала просто интересно определиться, что больше с точки зрения версий (файла к примеру), «1.1.9.0» или «1.1.10»?

Я почему то убеждён что «1.1.10» всё же больше. Но видимо автор функций _VersionCompare так не считает:

Код:
#Include <Misc.au3>

ConsoleWrite(_VersionCompare("1.1.9.0", "1.1.10"))


Это возвращает 1, т.е первая версия больше. А больше она оказывается потому, что сравниваются вхождения чисел после точки.
В принципе если мы с конца версии поубираем нули и лишние точки, то получим оправдание этой логике, однако факт в том, что я проверяю вторую версию, которая явно новее чем первая.

P.S
Что скажете, писать баг репорт, или не тратить своё время и написать фикс для этой функции самому?
 

madmasles

Модератор
Глобальный модератор
Сообщения
7 790
Репутация
2 319
CreatoR
Мне кажется, что,
не тратить своё время и написать фикс для этой функции самому
будет гораздо быстрее :smile:.
 
Автор
CreatoR

CreatoR

Must AutoIt!
Команда форума
Администратор
Сообщения
8 472
Репутация
2 401
Верх