[FIXED] crash on dl of large user lists

If you find any bugs, please post in here. Bugs in the Linux version should be reported on Github.

[FIXED] crash on dl of large user lists

Postby fieldhouse » 20 Nov 2016, 07:45

seems to happen every time.

Code: c0000005 ( Access violation )
Version: AirDC++ 3.23 x64
Build: 3222
Major: 6
Minor: 1
Build: 7601
SP: 1
Type: 1
Time: 2016-11-19 22:43:18
TTH: XAFVHOOKD62NL5BHID3Q2SMUQIPLBY6LXPNS66Y

c:\program files (x86)\microsoft visual studio 14.0\vc\include\vector(1292): std::vector<std::shared_ptr<dcpp::DirectoryListing::File>=0x00000001,std::allocator<std::shared_ptr<dcpp::DirectoryListing::File> > >::push_back
c:\projects\airdc-git\airdcpp\airdcpp\directorylisting.cpp(332): dcpp::ListLoader::startTag
c:\projects\airdc-git\airdcpp\airdcpp\simplexmlreader.cpp(296): dcpp::SimpleXMLReader::elementEndSimple
c:\projects\airdc-git\airdcpp\airdcpp\simplexmlreader.cpp(687): dcpp::SimpleXMLReader::process
c:\projects\airdc-git\airdcpp\airdcpp\simplexmlreader.cpp(600): dcpp::SimpleXMLReader::parse
c:\projects\airdc-git\airdcpp\airdcpp\directorylisting.cpp(291): dcpp::DirectoryListing::loadXML
c:\projects\airdc-git\airdcpp\airdcpp\directorylisting.cpp(249): dcpp::DirectoryListing::loadFile
c:\projects\airdc-git\airdcpp\airdcpp\directorylisting.cpp(1065): dcpp::DirectoryListing::loadFileImpl
c:\projects\airdc-git\airdcpp\airdcpp\directorylisting.cpp(1006): dcpp::DirectoryListing::dispatch
c:\projects\airdc-git\airdcpp\airdcpp\dispatcherqueue.h(95): dcpp::DispatcherQueue::dispatch
c:\projects\airdc-git\airdcpp\airdcpp\dispatcherqueue.h(72): dcpp::DispatcherQueue::run
c:\projects\airdc-git\airdcpp\airdcpp\thread.cpp(59): dcpp::Thread::starter
d:\th\minkernel\crts\ucrt\src\appcrt\startup\thread.cpp(115): thread_start<unsigned int (__cdecl*=0x770059CD)(void * __ptr64)>
kernel32!0x770059CD: BaseThreadInitThunk
ntdll!0x7713A2E1: RtlUserThreadStart
User avatar
fieldhouse
 
Posts: 9
Joined: 20 Nov 2016, 07:37

Re: crash on dl of large user lists

Postby maksis » 20 Nov 2016, 09:49

Do you run out of memory?
User avatar
maksis
Site Admin
 
Posts: 829
Joined: 23 Nov 2010, 18:56

Re: crash on dl of large user lists

Postby fieldhouse » 20 Nov 2016, 22:39

maksis wrote:Do you run out of memory?

nope. only 5 of 8 gb ram used. I can reliably start airdc, open the user's file list (which did download) and get an immediate crash.

airdc seems to be fully working in the background (logged in to hubs, uploading / downloading) until I dismiss the crash message displayed. Then it crashes out.

I'm working on narrowing it down. It may just be that one user's list.
User avatar
fieldhouse
 
Posts: 9
Joined: 20 Nov 2016, 07:37

Re: crash on dl of large user lists

Postby maksis » 20 Nov 2016, 22:43

Did you check the memory usage after the crash? What's the size of the filelist? If there is something special in it, I'd like to get the actual filelist file. Have you asked anyone else to open that filelists (preferably someone with the same client version that you are using)?
User avatar
maksis
Site Admin
 
Posts: 829
Joined: 23 Nov 2010, 18:56

Re: crash on dl of large user lists

Postby fieldhouse » 20 Nov 2016, 22:48

yeah. looks like it is just that file list. 17MB. I tried re-downloading and got an exact dupe so it's not like it was corrupted in transit.

I can send you the file. pm me an email address.
User avatar
fieldhouse
 
Posts: 9
Joined: 20 Nov 2016, 07:37

Re: crash on dl of large user lists

Postby maksis » 20 Nov 2016, 23:00

I can confirm that I get the same crash with that filelist so it seems like a client bug.
User avatar
maksis
Site Admin
 
Posts: 829
Joined: 23 Nov 2010, 18:56

Re: crash on dl of large user lists

Postby fieldhouse » 20 Nov 2016, 23:13

ok. thanks for confirmation. I was able to open it in DC++ 0.863 so it doesn't look like it's majorly corrupted.
User avatar
fieldhouse
 
Posts: 9
Joined: 20 Nov 2016, 07:37

Re: crash on dl of large user lists

Postby maksis » 22 Nov 2016, 21:40

The problem is that two directories with same name but different casing on the same level.

According to the protocol specs, "the name of the entity must be case-insensitive unique in that level of the hierarchy". DC++ only performs case-sensitive comparison so it won't notice anything wrong in the filelist. I'd say that AirDC++ should simply just give an error when trying to load such filelist.
User avatar
maksis
Site Admin
 
Posts: 829
Joined: 23 Nov 2010, 18:56

Re: crash on dl of large user lists

Postby maksis » 23 Nov 2016, 12:29

This will be fixed in version 3.30
User avatar
maksis
Site Admin
 
Posts: 829
Joined: 23 Nov 2010, 18:56

Re: [FIXED] crash on dl of large user lists

Postby fieldhouse » 23 Nov 2016, 21:38

Thanks for looking into it. If it comes up again I know what to look for now. :)
User avatar
fieldhouse
 
Posts: 9
Joined: 20 Nov 2016, 07:37


Return to Bug Reports

Who is online

Users browsing this forum: No registered users and 8 guests

cron