Closed Bug 1633438 Opened 4 years ago Closed 4 years ago

Stub Installer progress remains stuck after window was dragged for more that 4-5 seconds

Categories

(Firefox :: Installer, defect, P1)

77 Branch
Desktop
Windows
defect

Tracking

()

VERIFIED FIXED
Firefox 77
Tracking Status
firefox77 --- verified

People

(Reporter: cbaica, Assigned: agashlin)

References

(Blocks 1 open bug)

Details

Attachments

(2 files)

Attached video install process halt

Affected versions

  • Fx77.0a1

Affected platforms

  • Windows

Steps to reproduce

  1. Launch the stub installer (doesn't matter which prompt is received).
  2. Right when the actual install process starts (progress bar is still empty), click the title bar and drag the window for about 4-5 seconds.
  3. Release the stub installer window.

Expected result

  • The install progress continues without issues.

Actual result

  • The install process remains stuck without any progress.

Additional notes

  • Even after a 5 minute wait there is no progress on the install.
  • The text keeps cycling without any issues.
  • This occurs on windows 10, 8.1 and 7.
  • Might be related to bug 1632768, but I don't know in what way.
Assignee: nobody → agashlin

There seem to be three problems combining:

  1. CreateTimer timers seem to not go off when the window is being moved (though JS timers still work), I agree that this is bug 1632768
  2. Because of this, if we keep dragging until the download finishes, OnDownload doesn't run until the download is complete, when InetBgDL returns "" for the size of the file (as it is no longer currently downloading the file). Therefore we conclude that the file downloaded isn't within the size bounds (15 to 150MB)
  3. Because we've finished the download but have the wrong size, we attempt to retry the download, but this does not seem to work. It doesn't clear $IsDownloadFinished, and since it doesn't delete the file the download finishes immediately again so we still don't get the real size.

I think fixing any of these would solve this, and all are bugs, but I want to figure out (1), why the timer APC isn't being run. (2) could be fixed with a different method for getting the download size. I might have a good idea for (3), but given that apparently we never went down this path before there would be considerably more to figure out and test.

The retry on download complete did not work properly, and we trust
the size of the file given that we download over https and check
with CertCheck, so I removed the other size checks which would have
retried infinitely given issues.

I ended up attacking the file size issue because I think a fix for the timer issue could be rather involved, I'll follow up over in bug 1632768. The patch I attached above should be sufficient to fix this blocker, I'll get a try build shortly.

Pushed by agashlin@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/04cd85306e5a
Remove download size checks, use file size as fallback for telemetry. r=mhowell
Status: NEW → RESOLVED
Closed: 4 years ago
Resolution: --- → FIXED
Target Milestone: --- → Firefox 77

Tested using the latest nightly Fx77.0a1 on Windows 10, ARM and Windows 8.1.
The issue is verified fixed. The installer no longer remains stuck when the window is dragged around for the mentioned period of time.

Status: RESOLVED → VERIFIED
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: