Iframe is not rendered
Reported by
yau...@surfly.com,
May 4 2017
|
||||||||||||||
Issue descriptionUserAgent: Mozilla/5.0 (X11; Fedora; Linux x86_64; rv:53.0) Gecko/20100101 Firefox/53.0 Example URL: See description Steps to reproduce the problem: Please check the video (https://drive.google.com/file/d/0ByG9lmw9sRzbZzkxb2hEbnBXdGM/view?usp=sharing) for details (it is better to download it, as a preview has a very bad quality). Credentials for test account on surfly.com: email: yauhen+chrome@surfly.com password: chrometest To reproduce it you need to start a session with test url http://dev.sascargo.com/en/Environment/TestCobrowseAPI.aspx and join the session with Chrome browser. Please also enable "Disable cache" option in developer toolbars. What is the expected behavior? The content of the iframe should be shown What went wrong? The content of the iframe is often invisible 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: Chrome 58.0.3029.81 (64-bit) Channel: stable OS Version: fedora 25 Flash Version: Shockwave Flash 25.0 r0 I also noticed that on the test page (http://dev.sascargo.com/en/Environment/TestCobrowseAPI.aspx) inside the <head> element there is a <link> element: <link rel="stylesheet" href="/styles/StyleCollection.css" type="text/css"> The content of the file is the following: @import url("BasicDesign.css"); @import url("HeaderDesign.css"); @import url("NavigationDesign.css"); @import url("FooterDesign.css"); @import url("TextDesign.css"); @import url("SubMenuDesign.css"); @import url("ContentDesign.css"); @import url("Common.css"); @import url("StationFileStyle.css"); @import url("Components/ImageList.css"); @import url("Skins/SasCargo/Grid.SasCargo.css"); @import url("Skins/SasCargo/Calendar.SasCargo.css"); @import url("Skins/SasCargo/ComboBox.SasCargo.css"); @import url("Skins/SasCargo/ToolTip.SasCargo.css"); @import url("Skins/SasCargo/Editor.SasCargo.css"); @import url("Skins/SasCargo/Menu.SasCargo.css"); If I move imports out of the css file directly into the <style> element like this: <style type="text/css"> @import url("/styles/BasicDesign.css"); @import url("/styles/HeaderDesign.css"); @import url("/styles/NavigationDesign.css"); @import url("/styles/FooterDesign.css"); @import url("/styles/TextDesign.css"); @import url("/styles/SubMenuDesign.css"); @import url("/styles/ContentDesign.css"); @import url("/styles/Common.css"); @import url("/styles/StationFileStyle.css"); @import url("/styles/Components/ImageList.css"); @import url("/styles/Skins/SasCargo/Grid.SasCargo.css"); @import url("/styles/Skins/SasCargo/Calendar.SasCargo.css"); @import url("/styles/Skins/SasCargo/ComboBox.SasCargo.css"); @import url("/styles/Skins/SasCargo/ToolTip.SasCargo.css"); @import url("/styles/Skins/SasCargo/Editor.SasCargo.css"); @import url("/styles/Skins/SasCargo/Menu.SasCargo.css"); </style> there is no rendering issues.
,
May 5 2017
,
May 5 2017
Tested the issue on fedora 25 , fedora 24 and ubuntu 14.04 using chrome M58 #58.0.3029.96 and followed the below steps: 1. Launched chrome and navigated to "surfly.com" and logged in with given credentials. 2. Started session with http://dev.sascargo.com/en/Environment/TestCobrowseAPI.aspx and opened incognito window and started the co session and enabled the disable cache in developer tools . 3. Observed that iframe is loaded . Attached screencast for reference. @yauhen-- Could you please check attached steps and screencast of the issue and confirm us if we have missed any steps in reproducing the issue and please try in latest chrome stable and update with your observations. Thanks!
,
May 5 2017
Looks like they applied a workaround I described in the bug report. I created a new simple page (https://jsnjack.github.io/) on which it should be possible to reproduce the issue. Please also check the video that shows how to reproduce the bug in the latest Chrome 58.0.3029.96 https://drive.google.com/file/d/0ByG9lmw9sRzbOWVhYjhqLTlFZFU/view?usp=sharing (download the video for a better quality)
,
May 5 2017
Thank you for providing more feedback. Adding requester "hdodda@chromium.org" to the cc list and removing "Needs-Feedback" label. For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
,
May 8 2017
> I created a new simple page (https://jsnjack.github.io/) The page only has the following content. Is it expected? <html> <head> <link rel="stylesheet" href="style.css" type="text/css"> </head> <body> White page </body> </html>
,
May 8 2017
Yes, that is the page that reproduces the bug. The important part on the page is <link> element which loads stylesheet file which also loads another stylesheet file using @import.
,
May 8 2017
main.css imported from style.css has body{color:red;}, and I saw the red "White page". Do you mean you didn't see the red "White page", and saw the default black "White page"?
,
May 8 2017
Yes. The text "White page" is not always shown on the page. Please check this video https://drive.google.com/file/d/0ByG9lmw9sRzbOWVhYjhqLTlFZFU/view?usp=sharing
,
May 8 2017
Tested the issue on Fedora 25 , ubuntu 14.04 using chrome M58 #58.0.3029.96 & M60 #60.0.3091.0 and issue is reproduced with the new link provided in comment #4. Issue is seen from M48 and is a non-regression issue and is not seen in other OS. Marking it as untraiged for further inputs on this. Thanks!
,
May 8 2017
This bug is also reproducible in Windows 8 (Chrome version 58.0.3029.96) and OSX
,
May 8 2017
meade@, can you triage?
,
May 9 2017
I'm confused - I couldn't reproduce this on Ubuntu 14.04 + Chrome 58.0.3029.96 (64-bit) or a build from TOT, or on OSX 10.12.4 with Chrome 58.0.3029.33, or Chrome 60.0.3091.0. I see the red text "White page" on all of these systems. Am I missing something?
,
May 9 2017
I was also unable to repro it on Windows 10 + Chrome 58.0.3029.96 (64-bit) and 60.0.3091.0. In all cases, I go to "https://jsnjack.github.io/", and see the red text "White page", even if I refresh the page a few times.
,
May 9 2017
There is a video in the bug description that shows how to reproduce the issue. Basically you need to: 1. Open surfly.com, log in using credentials email: yauhen+chrome@surfly.com password: chrometest 2. Start a session on https://jsnjack.github.io/ 3. Copy the session link and open it in private window, cache disable, observe the issue Please check this video for detailed steps https://drive.google.com/file/d/0ByG9lmw9sRzbZzkxb2hEbnBXdGM/view?usp=sharing and this video shows the bug in jsnjack.github.io website https://drive.google.com/file/d/0ByG9lmw9sRzbOWVhYjhqLTlFZFU/view?usp=sharing
,
May 9 2017
I was not able to repro with https://jsnjack.github.io/ either (Ubuntu 16.04, tried incognito with disabled cache, as well).
,
May 9 2017
Tested surfly on Linux x64 Ubuntu 16.04, Chrome 58.0.3029.81 The SAS iframe shows up every time for me. Cannot reproduce.
,
May 9 2017
#16, have you tried to refresh the page multiple times because it works for me once in while (that is also shown in the video)? (I think, approx. 20% of the cases)
,
May 9 2017
Yes, I have. Both for #16 and #17.
,
May 9 2017
#17, you can't reproduce it on the SAS website because they applied a workaround I described in the bug description. Could you please try to reproduce it on the https://jsnjack.github.io/ website (see #4 and #15 for instructions) I also created a session to reproduce it (I will keep it alive for some time). If you just open https://surfly.com/137-842-580 in Chrome you should be able to reproduce it
,
May 9 2017
Right, now I can reproduce it with surfly + jsnjack.github.io. I didn't read #15 and thought the github case failed on its own.
,
May 9 2017
There are three nested iframes. That is, 4 documents nested. If I modify the innermost iframe, which is the site being tested, in devtools, nothing happens. If I add a text sibling to the iframe element of the innermost iframe, it starts displaying.
,
May 9 2017
After a bunch of printf-debugging, I've narrowed this down to Add/RemovePendingSheet. When it fails, RemovePendingSheet is not called, but AddPendingSheet is called twice for style.css, for two different node pointers. The first, a blocking sheet (type=2), and then a non-blocking sheet (type=1). When it FAILS: #LinkStyle::AddPendingSheet - docurl: https://surfly.com/931-151-820 - url: https://static.opentok.com/webrtc/v2.11.3/css/TB.min.css - type: 1, doc: 0x23890ba42560 - owner: 0x23890ba5a998 #LinkStyle::RemovePendingSheet - docurl: https://surfly.com/931-151-820 - url: https://static.opentok.com/webrtc/v2.11.3/css/TB.min.css - type: 1, doc: 0x23890ba42560 - owner: 0x23890ba5a998 #LinkStyle::AddPendingSheet - docurl: https://session.surfly.com/fHobhlDH3RfCcPdwTLdyV7w? - url: https://session.surfly.com/s/sitesup-6771e85d3ecd8975124f0154272116f3.css - type: 2, doc: 0x23890bb66968 - owner: 0x23890bb678b8 #LinkStyle::RemovePendingSheet - docurl: https://session.surfly.com/fHobhlDH3RfCcPdwTLdyV7w? - url: https://session.surfly.com/s/sitesup-6771e85d3ecd8975124f0154272116f3.css - type: 2, doc: 0x23890bb66968 - owner: 0x23890bb678b8 #LinkStyle::AddPendingSheet - docurl: https://github-io-p.surfly.com/jsnjack/ST/fHobhlDH3RfCcPdwTLdyV7w//////////?SURFLY_TAB_PREFIX=_surfly_tab0 - url: https://github-io-p.surfly.com/jsnjack/ST/fHobhlDH3RfCcPdwTLdyV7w//////////style.css?SURFLY=L?SURFLY_TAB_PREFIX=_surfly_tab0 - type: 2, doc: 0x23890bb71f00 - owner: 0x23890bb72cf0 #LinkStyle::AddPendingSheet - docurl: https://github-io-p.surfly.com/jsnjack/ST/fHobhlDH3RfCcPdwTLdyV7w//////////?SURFLY_TAB_PREFIX=_surfly_tab0 - url: https://github-io-p.surfly.com/jsnjack/ST/fHobhlDH3RfCcPdwTLdyV7w//////////style.css?SURFLY=L?SURFLY_TAB_PREFIX=_surfly_tab0 - type: 1, doc: 0x23890bb71f00 - owner: 0x23890bb73118 When it WORKS: #LinkStyle::AddPendingSheet - docurl: https://surfly.com/931-151-820 - url: https://static.opentok.com/webrtc/v2.11.3/css/TB.min.css - type: 1, doc: 0x3616a1921e48 - owner: 0x3616a1938c10 #LinkStyle::RemovePendingSheet - docurl: https://surfly.com/931-151-820 - url: https://static.opentok.com/webrtc/v2.11.3/css/TB.min.css - type: 1, doc: 0x3616a1921e48 - owner: 0x3616a1938c10 #LinkStyle::AddPendingSheet - docurl: https://session.surfly.com/fHobhlDH3RfCcPdwTLdyV7w? - url: https://session.surfly.com/s/sitesup-6771e85d3ecd8975124f0154272116f3.css - type: 2, doc: 0x3616a190be80 - owner: 0x3616a190cdd0 #LinkStyle::RemovePendingSheet - docurl: https://session.surfly.com/fHobhlDH3RfCcPdwTLdyV7w? - url: https://session.surfly.com/s/sitesup-6771e85d3ecd8975124f0154272116f3.css - type: 2, doc: 0x3616a190be80 - owner: 0x3616a190cdd0 #LinkStyle::AddPendingSheet - docurl: https://github-io-p.surfly.com/jsnjack/ST/fHobhlDH3RfCcPdwTLdyV7w//////////?SURFLY_TAB_PREFIX=_surfly_tab0 - url: https://github-io-p.surfly.com/jsnjack/ST/fHobhlDH3RfCcPdwTLdyV7w//////////style.css?SURFLY=L?SURFLY_TAB_PREFIX=_surfly_tab0 - type: 2, doc: 0x3616a1917a50 - owner: 0x3616a1918840 #LinkStyle::RemovePendingSheet - docurl: https://github-io-p.surfly.com/jsnjack/ST/fHobhlDH3RfCcPdwTLdyV7w//////////?SURFLY_TAB_PREFIX=_surfly_tab0 - url: https://github-io-p.surfly.com/jsnjack/ST/fHobhlDH3RfCcPdwTLdyV7w//////////style.css?SURFLY=L?SURFLY_TAB_PREFIX=_surfly_tab0 - type: 2, doc: 0x3616a1917a50 - owner: 0x3616a1918840
,
May 9 2017
,
May 9 2017
Found the issue, I think ...
,
May 10 2017
,
May 10 2017
,
May 10 2017
Thanks for the update yauhen, I guess I misunderstood the instructions. Removing needs-feedback label. Also Rune, thanks for taking a look into this! Also changing to update-quarterly, since it's not a regression (this doesn't mean we won't update more frequently than that).
,
May 10 2017
Up for review: https://codereview.chromium.org/2873133002/
,
May 11 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/da87d9568ea3b57d705d9b8caa664f03293af321 commit da87d9568ea3b57d705d9b8caa664f03293af321 Author: rune <rune@opera.com> Date: Thu May 11 14:06:40 2017 Check StyleSheetIsLoading before clearing LinkStyle sheet. StyleSheetIsLoading() returns true if the top sheet is loaded but has loading imports. If the top level sheet is cleared before we check the loading status, we will not appropriately call RemovedPendingSheet() which may block rendering indefinitely. R=meade@chromium.org,pmeenan@chromium.org BUG= 718358 Review-Url: https://codereview.chromium.org/2873133002 Cr-Commit-Position: refs/heads/master@{#470943} [add] https://crrev.com/da87d9568ea3b57d705d9b8caa664f03293af321/third_party/WebKit/LayoutTests/http/tests/css/remove-blocking-with-loading-import-expected.html [add] https://crrev.com/da87d9568ea3b57d705d9b8caa664f03293af321/third_party/WebKit/LayoutTests/http/tests/css/remove-blocking-with-loading-import.html [modify] https://crrev.com/da87d9568ea3b57d705d9b8caa664f03293af321/third_party/WebKit/Source/core/html/LinkStyle.cpp
,
May 11 2017
,
May 11 2017
|
||||||||||||||
►
Sign in to add a comment |
||||||||||||||
Comment 1 by lfg@chromium.org
, May 4 2017Labels: Needs-Bisect Needs-TestConfirmation