invalid UTF-8 code

Здесь можно сообщить о найденных багах в Far.
User avatar
citRiks
Posts: 1733
Joined: Fri 25 Oct, 2019 18:18
Has thanked: 610 times
Been thanked: 102 times

invalid UTF-8 code

Post by citRiks »

Latest post of the previous page:

..мысль номер Три:
может поэкспериментировать с CHCP 866/65001/др. ?
Last edited by citRiks on Sat 25 Apr, 2020 03:46, edited 1 time in total.
User avatar
buniak_a_h
Posts: 4234
Joined: Sat 20 Apr, 2013 00:17
Location: Санкт-Петробад
Has thanked: 222 times
Been thanked: 642 times
Contact:

invalid UTF-8 code

Post by buniak_a_h »

citRiks wrote: Sat 25 Apr, 2020 03:35 виртуалку с Винда7 нельзя забабахать?
Можно. Думаете, зависит от ОС?
Жалко времени устанавливать винду с дистра. Его ещё найти надо! Просто я на 7-ке не работал, саму винду не устанавливал - может оказаться долго.
Есть ещё даже виртуалка с чистой ХРюшей, но это уже завтра…
User avatar
citRiks
Posts: 1733
Joined: Fri 25 Oct, 2019 18:18
Has thanked: 610 times
Been thanked: 102 times

invalid UTF-8 code

Post by citRiks »

buniak_a_h,
еще мысля, может пересохранить сами модули в UTF8/ОЕМ/наоборот .. ?
Может зависеть от ОС конечно,
и я слышал что Microsoft усердно борятся с поддержкой Unicode в консоли,
в целом шалят с консолью в последнее время.

Думаю еще что все-таки надо бы в ZeroBrainStudio поймать это дело,
могу помочь с установкой и настройкой
Last edited by citRiks on Sat 25 Apr, 2020 03:59, edited 1 time in total.
User avatar
citRiks
Posts: 1733
Joined: Fri 25 Oct, 2019 18:18
Has thanked: 610 times
Been thanked: 102 times

invalid UTF-8 code

Post by citRiks »

buniak_a_h,
может пошлете саму вируалку? ) Она в чем? ВМВаря/Оракле?
User avatar
buniak_a_h
Posts: 4234
Joined: Sat 20 Apr, 2013 00:17
Location: Санкт-Петробад
Has thanked: 222 times
Been thanked: 642 times
Contact:

invalid UTF-8 code

Post by buniak_a_h »

vmware 12. Упакую - вышлю через Я.диск (виртуалки - они обычно большие!)
Я нашёл конкретную строку, где вылетает:
184-185:

Code: Select all

if jit.os == "Windows" then
  sql = ffi.load("sqlite3") -- вот тут вылетает, причём от строки-параметра не зависит. Можно любую абракадабру написать - диагностика не меняется !!!
User avatar
citRiks
Posts: 1733
Joined: Fri 25 Oct, 2019 18:18
Has thanked: 610 times
Been thanked: 102 times

invalid UTF-8 code

Post by citRiks »

buniak_a_h,
да, ок, я тогда в ней поэкспериментирую с этими может функциями:

Code: Select all

OemToUtf8
Utf16ToUtf8
Utf8ToOem
Utf8ToUtf16
сделать типа:
ffi.load(win.Utf16ToUtf8("sqlite3"))
User avatar
buniak_a_h
Posts: 4234
Joined: Sat 20 Apr, 2013 00:17
Location: Санкт-Петробад
Has thanked: 222 times
Been thanked: 642 times
Contact:

invalid UTF-8 code

Post by buniak_a_h »

Насколько я понимаю, если только латиница, то строка в OEM, ANSI и UTF-8 совпадают. Увы, я сдуру сделал виртуалку в 20 Гб одним файлом. Для тестирования это удобно, а для передави - нет. Вот последние полчаса (или больше) упаковывается, и ещё два по стольку осталось. :-(
Shmuel
Posts: 6815
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 41 times
Been thanked: 526 times

invalid UTF-8 code

Post by Shmuel »

Замените в luamacro.lua строку 223 на ret1 = string.gsub(debug.traceback(handle.coro, ret1),"\n\t","\n ") и перезапустите Фар.
User avatar
buniak_a_h
Posts: 4234
Joined: Sat 20 Apr, 2013 00:17
Location: Санкт-Петробад
Has thanked: 222 times
Been thanked: 642 times
Contact:

invalid UTF-8 code

Post by buniak_a_h »

Shmuel, помогло, спасибо.
Правильно ли я понял, что debug.traceback(…) возвращает какую-то некорректную для UTF-8 строку?
Ох, как это настораживает…
Shmuel
Posts: 6815
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 41 times
Been thanked: 526 times

invalid UTF-8 code

Post by Shmuel »

Имеет смысл привести скриншот сообщения об ошибке после изменения в luamacro.lua, чтобы стало понятно, почему это воспроизводилось только у вас.
User avatar
buniak_a_h
Posts: 4234
Joined: Sat 20 Apr, 2013 00:17
Location: Санкт-Петробад
Has thanked: 222 times
Been thanked: 642 times
Contact:

invalid UTF-8 code

Post by buniak_a_h »

Shmuel, так после изменения не стало никакой ошибки!
Может, строчкой выше вывести debug.traceback(handle.coro, ret1)?
User avatar
buniak_a_h
Posts: 4234
Joined: Sat 20 Apr, 2013 00:17
Location: Санкт-Петробад
Has thanked: 222 times
Been thanked: 642 times
Contact:

invalid UTF-8 code

Post by buniak_a_h »

Например, выдаёт строчку из \00
User avatar
buniak_a_h
Posts: 4234
Joined: Sat 20 Apr, 2013 00:17
Location: Санкт-Петробад
Has thanked: 222 times
Been thanked: 642 times
Contact:

invalid UTF-8 code

Post by buniak_a_h »

citRiks wrote: Sat 25 Apr, 2020 04:01 buniak_a_h,
может пошлете саму вируалку? ) Она в чем? ВМВаря/Оракле?
Вот тут будет. Ещё пока закачивается…
User avatar
Taciturn
Posts: 600
Joined: Thu 26 May, 2005 17:14
Location: Санкт-Петербург
Has thanked: 89 times
Been thanked: 31 times
Contact:

invalid UTF-8 code

Post by Taciturn »

Ради интереса попробовал в виртуалке с W7. Если язык для неюникодных программ русский, то всё как в первом сообщении. Если переключить на английский, то:

Code: Select all

╔════════════════════════════ LuaMacro ═════════════════════════════╗
║ ...le.Crash\Profile\Macros\modules\ljsqlite3\_ljsqlite3.lua:185:  ║
║ cannot load module 'sqlite3': ?? ?????? ????????? ??????.♪        ║
║                                                                   ║
║ stack traceback:                                                  ║
║    [C]: in function 'require'                                     ║
║    [string "require "ljsqlite3""]:1: in main chunk                ║
╟───────────────────────────────────────────────────────────────────╢
║                              { OK }                               ║
╚═══════════════════════════════════════════════════════════════════╝
А в виртуалке с W10, вне зависимости от языка:

Code: Select all

╔═══════════════════════════ LuaMacro ════════════════════════════╗
║ [string "require "ljsqlite3"]:1: unfinished string near '<eof>' ║
╟─────────────────────────────────────────────────────────────────╢
║                             { OK }                              ║
╚═════════════════════════════════════════════════════════════════╝
Last edited by Taciturn on Sun 26 Apr, 2020 10:01, edited 2 times in total.
User avatar
John Doe
Бюрократ
Posts: 13801
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 72 times
Been thanked: 425 times
Contact:

invalid UTF-8 code

Post by John Doe »

Возможно связано с этим https://bugs.farmanager.com/view.php?id=2388
https://t.me/FarManager — Telegram чат
User avatar
citRiks
Posts: 1733
Joined: Fri 25 Oct, 2019 18:18
Has thanked: 610 times
Been thanked: 102 times

invalid UTF-8 code

Post by citRiks »

buniak_a_h wrote: Sat 25 Apr, 2020 05:04 Насколько я понимаю, если только латиница, то строка в OEM, ANSI и UTF-8 совпадают. Увы, я сдуру сделал виртуалку в 20 Гб одним файлом. Для тестирования это удобно, а для передави - нет. Вот последние полчаса (или больше) упаковывается, и ещё два по стольку осталось.
Чего-то наоборот там 100500 файлов по 300КБ(!) :)
Поэтому ВебДавом это богатство скачать не получилось,
пришлось ставить шпионское ПО от Яндекса
Ну вобщем докачалось, посмотрю вскоре

Но вроде же как и так понятно,
что есть несовместимость работы с юникодными строками в этих ДЛЛ-ках с Винда10?
если только латиница, то строка в OEM, ANSI и UTF-8
Думаю что не обязаны совпадать, строки могут иметь BOM,
могут ожидаться \0 в конце (типа как в Си),
может ожидаться длина строки вначале (типа как в Паскале)
Last edited by citRiks on Sat 25 Apr, 2020 16:46, edited 1 time in total.
Post Reply

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