Левый языковой файл в %FARHOME%

Здесь можно сообщить о найденных багах в Far.
Post Reply
2useven10
Posts: 3663
Joined: Mon 07 Sep, 2009 10:40
Has thanked: 4 times
Been thanked: 145 times

Левый языковой файл в %FARHOME%

Post by 2useven10 » Thu 26 Apr, 2018 17:25

Если в %FARHOME% положить чужой языковой файл (я случайно скопировал из плагина), то far не запустится с жуткой руганью.
Как-то это чересчур жестоко, попробовал по-быстрому поменять маску в language.cpp (*.lng) на более избирательную (Far???.lng) - не прошло. В этом случае отваливается загрузка языковых файлов плагинов. Надо бы как-то отделить мух от котлет...
Last edited by 2useven10 on Fri 27 Apr, 2018 07:42, edited 1 time in total.

User avatar
DrKnS
Posts: 5064
Joined: Thu 04 Aug, 2005 06:44
Location: Kyiv
Has thanked: 5 times
Been thanked: 179 times

Левый языковой файл в %FARHOME%

Post by DrKnS » Thu 26 Apr, 2018 19:07

2useven10 wrote:
Thu 26 Apr, 2018 17:25
с жуткой руганью
Так уж и с жуткой? Вроде бы причина достаточно однозначно указана:
Exception: 0xE06D7363 - C++ exception
Details: class far_exception, what(): C:\far\Bad.lng: language data is incorrect or damaged (at language::load, language.cpp:372)
2useven10 wrote:
Thu 26 Apr, 2018 17:25
Far???.lng
Можно что-то типа while(not loaded) try_next_lng();, но есть ли смысл? Это случается раз в сто лет.

2useven10
Posts: 3663
Joined: Mon 07 Sep, 2009 10:40
Has thanked: 4 times
Been thanked: 145 times

Левый языковой файл в %FARHOME%

Post by 2useven10 » Thu 26 Apr, 2018 20:53

DrKnS wrote:
Thu 26 Apr, 2018 19:07
Вроде бы причина достаточно однозначно указана
Источник проблемы указан так, что идентифицировать его можно (если не испугаешься).
Я о неадекватности реакции на неподходяший языковой файл, не подходит - пропустить без всякой ругани и всё.
Молча, но нужен способ идентификации - свой плохой или чужой.

2useven10
Posts: 3663
Joined: Mon 07 Sep, 2009 10:40
Has thanked: 4 times
Been thanked: 145 times

Левый языковой файл в %FARHOME%

Post by 2useven10 » Thu 26 Apr, 2018 22:02

Переформулирую: все нужные файлы есть, работать можно.
Зачем впадать в кому из-за того что мимо пробегала собачка соседа?

User avatar
DrKnS
Posts: 5064
Joined: Thu 04 Aug, 2005 06:44
Location: Kyiv
Has thanked: 5 times
Been thanked: 179 times

Левый языковой файл в %FARHOME%

Post by DrKnS » Thu 26 Apr, 2018 22:19

2useven10 wrote:
Thu 26 Apr, 2018 20:53
пропустить без всякой ругани и всё
Если пропускать - то только на тот же самый язык (если есть).
Иначе весь интерфейс внезапно окажется на незнакомом языке, что сильно хуже, чем исключение, т.к. непонятно, кто виноват и что делать.
свой плохой или чужой
А смысл? lng файлы сами по себе не заводятся.
Если пользователь копирует левые файлы, он может точно так же скопировать туда FarVasya.lng (идентичный натуральному, но с улучшенным переводом), или FarEng.lng от старой версии.

2useven10
Posts: 3663
Joined: Mon 07 Sep, 2009 10:40
Has thanked: 4 times
Been thanked: 145 times

Левый языковой файл в %FARHOME%

Post by 2useven10 » Thu 26 Apr, 2018 22:43

2useven10 wrote:
Thu 26 Apr, 2018 20:53
Молча, но нужен способ идентификации - свой плохой или чужой.
Это всего навсего о том, что сам фар не должен обращать внимания на AudioPlayer???.lng,
и соответственно AudioPlayer должен пытаться открыть только свои файлы.

User avatar
DrKnS
Posts: 5064
Joined: Thu 04 Aug, 2005 06:44
Location: Kyiv
Has thanked: 5 times
Been thanked: 179 times

Левый языковой файл в %FARHOME%

Post by DrKnS » Thu 26 Apr, 2018 23:30

2useven10 wrote:
Thu 26 Apr, 2018 22:43
Это всего навсего о том, что сам фар не должен обращать внимания на AudioPlayer???.lng,
и соответственно AudioPlayer должен пытаться открыть только свои файлы.
Это, несомненно, хорошая мысль, и если бы сейчас был 1996 год, а мы были Рошалом, подобные ограничения стоило бы рассмотреть.

Однако,
https://api.farmanager.com/ru/language/index.html wrote:Все *.lng и *.hlf файлы в каталоге с Far Manager`ом, во всех подкаталогах папки Plugins считаются как языковые файлы и файлы подсказки.
- и так было всегда, со всеми вытекающими.

Формат SameNameAsDll???.lng даже дистрибутивные плагины не соблюдают, как предлагается внедрять тоталитаризм?

User avatar
DrKnS
Posts: 5064
Joined: Thu 04 Aug, 2005 06:44
Location: Kyiv
Has thanked: 5 times
Been thanked: 179 times

Левый языковой файл в %FARHOME%

Post by DrKnS » Thu 26 Apr, 2018 23:56

2useven10 wrote:
Thu 26 Apr, 2018 17:25
с жуткой руганью.
В 5198 жуткую ругань выключил.

2useven10
Posts: 3663
Joined: Mon 07 Sep, 2009 10:40
Has thanked: 4 times
Been thanked: 145 times

Левый языковой файл в %FARHOME%

Post by 2useven10 » Fri 27 Apr, 2018 07:45

DrKnS wrote:
Thu 26 Apr, 2018 23:30
как предлагается внедрять тоталитаризм?
Фару фарово, плагинам демократию.

Post Reply

Return to “Глюки и баги”