mozilla-mobile / fenix

⚠️ Fenix (Firefox for Android) moved to a new repository. It is now developed and maintained as part of: https://github.com/mozilla-mobile/firefox-android
https://github.com/mozilla-mobile/firefox-android
Mozilla Public License 2.0
6.48k stars 1.27k forks source link

Red lines appears in some webites[Bug] #20137

Closed jawadalkassim closed 3 years ago

jawadalkassim commented 3 years ago

Steps to reproduce

Launch Fenix Go to Github.com

Expected behavior

Website should look normal

Actual behavior

Screenshot_20210623-134836_Firefox

Screenshot_20210623-135505_Firefox

Device information

Other Browsers Works fine like Vivaldi and Brave

┆Issue is synchronized with this Jira Task

jawadalkassim commented 3 years ago

Screenshot_20210627-235350_Firefox Nightly

I thought it might be fixed in Nightly But it's also there

SoftVision-LorandJanos commented 3 years ago

Hi @jawadalkassim ! Thank you for your report! I am not able to reproduce the issue you described. Do you have webrender active? I know about a similar issue there. Maybe check if it still reproduces if you clear your data. Thank you! Tested on the latest Nightly (91.0a1 2021-06-30T05:09:53.235) and on Release 89.1.1 (Build #2015812947). Devices used: Motorola Nexus 6 (Android 7.1.1), Samsung Galaxy Tab 3 (Android 9), Google Pixel 4 (Android 11).

jawadalkassim commented 3 years ago

Hi @SoftVision-LorandJanos It's Only happening with Firefox I tested Vivaldi and Brave And Samsung Internet All good, Screenshot_20210630-151245_Firefox Nightly Screenshot_20210630-151639_Firefox Nightly

I think webrender is disabled by default Firefox Nightly Version : 91.0a1 (Build #2015819019) Stable and Beta have the same issue

kbrosnan commented 3 years ago

Moved to bugzilla: https://bugzilla.mozilla.org/show_bug.cgi?id=1719345

Change performed by the Move to Bugzilla add-on.

jamienicol commented 3 years ago

@jawadalkassim could you please got to about:support, click "copy text to clipboard", and attach the text to this bug? Thanks.

jawadalkassim commented 3 years ago

@jamienicol https://pastebin.com/DhyQ7A7i

firefox.txt

jamienicol commented 3 years ago

I have been able to reproduce this on github, but not at all reliably. @jawadalkassim does this happen every single time you open github or fotmob.com? Have you noticed it on any other websites? If so, please let me know which ones! hopefully I'll have better luck with some other websites.

jawadalkassim commented 3 years ago

@jamienicol Sometimes websites load normally, Also with Apkmirror.com (Apps icon, sometimes doesn't load and show black and red instead) Duckduckgo.com (with dark theme also Red line) But it's not happening all the time

jawadalkassim commented 3 years ago

Screenshot_20210715-175955_Firefox 89.1.1 (Build #2015812947) AC: 75.0.22, 5204f4025 GV: 89.0-20210527174632 AS: 74.0.1

jamienicol commented 2 years ago

@jawadalkassim apologies for the long delay getting back to you on this one. It turned out to be very tricky to find out what the issue was. I'm still not 100% sure to be honest, but it's definitely a bug in the PowerVR GPU driver and I think I have a workaround.

If you're interested: Basically to render a page we store certain elements in offscreen texture caches, such as images and borders. Additionally, to render certain elements such as the rounded rectangles and circular images, we first have to render an alpha mask in the desired shape to a different offscreen texture, and then we use that to for example clip a square image so that it looks circular. Due to a bug in the PowerVR driver, when we render the clip mask it was incorrectly being written to the texture cache, overwriting the item that was supposed to be in there. This is why you see strange red rounded-corner shapes on top of some of the images. This was due to a function called glInvalidateFramebuffer, which tells the driver when we are finished with a texture so that it can free the memory. It seems as if the driver was incorrectly freeing the memory too early, and therefore writing the mask to the wrong place.

I have made a fix to avoid calling this function on PowerVR GPUs. It should make its way to Firefox Nightly in the next few days, and hopefully in to a beta release soon as well. I'd be grateful if you could check in a few days whether this has been fixed. Thanks!

jawadalkassim commented 2 years ago

@jamienicol Sure, I'll test firefox nightly , and tell you when the issue is fixed

jawadalkassim commented 2 years ago

@jamienicol Finally Fixed 😍😍 thank you FF Nightly 93.0a1 (Build #2015827755)