View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0003256 | Plugins | NetBox | public | 2016-06-19 10:42 | 2016-06-19 10:56 |
Reporter | Px | Assigned To | |||
Priority | normal | Severity | minor | Reproducibility | sometimes |
Status | new | Resolution | open | ||
Platform | x64 | OS | Windows | OS Version | 7 |
Product Version | 3.0 | ||||
Summary | 0003256: Падение при навигации по FTP | ||||
Description | Понадобилось поправить пару файликов на Ftp, зашёл на него, прошёлся по нескольким папкам, заглянул в несколько файлов, перешёл в очередную папку и получил assert. Стек, сгенерированный Far-ом, следующий 0x61B070A8 _wassert (f:\dd\vctools\crt\crtw32\misc\assert.c:369) 0x618D38D6 DoAssert (c:\storage\netbox\source\src\base\global.cpp:269) 0x61906A2D TFTPFileSystem::WaitForFatalNonCommandReply (c:\storage\netbox\source\src\core\ftpfilesystem.cpp:3469) 0x6190AABF TFTPFileSystem::CheckError (c:\storage\netbox\source\src\core\ftpfilesystem.cpp:4886) 0x61910BEA TFileZillaImpl::CheckError (c:\storage\netbox\source\src\core\ftpfilesystem.cpp:146) 0x61A99DA4 TFileZillaIntf::Check (c:\storage\netbox\source\src\filezilla\filezillaintf.cpp:566) 0x61A69389 TFileZillaIntf::ListFile (c:\storage\netbox\source\src\filezilla\filezillaintf.cpp:276) 0x6190E295 TFTPFileSystem::DoReadFile (c:\storage\netbox\source\src\core\ftpfilesystem.cpp:2785) 0x61904A83 TFTPFileSystem::ReadFile (c:\storage\netbox\source\src\core\ftpfilesystem.cpp:2819) 0x61AD6630 TWinSCPFileSystem::GetFindDataEx (c:\storage\netbox\source\src\netbox\winscpfilesystem.cpp:493) 0x61A525E0 TCustomFarFileSystem::GetFindData (c:\storage\netbox\source\src\netbox\farplugin.cpp:1907) 0x61A4DC1C TCustomFarPlugin::GetFindData (c:\storage\netbox\source\src\netbox\farplugin.cpp:423) 0x61A59F31 GetFindDataW (c:\storage\netbox\source\src\netbox\netbox.cpp:93) 0x00D2DC70 std::_Func_impl<<lambda_b6c2cc46e7c37c1278ef25578e3e4030>,std::allocator<int>,void>::_Do_call (c:\vc_current\include\functional:207) 0x00D27DA9 Plugin::ExecuteFunction (c:\src\unicode_far\plclass.cpp:16707566) 0x00D2AC2E Plugin::GetFindData (c:\src\unicode_far\plclass.cpp:1111) 0x00D52C35 PluginManager::GetFindData (c:\src\unicode_far\plugins.cpp:915) 0x00C9081C FileList::UpdatePlugin (c:\src\unicode_far\filelist.cpp:7175) 0x00C8E2A4 FileList::Update (c:\src\unicode_far\filelist.cpp:6621) 0x00C8260A FileList::ChangeDir (c:\src\unicode_far\filelist.cpp:2947) 0x00C81993 FileList::ProcessEnter (c:\src\unicode_far\filelist.cpp:2677) 0x00C81213 FileList::ProcessKey (c:\src\unicode_far\filelist.cpp:1651) 0x00CA26EC FilePanels::ProcessKey (c:\src\unicode_far\filepanels.cpp:805) 0x00D0BAC1 Manager::ProcessKey (c:\src\unicode_far\manager.cpp:825) 0x00D0B2BB Manager::ProcessMainLoop (c:\src\unicode_far\manager.cpp:655) 0x00D0B17E Manager::EnterMainLoop (c:\src\unicode_far\manager.cpp:622) 0x00D05D3F MainProcess (c:\src\unicode_far\main.cpp:290) 0x00D085D9 mainImpl (c:\src\unicode_far\main.cpp:772) 0x00D089FA wmain (c:\src\unicode_far\main.cpp:824) 0x00DC08AA __scrt_common_main_seh (f:\dd\vctools\crt\vcstartup\src\startup\exe_common.inl:264) 0x765B338A BaseThreadInitThunk 0x777D9902 RtlInitializeExceptionChain 0x777D98D5 RtlInitializeExceptionChain Дамп, сгенерированный самим Far-ом после вызова данных о стеке (у меня в WinDBG не открывается) - http://www.cs.iptcom.net/tmp/netbox/Far-m.7z Дамп из ProcDump (похож на настоящий) - http://www.cs.iptcom.net/tmp/netbox/Far.exe_160619_121755.dmp.7z dll+pdb NetBox - http://www.cs.iptcom.net/tmp/netbox/NetBox.7z Результаты простого вызова !analyze -v прикрепляю к тикету | ||||
Tags | No tags attached. | ||||
|
windbg_analyze.txt (4,753 bytes)
FAULTING_IP: NetBox!_wassert+bd8 [f:\dd\vctools\crt\crtw32\misc\assert.c @ 369] 61b070a8 cc int 3 EXCEPTION_RECORD: 002bcff8 -- (.exr 0x2bcff8) ExceptionAddress: 61b070a8 (NetBox!_wassert+0x00000bd8) ExceptionCode: 80000003 (Break instruction exception) ExceptionFlags: 00000000 NumberParameters: 1 Parameter[0]: 00000000 CONTEXT: 002bd048 -- (.cxr 0x2bd048;r) eax=00000004 ebx=002be640 ecx=07e2c0ad edx=002d0180 esi=0000007e edi=00000000 eip=61b070a8 esp=002bd4ac ebp=002bdfe8 iopl=0 nv up ei pl zr na pe nc cs=0023 ss=002b ds=002b es=002b fs=0053 gs=002b efl=00000246 NetBox!_wassert+0xbd8: 61b070a8 cc int 3 Last set context: eax=00000004 ebx=002be640 ecx=07e2c0ad edx=002d0180 esi=0000007e edi=00000000 eip=61b070a8 esp=002bd4ac ebp=002bdfe8 iopl=0 nv up ei pl zr na pe nc cs=0023 ss=002b ds=002b es=002b fs=0053 gs=002b efl=00000246 NetBox!_wassert+0xbd8: 61b070a8 cc int 3 Resetting default scope DEFAULT_BUCKET_ID: STATUS_FATAL_APP_EXIT PROCESS_NAME: Far.exe ERROR_CODE: (NTSTATUS) 0x40000015 - { EXCEPTION_CODE: (NTSTATUS) 0x40000015 (1073741845) - { NTGLOBALFLAG: 400 APPLICATION_VERIFIER_FLAGS: 0 APP: far.exe ANALYSIS_VERSION: 6.3.9600.16384 (debuggers(dbg).130821-1623) amd64fre LAST_CONTROL_TRANSFER: from 618d38d6 to 61b070a8 FAULTING_THREAD: ffffffff PRIMARY_PROBLEM_CLASS: STATUS_FATAL_APP_EXIT BUGCHECK_STR: APPLICATION_FAULT_STATUS_FATAL_APP_EXIT STACK_TEXT: 002bd4ac 61b070a8 netbox!_wassert+0xbd8 002bdff0 618d38d6 netbox!DoAssert+0x36 002be004 61906a2d netbox!TFTPFileSystem::WaitForFatalNonCommandReply+0x2d 002be01c 6190aabf netbox!TFTPFileSystem::CheckError+0x3f 002be0bc 61910bea netbox!TFileZillaImpl::CheckError+0x1a 002be0d0 61a99da4 netbox!TFileZillaIntf::Check+0x44 002be0e8 61a69389 netbox!TFileZillaIntf::ListFile+0x99 002be140 6190e295 netbox!TFTPFileSystem::DoReadFile+0x1a5 002be2b0 61904a83 netbox!TFTPFileSystem::ReadFile+0x83 002be470 61ad6630 netbox!TWinSCPFileSystem::GetFindDataEx+0x240 002be654 61a525e0 netbox!TCustomFarFileSystem::GetFindData+0xa0 002be698 61a4dc1c netbox!TCustomFarPlugin::GetFindData+0xac 002be750 61a59f31 netbox!GetFindDataW+0x31 002be76c 00d2dc70 far!std::_Func_impl<<lambda_b6c2cc46e7c37c1278ef25578e3e4030>,std::allocator<int>,void>::_Do_call+0x10 002be778 00d27da9 far!Plugin::ExecuteFunction+0x59 002be7ac 00d2ac2e far!Plugin::GetFindData+0x8e 002be80c 00d52c35 far!PluginManager::GetFindData+0x85 002be860 00c9081c far!FileList::UpdatePlugin+0x18c 002bea78 00c8e2a4 far!FileList::Update+0x114 002beab0 00c8260a far!FileList::ChangeDir+0x57a 002beb9c 00c81993 far!FileList::ProcessEnter+0x233 002bece0 00c81213 far!FileList::ProcessKey+0x3b83 002bf254 00ca26ec far!FilePanels::ProcessKey+0x34c 002bf35c 00d0bac1 far!Manager::ProcessKey+0x261 002bf39c 00d0b2bb far!Manager::ProcessMainLoop+0x12b 002bf410 00d0b17e far!Manager::EnterMainLoop+0x3e 002bf420 00d05d3f far!MainProcess+0x70f 002bf554 00d085d9 far!mainImpl+0xf09 002bf894 00d089fa far!wmain+0xfa 002bf90c 00dc08aa far!__scrt_common_main_seh+0xff 002bf958 765b338a kernel32!BaseThreadInitThunk+0xe 002bf964 777d9902 ntdll!__RtlUserThreadStart+0x70 002bf9a4 777d98d5 ntdll!_RtlUserThreadStart+0x1b FOLLOWUP_IP: NetBox!TFTPFileSystem::CheckError+3f [c:\storage\netbox\source\src\core\ftpfilesystem.cpp @ 4886] 6190aabf e9fc000000 jmp NetBox!TFTPFileSystem::CheckError+0x140 (6190abc0) FAULTING_SOURCE_LINE: c:\storage\netbox\source\src\core\ftpfilesystem.cpp FAULTING_SOURCE_FILE: c:\storage\netbox\source\src\core\ftpfilesystem.cpp FAULTING_SOURCE_LINE_NUMBER: 4886 FAULTING_SOURCE_CODE: 4882: // throws 4883: WaitForFatalNonCommandReply(); 4884: } 4885: } > 4886: else 4887: { 4888: FTerminal->FatalError(nullptr, 4889: FMTLOAD(INTERNAL_ERROR, FORMAT(L"fz#%s", Context).c_str(), ::IntToHex(ReturnCode, 4).c_str())); 4890: DebugFail(); 4891: } SYMBOL_STACK_INDEX: 3 SYMBOL_NAME: netbox!TFTPFileSystem::CheckError+3f FOLLOWUP_NAME: MachineOwner MODULE_NAME: NetBox IMAGE_NAME: NetBox.dll DEBUG_FLR_IMAGE_TIMESTAMP: 57028a87 STACK_COMMAND: .cxr 2bd048 ; kb ; dps 2bd4ac ; kb FAILURE_BUCKET_ID: STATUS_FATAL_APP_EXIT_40000015_NetBox.dll!TFTPFileSystem::CheckError BUCKET_ID: APPLICATION_FAULT_STATUS_FATAL_APP_EXIT_netbox!TFTPFileSystem::CheckError+3f ANALYSIS_SOURCE: UM FAILURE_ID_HASH_STRING: um:status_fatal_app_exit_40000015_netbox.dll!tftpfilesystem::checkerror FAILURE_ID_HASH: {b2d9e5ba-73dc-a753-d5c8-f12efebd572d} Followup: MachineOwner --------- |
|
Удалось чуть лучше локализировать проблему: падение произошло из-за захода в папку, в которой есть симлинки. Прикладываю ссылку на дамп с исключением сразу после захода в такую папку - http://www.cs.iptcom.net/tmp/netbox/Far.exe_160619_125445.dmp.7z |