uBlockOrigin / uMatrix-issues

This is the community-maintained issue tracker for uMatrix
https://github.com/gorhill/uMatrix
123 stars 17 forks source link

"Hide placeholder of blocked elements" prevents images from being displayed on refresh #266

Open Dupond opened 4 years ago

Dupond commented 4 years ago

Prerequisites

Description

First of all English is not my primary language ; I'll try to be as clear as I can. Please ask if necessary.

I have read the wiki, especially About "the page is still broken after I created all necessary rules" and Per scope switches.

My searches have shown me that there are (or have been) quite a few issues regarding images not being loaded, but a search for the "Hide placeholder of blocked elements" setting doesn't show much. And I'd like to add that this issue has nothing to do with "Per scope switches".

With Firefox (any version, haven't tested with Chrome), if "Hide placeholder of blocked elements" is checked AND all images are blocked, then any image on any page is NOT displayed when I unblock it. Forcing a refresh (including Ctrl+F5, Shift+click, etc.) of the page doesn't change anything.

As advised in the Wiki, I've checked the keylogger : it shows that the images are not blocked after the refresh. However, they are not displayed on the screen.

I've thought about a possible solution, but I don't know if it can be done (so not tested): that would be to uncheck "Hide placeholder of blocked elements" and, if one doesn't want to see the grid, hide it by a custom userChrome.css.

A specific URL where the issue occurs

Any webpage, for example https://www.falkon.org/

Steps to Reproduce

  1. Add the following rule: * * * block
  2. Check the "Hide placeholder of blocked elements" setting.
  3. Go to any webpage.
  4. Authorize images (falkon.org www.falkon.org image allow).
  5. Refresh the webpage: the images are still not displayed.

Ruleset

https-strict: behind-the-scene false
matrix-off: about-scheme true
matrix-off: behind-the-scene true
matrix-off: chrome-extension-scheme true
matrix-off: chrome-scheme true
matrix-off: moz-extension-scheme true
matrix-off: opera-scheme true
matrix-off: vivaldi-scheme true
matrix-off: wyciwyg-scheme true
referrer-spoof: behind-the-scene false
* * * block

Supporting evidence

Following the above "steps to reproduce", the keylogger for the https://www.falkon.org/ webpage shows:

Your environment

gwarser commented 4 years ago

OK, I can reproduce.

gwarser commented 4 years ago

If I unblock -> reload (no image) -> wait 20 seconds -> reload -> image is visible.

uBlock-user commented 4 years ago

@gwarser related to https://github.com/uBlockOrigin/uMatrix-issues/issues/189 ?

gwarser commented 4 years ago

@uBlock-user no, hard refresh does not help.

Dupond commented 4 years ago

@gwarser Or even just wait 20 secs -> unblock -> refresh -> image is displayed.

The minimum amount of time to wait before refreshing does seem to be around 20 seconds...

Since according to the logger everything seems to be fine as far as uMatrix is concerned, I think it would be useful to know if this can be closed as being a Firefox bug or not.

So is there anyone using Chrome or Chromium who could test the "steps to reproduce"?

gwarser commented 4 years ago

Chrome 83.0.4103.97 works fine. Worst case, cache free reload is working.


It's also fine on Firefox ESR.

Will someone try mozregression?

gwarser commented 4 years ago

Wait, stop, I was wrong! I forgot about "Hide placeholder of blocked elements", sorry. Will try again.


It's broken everywhere, uMatrix issue. 1.4.1b0 is also affected.

gwarser commented 4 years ago

Broken by https://github.com/gorhill/uMatrix/commit/73c8da05b7592e8d26a2cfd3892c8598d9e70141


20 seconds: https://github.com/gorhill/uMatrix/commit/73c8da05b7592e8d26a2cfd3892c8598d9e70141#diff-015f7477396946c0612213769f5a13bfR43-R73