Skip to content
This repository has been archived by the owner on Dec 29, 2022. It is now read-only.

Page reload loop when recording URL using WTF #589

Open
kenrussell opened this issue Mar 1, 2017 · 4 comments
Open

Page reload loop when recording URL using WTF #589

kenrussell opened this issue Mar 1, 2017 · 4 comments

Comments

@kenrussell
Copy link
Member

While trying to diagnose a significant graphics driver bug http://crbug.com/696187 using WTF, I enabled recording for the associated URL:

https://floooh.github.io/oryol-webgl2/asmjs/MultipleRenderTarget.html

Doing so causes the browser to go into an infinite loop reloading the page.

Maybe this is caused by the fact that the page is using WebGL 2.0 rather than WebGL 1.0, and WTF probably needs to be extended to support the new API. Still, it should fail more gracefully.

CC'ing @spite as he found similar problems trying to debug other WebGL content; not sure whether that was for WebGL 1.0 or 2.0.

@spite
Copy link

spite commented Mar 1, 2017

Yes, happens on WebGL 1 content, too.

It also happens with an incognito session with no extensions, not the first time, but the second time around: starting a new incognito session, recoding and stopping doesn't loop; but starting a new recording in the same browser, it loops.

Could it be related to a cookie or localStorage stored value?

@rsturgell
Copy link
Contributor

Yes the infinite reload thing is super annoying and it's been a problem for a while. Something changed security-wise in chrome at some point which affects how we load our script into the page.

If you're injecting in an https page, you need to click the little "load unsafe scripts" badge in the url bar to proceed, but the reload makes that impossible. One hacky way to get around this is to open the devtools and hit the "pause" button - this will give you a chance to enable the script loading, and then you can "play" to continue loading.

As far as webgl2 - currently we just intercept getContext(webgl|experimental-webgl), so we'll just silently ignore any webgl2 action.

I added an issue to track webgl2 support: #593

@kenrussell
Copy link
Member Author

Thanks @rsturgell for the explanation. Is there some other way you can inject your needed scripts into the page -- maybe eval'ing them -- so that it doesn't think the https page is loading a non-https script? I'm pretty sure @spite has done similar tricks for his DevTools extensions.

@msfeldstein
Copy link

Can we host the pages it needs to load on an https server?

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants