Closed Bug 1224326 Opened 4 years ago Closed 5 months ago

CRASH when pause → continue download several times

Categories

(SeaMonkey :: Download & File Handling, defect, major)

SeaMonkey 2.39 Branch
Unspecified
All
defect
Not set
major

Tracking

(seamonkey2.41 wontfix, seamonkey2.43 wontfix, seamonkey2.44 wontfix, seamonkey2.45 wontfix, seamonkey2.46 wontfix, seamonkey2.47 wontfix, seamonkey2.49esr+ fixed, seamonkey2.53 unaffected, seamonkey2.57esr unaffected)

RESOLVED FIXED
seamonkey2.49
Tracking Status
seamonkey2.41 --- wontfix
seamonkey2.43 --- wontfix
seamonkey2.44 --- wontfix
seamonkey2.45 --- wontfix
seamonkey2.46 --- wontfix
seamonkey2.47 --- wontfix
seamonkey2.49esr + fixed
seamonkey2.53 --- unaffected
seamonkey2.57esr --- unaffected

People

(Reporter: guy, Assigned: iann_bugzilla)

References

Details

(Keywords: crash, reproducible)

Attachments

(3 files, 1 obsolete file)

User Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.7; rv:42.0) Gecko/20100101 Firefox/42.0 SeaMonkey/2.39
Build ID: 20151103192036

Steps to reproduce:

Cancel any Download.  (Same bug exists on 2 machines, each having downloaded 2.39 separately)


Actual results:

Seamonkey crashes.
(This bug is listed but I don't understand the documentation therein or the solution.)


Expected results:

Download cancelled.
Crashes with "Download Error".
Mac Pro 1,1     OSX 10.7.5
Man Mini 5,1    OSX 10.10.5
OS: Unspecified → Mac OS X
NOT reproducible REPRODUCIBLE with  SeaMonkey German 2.39 final Mozilla/5.0 (Windows NT 6.1; WOW64; rv:42.0 from official download area)  Gecko/20100101  Firefox/42.0  Build 20151103191810  (Classic Theme) on German WIN7 64bit:

1. In Browser open <http://freefr.dl.sourceforge.net/project/virtualboximage/Linux%20Mint/Linux%20Mint%2014%20Cinnamon/mint14.ova>
   » After few moments download will start
2. Select target HDD folder os that file becomes saved on HDD
3. Switch to Download Manager Window
4. 'Rightlick mint14.ova download → Cancel'
   » Download will stop, Download Manager item will vanish, no crash

@reporter:
a) What do you want to tell with "This bug is listed  ..."?
b) also a problem with menu 'Help  → safe mode with disabled add-ons'?
c) also a problem with newly created User Profile?
d) worked for you with MS 2.38?
e) Please contribute a download link and may be a more detailed step by 
   step instruction

Please answer without citing, simply start your reply like
a): <answer>
Severity: normal → major
Summary: 2.39 crashes when cancelling download → CRASH when cancel download
(In reply to Rainer Bielefeld from comment #3)
Oops: NOT  REPRODUCIBLE with  ...!

f) NOT reproducible with  German SeaMonkey 2.41a1  (X11; Linux x86_64; rv:44.0)  
   Gecko/20100101 Firefox/44.0 Build 20151029003002  (Classic Theme) 
   on VirtualBox Ubuntu 14
I can not reproduce this with en-us Seamonkey Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:43.0) Gecko/20100101 Firefox/43.0 SeaMonkey/2.40 Build identifier: 20151128200336

But there seems to be a problem with the Download Manager which results in crashes if you pause or cancel a download. It's intermittent. This started with either 2.38 or 2.39. I uploaded a crash report just to find out that it's useless because I built Seamonkey without debug-symbols:)

https://crash-stats.mozilla.com/report/index/f5dbc97b-86dd-4a4a-9b9a-c278d2151128

I need to find out first if this is only a problem of my build (VS2015 x64 with -O2).

Observed downloading drivers from amd.com and nvidia.com.
Attached file Download manager crash
I was able to confirm this more or less with a private en-us VS2015 build.

User agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:43.0) Gecko/20100101 Firefox/43.0 SeaMonkey/2.40

They key for me was to pause the download a few times and wait a little

I tried to download
http://dev-builds.libreoffice.org/pre-releases/win/x86_64/LibreOffice_5.0.4.2_Win_x64.msi

but any other bigger file from http://dev-builds.libreoffice.org should trigger it too in case the original file is gone.

Retry and cancel ultimately resulted in a crash. The debug build didn't produce a dump but I hope the log helps. 

It might be a different problem. Just canceling doesn't crash for me. When 2.40 arrives I will retry it with the official build.
I also can reproduce this crash (on Linux x86_64), both in SeaMonkey 2.39 and SeaMonkey '2.41pre1' (based on Firefox 44.0 release).

STR (clean profile):
1) start large (or slow) download
2) pause it
3) resume it
4) cancel it

In my main profile, I have to restart the download again, then repeat STR, for it to crash.

Testing with a 514 MB file (/dev/urandom output, no file extension) from a local server (where the 25+ Mbps transfer rate causes temporary UI hangs, but that's irrelevant here), but it doesn't seem to matter the download.


SeaMonkey 2.35 works fine.


(mozillaZine: http://forums.mozillazine.org/viewtopic.php?f=40&t=2986811 )
Status: UNCONFIRMED → NEW
Ever confirmed: true
OS: Mac OS X → All
Sorry, forgot to mention that I'm working entirely with self built SeaMonkeys, and that I'm pausing/resuming/canceling download by clicking the icons (the ones to the left of the progress bar).
This is a regression from SeaMonkey 2.38.

The majority of my crashes were like this, SeaMonkey 2.39 Crash Report [@ nsWebBrowserPersist::CleanupLocalFiles ]:
https://crash-stats.mozilla.com/report/index/ab8e4296-2322-4cba-95d8-39ac82160128

But this one crept in there too, SeaMonkey 2.39 Crash Report [@ PLDHashTable::Iterator::Iterator ]:
https://crash-stats.mozilla.com/report/index/a0404323-77f6-41bd-8d87-052052160128
 
 
SeaMonkey 2.40 is also affected.
See Also: → 1250938
Due to "Bug 1250938 - crash in nsWebBrowserPersist::CleanupLocalFiles" this one causes lots of crashes.
REPRODUCIBLE with  English SeaMonkey 2.45a1  (Windows NT 6.1; WOW64; rv:48.0)  Gecko/20100101 Firefox/48.0 Build 20160308001946  (Default Classic Theme)  on German WIN7 64bit:

1. Start Download <http://dev-builds.libreoffice.org/daily/master/Linux-rpm_deb-x86_64@70-TDF-dbg/2016-04-07_16.36.54/master_dbg~2016-04-07_16.36.54_LibreOfficeDev_5.2.0.0.alpha0_Linux_x86-64_archive.tar.gz>
2. Open Download-Manager if necessary
3. 'II' - PAUSE download in Download Manager after 3 Minutes
4.  '►' Continue download after 2 Minutes
5.  'II' - PAUSE download after 2 Minutes
    Bug: Error message "download could not be saved because of unknown error"
         CRASH

Crash report: <https://crash-stats.mozilla.com/report/index/e06313e0-6a72-41cc-a54a-4bd282160414> [@ libxul.so@0x22c6e26 | libxul.so@0x142322d | libxul.so@0x180516f | libxul.so@0x29113ff | libxul.so@0x2f2f441 | libxul.so@0x2f3cef7 | libxul.so@0x22c9019 | libxul.so@0x22c9362 | libxul.so@0x23b6a0f | libxul.so@0x23b996d | libxul.so@0xcf3307 | libxul.so@0...] - SeaMonkey 2.44a1 Crash Report - Report ID: e06313e0-6a72-41cc-a54a-4bd282160414
Keywords: crash, reproducible
Summary: CRASH when cancel download → CRASH when pause → continue download several times
REPRODUCIBLE with  English SeaMonkey 2.45a1  (Windows NT 6.1; WOW64; rv:48.0)  Gecko/20100101 Firefox/48.0 Build 20160308001946  (Default Classic Theme)  on German WIN7 64bit.
No need to wait in Download Manage, simple Click alternating
'II' - PAUSE  →  '►' Continue download → 'II' - PAUSE  →  '►' Continue download
few times: Error Message and afterwards CRASH will happen
I'm original poster.  
Just installed 2.40 Same result. Two different machines (Mac Pro and Mac Mini) using flashgot add-on.
Pause any download, click resume, crash.
Also sometimes crashes with cancel download.
Have had to return to 2.38.
Still REPRODUCIBLE with Server-Installation of  unofficial (by FRG) en-US SeaMonkey 2.49a2  (NT 6.1; WOW64; rv:52.0) Gecko/20100101 Firefox/52.0 Build 20161118170316  (Default Classic Theme) on German WIN7 64bit
This is practically a won't fix for now until someone finds a quick solution. Will no longer happen when bug 888915 is fixed but this one is not ready for prime time yet.
So more or less this one is blocked by "Bug 888915 - Convert SeaMonkey Downloads Manager to Downloads.jsm"
Depends on: 888915
Still stuck on SeaMonkey 2.38 until this is resolved......
This will probably not be resolved for 2.49.x The next planned version is 2.57 and it is using a new api.

You can try a 2.53 community build which already has it:
https://www.wg9s.com/comm-253/

The download manager has some problems we are aware of and will fix before 2.57. It should no longer crash. 2.53 has some security fixes backported but not all. In any case it is much better and safer than 2.38. Backup your profile before you try it.
This is fixed in 2.52+ with switching to jsdownloads in bug 888915. A backport would be possible but at this point in time we need all dev resources for 2.57. So wontfix for 2.49.x. Sorry, ran into this myself a few times and I know that this s*cks.

If someone wants to do a backport let me know and I point out what needs to be done.
Status: NEW → RESOLVED
Closed: Last year
Resolution: --- → WONTFIX
Duplicate of this bug: 1250938
Attached patch Fix/hack for 2.49.5 (obsolete) — Splinter Review

I've successfully tested patched 2.49.5 against:

  • the download link in the STR
  • saving pages locally
  • publishing a page to an ftp server
Assignee: nobody → iann_bugzilla
Status: RESOLVED → REOPENED
Attachment #9070791 - Flags: review?(frgrahl)
Attachment #9070791 - Flags: approval-comm-esr52?
Resolution: WONTFIX → ---

This fixes/hacks around it in nsDownloadManager.cpp instead.
Tested against download pausing, saving pages and page publishing.

Attachment #9070791 - Attachment is obsolete: true
Attachment #9070791 - Flags: review?(frgrahl)
Attachment #9070791 - Flags: approval-comm-esr52?
Attachment #9070793 - Flags: review?(frgrahl)
Attachment #9070793 - Flags: approval-comm-esr52?
Comment on attachment 9070793 [details] [diff] [review]
Patch nsDownloadManager instead

Looks good. Resuming downloads no longer crashes even when closing and reopening SeaMonkey in the middle of it.
Page save works too. Unable to test uploads but you did so should be good too.

r+ and a+ for SeaMonkey 2.49 ESR branch in mozilla-esr52 only.
Attachment #9070793 - Flags: review?(frgrahl)
Attachment #9070793 - Flags: review+
Attachment #9070793 - Flags: approval-comm-esr52?
Attachment #9070793 - Flags: approval-comm-esr52+
Attached patch Retry fixSplinter Review

Not sure if this is the best way of notifying.

Attachment #9074414 - Flags: review?(frgrahl)
Attachment #9074414 - Flags: approval-comm-esr52?
Comment on attachment 9074414 [details] [diff] [review]
Retry fix

Looking at the code I didn't find a better solution on short notice. It seems to work fine with resumable downloads. Downloads which can not resume might leave a truncated file and say ok (like graphics drivers from amd.com) but I have seen this even with jsdownloads. 

I would say way better than crashing or leaving duplicate entries around so job well done for now and r/a+

Everyone on cc who still cares about this: Please try out Bills latest build and see if you find any regressions. 
http://www.wg9s.com/comm-esr/

linux x64 will be up soon.
Attachment #9074414 - Flags: review?(frgrahl)
Attachment #9074414 - Flags: review+
Attachment #9074414 - Flags: approval-comm-esr52?
Attachment #9074414 - Flags: approval-comm-esr52+

The SeaMonkey release branch for 2.49.5 has been updated with the workarounds:
https://hg.mozilla.org/releases/mozilla-esr52/pushloghtml?changeset=3a4afe7ecac570decfb1d388eee2682d5d15dbc8

Status: REOPENED → RESOLVED
Closed: Last year5 months ago
Resolution: --- → FIXED
Target Milestone: --- → seamonkey2.49
You need to log in before you can comment on or make changes to this bug.