New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 628938 link

Starred by 0 users

Issue metadata

Status: WontFix
Owner:
Email to this user bounced
Closed: Jul 2016
Components:
EstimatedDays: ----
NextAction: ----
OS: Windows
Pri: 2
Type: Bug



Sign in to add a comment

Canvas contents does not render when discarding file download

Reported by pa...@werl.cz, Jul 17 2016

Issue description

UserAgent: Mozilla/5.0 (Windows NT 6.3; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.106 Safari/537.36

Example URL:
N/A

Steps to reproduce the problem:
1. Open the attached file in a new Chrome tab
2. Open another tab, and use the address bar to directly download some file (the bottom download bar must pop up, so you might want to use some .exe setup file download URL for that)
3. Don't close the download bar, but switch back to the tab you opened in step 1.
4. Discard the download

What is the expected behavior?
The canvas should still render its contents after discarding the download.

What went wrong?
Canvas no longer renders its contents. Surprisingly, if I use getContext('2d').getImageData, I can still read the image stored in the canvas. It just doesn't render on the page.

Does it occur on multiple sites: Yes

Is it a problem with a plugin? No 

Did this work before? N/A 

Does this work in other browsers? Yes 

Chrome version: 51.0.2704.106  Channel: stable
OS Version: 6.3
Flash Version: 

I have discovered this behavior on quite complex website, where the canvas MIGHT stop rendering (it doesn't always happen) when:

1) the download bar pops up
2) the download bar is discarded
3) other tab is closed
 
chromebug.html
2.0 KB View Download

Comment 1 Deleted

Comment 2 by pa...@werl.cz, Jul 17 2016

So there is kind of a workaround, using a piece of javascript code below. The code makes it very rare for the bug to happen, but if you are persistent enough and keep trying, you should be able to reproduce the bug eventually.

Anyway, another "workaround" when you experience this bug is to switch to another tab and then back to the buggy tab, and the canvas should render correctly again.


var isChrome = !!window.chrome
if (isChrome === true)
{
    var canvasContext = canvas.getContext('2d');
    setInterval(function() {
        canvasContext.clearRect(0, 0, 1, 1);
    }, 0);
}
Components: -Blink Blink>Canvas
Labels: Needs-Feedback
pavel@Could you please provide the sample file for step 2 with actual and expected behavior screencast for better understanding the issue to triage it further.

Comment 5 by pa...@werl.cz, Jul 18 2016

Yes, please see the attachment.
bug-actual.wmv
689 KB Download
bug-expected.wmv
984 KB Download
Project Member

Comment 6 by sheriffbot@chromium.org, Jul 19 2016

Labels: -Needs-Feedback Needs-Review
Owner: ssamanoori@chromium.org
Thank you for providing more feedback. Adding requester "ssamanoori@chromium.org" for another review and adding "Needs-Review" label for tracking.

For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
Status: WontFix (was: Unconfirmed)
Hi pavel@, could you please try chrome canary:
https://www.google.com/chrome/browser/canary.html

I tried on a win10 desktop, and I can reproduce the bug on chrome 51 (stable version). When I tried on chrome canary, I can no longer reproduce it. Looks like it is fixed on canary.

Feel free to re-open the bug if you found that this is reproducible on canary.

Comment 8 by pa...@werl.cz, Jul 20 2016

Hi,

I have tested it on canary and can't reproduce it either. Great! Looking forward to this being pushed to the stable line. Cheers.

Sign in to add a comment