Глюки и баги, появившиеся в «ночных сборках»

Здесь можно сообщить о найденных багах в Far.
User avatar
John Doe
Бюрократ
Posts: 13801
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 72 times
Been thanked: 425 times
Contact:

Глюки и баги, появившиеся в «ночных сборках»

Post by John Doe »

Внимание: Тема служит исключительно для обсуждения свежих багов Far 3.
  • Под свежими понимаются глюки и баги, проявляющиеся в "ночных" сборках, но отсутствующие в "стабильных".
  • О проблемах, которые существуют давно, следует сообщать в отдельных темах, либо на багтрекере.
  • Вопросы, связанные с ночными сборками, но не касающиеся багов самого фара, обсуждаются в другой теме:
Если баг, о котором вы сообщили, не исправлен "по горячим следам", значит необходимо создать запись на багтрекере

Предыдущие ночные сборки доступны здесь.

Поведение при обнаружении проблем.
https://t.me/FarManager — Telegram чат
Denis
Posts: 1444
Joined: Tue 05 Apr, 2005 18:12
Has thanked: 10 times
Been thanked: 5 times

Глюки и баги, появившиеся в «ночных сборках»

Post by Denis »

Latest post of the previous page:

Fix к предыдущему сообщению:

Code: Select all

diff --git i/far/findfile.cpp w/far/findfile.cpp
index 65310e2eb..426237f37 100644
--- i/far/findfile.cpp
+++ w/far/findfile.cpp
@@ -2545,6 +2545,7 @@ bool FindFiles::FindFilesProcess()
 	m_FileCount = 0;
 	m_DirCount = 0;
 	m_LastFoundNumber = 0;
+	m_LastDirName.clear();
 
 	if (!strFindMask.empty())
 	{
User avatar
DrKnS
Posts: 6114
Joined: Thu 04 Aug, 2005 06:44
Location: Kyiv
Has thanked: 12 times
Been thanked: 426 times

Глюки и баги, появившиеся в «ночных сборках»

Post by DrKnS »

Denis, спасибо, 5455.
ivank
Posts: 151
Joined: Fri 08 Aug, 2008 16:14
Has thanked: 3 times
Been thanked: 4 times
Contact:

Глюки и баги, появившиеся в «ночных сборках»

Post by ivank »

Far30b5464.x64.20190903 (и Far30b5467.x64.20190905) в некоторых случаях при выходе по F10 падает:

Минимум файлов для воспроизведения:

Far.exe.ini - для локального профиля:

Необходимо одновременное наличие плагинов NetBox и RESearch867. При выходе сразу после первого запуска с пустым профилем возникает ошибка. Для возникновения ошибки при последующих запусках необходимо открыть на редактирование любой файл и вызвать плагин RESearch (например, запустить поиск в файле) - тогда после выхода по F10 far падает. Проверял на windows 7 и windows 10 1607 со всеми обновлениями. В Far30b5462.x64.20190902 все ок.
Подозреваю это:
Last edited by ivank on Thu 05 Sep, 2019 18:13, edited 1 time in total.
User avatar
HaRT
Moderator
Posts: 10806
Joined: Tue 30 Aug, 2005 17:21
Has thanked: 220 times
Been thanked: 357 times

Глюки и баги, появившиеся в «ночных сборках»

Post by HaRT »

ivank wrote: Thu 05 Sep, 2019 18:03Необходимо одновременное наличие плагинов NetBox и RESearch867. При выходе сразу после первого запуска с пустым профилем возникает ошибка. Для возникновения ошибки при последующих запусках необходимо открыть на редактирование любой файл и вызвать плагин RESearch (например, запустить поиск в файле) - тогда после выхода по F10 far падает.
Подтверждаю.
Windows 8.1 x64; Far Manager, version 3.0.0.5467 x86.
Фар есть инструмент, а не нянька. © 2009 DrKnS
User avatar
DrKnS
Posts: 6114
Joined: Thu 04 Aug, 2005 06:44
Location: Kyiv
Has thanked: 12 times
Been thanked: 426 times

Глюки и баги, появившиеся в «ночных сборках»

Post by DrKnS »

ivank wrote: Thu 05 Sep, 2019 18:03 вызвать плагин RESearch (например, запустить поиск в файле) - тогда после выхода по F10 far падает
Ну што вам сказать...

  1. .text:100599C0 ; =============== S U B R O U T I N E =======================================
  2.  
  3. .text:100599C0
  4.  
  5. .text:100599C0
  6.  
  7. .text:100599C0                 public SetStartupInfoW
  8.  
  9. .text:100599C0 SetStartupInfoW proc near               ; DATA XREF: .rdata:off_10130A48↓o
  10.  
  11. .text:100599C0
  12.  
  13. .text:100599C0 arg_0           = dword ptr  4
  14.  
  15. .text:100599C0
  16.  
  17. .text:100599C0                 push    esi
  18.  
  19. .text:100599C1                 mov     esi, [esp+4+arg_0]
  20.  
  21. .text:100599C5                 push    edi
  22.  
  23. .text:100599C6                 mov     ecx, 21h
  24.  
  25. .text:100599CB                 mov     edi, offset unk_10154B98
  26.  
  27. .text:100599D0                 rep movsd
  28.  
  29. .text:100599D2                 call    sub_1004BE00
  30.  
  31. .text:100599D7                 call    sub_10049FC0
  32.  
  33. .text:100599DC                 mov     eax, dword_10154BA0
  34.  
  35. .text:100599E1                 push    1
  36.  
  37. .text:100599E3                 push    eax
  38.  
  39. .text:100599E4                 call    dword_10154BB0
  40.  
  41. .text:100599EA                 mov     ecx, dword_10154BA0
  42.  
  43. .text:100599F0                 push    0Ah
  44.  
  45. .text:100599F2                 push    ecx
  46.  
  47. .text:100599F3                 mov     dword_10154B94, eax
  48.  
  49. .text:100599F8                 call    dword_10154BB0
  50.  
  51. .text:100599FE                 mov     edx, dword_10154BA0
  52.  
  53. .text:10059A04                 push    0D2h
  54.  
  55. .text:10059A09                 push    edx
  56.  
  57. .text:10059A0A                 mov     dword_10154C20, eax
  58.  
  59. .text:10059A0F                 call    dword_10154BB0
  60.  
  61. .text:10059A15                 push    0               ; pvReserved
  62.  
  63. .text:10059A17                 mov     dword_10154D18, eax
  64.  
  65. .text:10059A1C                 mov     dword_10154D1C, offset aReinvalidnumbe ; "REInvalidNumber"
  66.  
  67. .text:10059A26                 mov     byte_10154D14, 1
  68.  
  69. .text:10059A2D                 mov     dword_1013267C, 2
  70.  
  71. .text:10059A37                 call    ds:CoInitialize
  72.  
  73. .text:10059A3D                 call    sub_10062650
  74.  
  75. .text:10059A42                 pop     edi
  76.  
  77. .text:10059A43                 pop     esi
  78.  
  79. .text:10059A44                 retn    4
  80.  
  81. .text:10059A44 SetStartupInfoW endp
  82.  
  83. .text:10059A44

Вы видите, чтобы результат CoInitialize куда-то клался? И я не вижу.

  1. .text:1005F870 ; =============== S U B R O U T I N E =======================================
  2.  
  3. .text:1005F870
  4.  
  5. .text:1005F870
  6.  
  7. .text:1005F870                 public ExitFARW
  8.  
  9. .text:1005F870 ExitFARW        proc near               ; DATA XREF: .rdata:off_10130A48↓o
  10.  
  11. .text:1005F870                 call    sub_1004A980
  12.  
  13. .text:1005F875                 push    0
  14.  
  15. .text:1005F877                 call    sub_10002EA0
  16.  
  17. .text:1005F87C                 push    0
  18.  
  19. .text:1005F87E                 call    sub_1001B190
  20.  
  21. .text:1005F883                 mov     ecx, dword_10134914
  22.  
  23. .text:1005F889                 add     esp, 8
  24.  
  25. .text:1005F88C                 test    ecx, ecx
  26.  
  27. .text:1005F88E                 jz      short loc_1005F898
  28.  
  29. .text:1005F890                 mov     eax, [ecx]
  30.  
  31. .text:1005F892                 mov     edx, [eax]
  32.  
  33. .text:1005F894                 push    1
  34.  
  35. .text:1005F896                 call    edx
  36.  
  37. .text:1005F898
  38.  
  39. .text:1005F898 loc_1005F898:                           ; CODE XREF: ExitFARW+1E↑j
  40.  
  41. .text:1005F898                 mov     ecx, dword_10134910
  42.  
  43. .text:1005F89E                 test    ecx, ecx
  44.  
  45. .text:1005F8A0                 jz      short loc_1005F8AA
  46.  
  47. .text:1005F8A2                 mov     eax, [ecx]
  48.  
  49. .text:1005F8A4                 mov     edx, [eax]
  50.  
  51. .text:1005F8A6                 push    1
  52.  
  53. .text:1005F8A8                 call    edx
  54.  
  55. .text:1005F8AA
  56.  
  57. .text:1005F8AA loc_1005F8AA:                           ; CODE XREF: ExitFARW+30↑j
  58.  
  59. .text:1005F8AA                 mov     eax, hThread
  60.  
  61. .text:1005F8AF                 push    esi
  62.  
  63. .text:1005F8B0                 push    0               ; dwExitCode
  64.  
  65. .text:1005F8B2                 push    eax             ; hThread
  66.  
  67. .text:1005F8B3                 call    ds:TerminateThread
  68.  
  69. .text:1005F8B9                 mov     ecx, hThread
  70.  
  71. .text:1005F8BF                 mov     esi, ds:CloseHandle
  72.  
  73. .text:1005F8C5                 push    ecx             ; hObject
  74.  
  75. .text:1005F8C6                 call    esi ; CloseHandle
  76.  
  77. .text:1005F8C8                 mov     edx, dword_10155100
  78.  
  79. .text:1005F8CE                 push    edx             ; hObject
  80.  
  81. .text:1005F8CF                 mov     hThread, 0
  82.  
  83. .text:1005F8D9                 call    esi ; CloseHandle
  84.  
  85. .text:1005F8DB                 mov     eax, hHandle
  86.  
  87. .text:1005F8E0                 push    eax             ; hObject
  88.  
  89. .text:1005F8E1                 call    esi ; CloseHandle
  90.  
  91. .text:1005F8E3                 pop     esi
  92.  
  93. .text:1005F8E4                 jmp     ds:CoUninitialize
  94.  
  95. .text:1005F8E4 ExitFARW        endp
  96.  
  97. .text:1005F8E4

А видите тут условный переход на CoUninitialize, в зависимости от успешности CoInitialize?
А знаете, почему вы его не видите?



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

P.S. То, что плагину поиска и замены зачем-то надо COM - само по себе прелестно. То, что он ему надо на всё время жизни - еще лучше. Ну а TerminateThread - это просто вишенка на торте.
User avatar
Taciturn
Posts: 600
Joined: Thu 26 May, 2005 17:14
Location: Санкт-Петербург
Has thanked: 89 times
Been thanked: 31 times
Contact:

Глюки и баги, появившиеся в «ночных сборках»

Post by Taciturn »

Начиная с 5437 Far ругается «Ошибка удаления файла Папка не пуста.» при переносе файлов с использованием фильтра.
Создаём C:\Test\Test1 с файлами test.bin и test.txt, пытаемся перенести Test1 в C:\Test\Test2 включив «Использовать фильтр» с фильтром «test» с маской «test.txt» — получаем указанную ошибку.
User avatar
Taciturn
Posts: 600
Joined: Thu 26 May, 2005 17:14
Location: Санкт-Петербург
Has thanked: 89 times
Been thanked: 31 times
Contact:

Глюки и баги, появившиеся в «ночных сборках»

Post by Taciturn »

Начиная с 5449:
Создаём каталог C:\Test, пытаемся перенести на рабочий стол текущего пользователя, выбрав «Наследовать», получаем «Ошибка установки прав доступа к файлу Операция успешно завершена.». При этом всё переносится, права нормально устанавливаются.
User avatar
DrKnS
Posts: 6114
Joined: Thu 04 Aug, 2005 06:44
Location: Kyiv
Has thanked: 12 times
Been thanked: 426 times

Глюки и баги, появившиеся в «ночных сборках»

Post by DrKnS »

Taciturn wrote: Fri 06 Sep, 2019 17:53Ошибка установки прав доступа к файлу Операция успешно завершена
5467.
Taciturn wrote: Fri 06 Sep, 2019 11:14Ошибка удаления файла Папка не пуста.
Я не совсем понимаю, как это (в идеале) должно работать.
Формально вы пытаетесь переименовать папку, фильтр здесь примерно как сова на глобус.
User avatar
Taciturn
Posts: 600
Joined: Thu 26 May, 2005 17:14
Location: Санкт-Петербург
Has thanked: 89 times
Been thanked: 31 times
Contact:

Глюки и баги, появившиеся в «ночных сборках»

Post by Taciturn »

DrKnS, хочется чтобы работало как в предыдущих версиях. Обычно я использую фильтр для переноса всех соответствующих критерию файлов, с сохранением структуры каталогов.
Я тут понял что плохо написал — C:\Test\Test2 создаётся до переноса, т.е. речь не и идёт о переименовании Test1 в Test2.
Last edited by Taciturn on Fri 06 Sep, 2019 21:06, edited 1 time in total.
User avatar
DrKnS
Posts: 6114
Joined: Thu 04 Aug, 2005 06:44
Location: Kyiv
Has thanked: 12 times
Been thanked: 426 times

Глюки и баги, появившиеся в «ночных сборках»

Post by DrKnS »

Taciturn, насколько я понимаю, всё по прежнему работает / фильтруется / переносится, если нажать Skip?
User avatar
Taciturn
Posts: 600
Joined: Thu 26 May, 2005 17:14
Location: Санкт-Петербург
Has thanked: 89 times
Been thanked: 31 times
Contact:

Глюки и баги, появившиеся в «ночных сборках»

Post by Taciturn »

DrKnS, да, проблема только в сообщении об ошибке удаления, в остальном всё Ok.
User avatar
DrKnS
Posts: 6114
Joined: Thu 04 Aug, 2005 06:44
Location: Kyiv
Has thanked: 12 times
Been thanked: 426 times

Глюки и баги, появившиеся в «ночных сборках»

Post by DrKnS »

Taciturn, 5471.
Shmuel
Posts: 6815
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 41 times
Been thanked: 526 times

Глюки и баги, появившиеся в «ночных сборках»

Post by Shmuel »

lua:=mf.fsplit("\\\\SERVER\\share",1)
Сломалось в билде 5211.
User avatar
DrKnS
Posts: 6114
Joined: Thu 04 Aug, 2005 06:44
Location: Kyiv
Has thanked: 12 times
Been thanked: 426 times

Глюки и баги, появившиеся в «ночных сборках»

Post by DrKnS »

Shmuel, 5479.
NekoKoneko
Posts: 10
Joined: Tue 20 Mar, 2012 10:05

Глюки и баги, появившиеся в «ночных сборках»

Post by NekoKoneko »

5482 падает при открытии панели NetBox. 5480 работает.
User avatar
DrKnS
Posts: 6114
Joined: Thu 04 Aug, 2005 06:44
Location: Kyiv
Has thanked: 12 times
Been thanked: 426 times

Глюки и баги, появившиеся в «ночных сборках»

Post by DrKnS »

NekoKoneko, 5483.
Post Reply

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