Closed Bug 1692776 Opened 4 years ago Closed 4 years ago

Firefox Nightly 87.0a1 (2021-02-14) (64-bit) ignores list of sites ok'd to open multiple windows

Categories

(Core :: Permission Manager, defect)

Firefox 87
defect

Tracking

()

RESOLVED INVALID

People

(Reporter: bugzilla, Unassigned)

References

Details

(Keywords: regressionwindow-wanted)

Attachments

(2 files)

User Agent: Mozilla/5.0 (X11; Linux x86_64; rv:87.0) Gecko/20100101 Firefox/87.0

Steps to reproduce:

Firefox Nightly 87.0a1 (2021-02-14) (64-bit) on up-to-date Debian Linux Buster
Enter 'http://www.wuebker.org/comix3.html' (without the quotes) in the address bar
Click on Tab Group 1 which starts a small Javascript routine which should open 8 pages of today's comics.

Actual results:

Firefox opens one page (Adam@Home) and creates a yellow bar saying that the other pages won't open. This is also a problem with my https bank site -- Firefox won't open the bank's Bill Pay page.

Expected results:

In the past (as late as last Thursday), Firefox happily opened 8 comic pages and (at my bank site) the Bill Pay page.

The Bugbug bot thinks this bug should belong to the 'Firefox::Address Bar' component, and is moving the bug to that component. Please revert this change in case you think the bot is wrong.

Component: Untriaged → Address Bar

The yellow bar has a button that lets you tell Firefox it's OK to open tabs for the specific site. When you try that, the tabs should open, and Firefox should remember your preference for that site. Does that not work?

Component: Address Bar → General
Flags: needinfo?(bugzilla)

When I click on the specific URLs in the yellow tab, those URLs open.
However, Firefox Nightly does not then allow me to click on the links which run Javascript to open the multiple tabs.
In other words, Firefox Nightly 87.0a1 (2021-02-17) (64-bit) neither respects my "Block pop-up windows" Exceptions... list
nor allows me to OK any of the windows in the list on the yellow bar.
It may be that Firefox is confusing my allowing the original page "http://www.wuebker.org/comix3.html", which is in the exceptions list as "http://www.wuebker.org" with the 8 pages that the comix3.html page javascript is trying to open.
Again, this was working perfectly on Thursday or Friday, 11~12Feb2021, but failed to work on Saturday through today's Nightly.

Flags: needinfo?(bugzilla)

Maybe something changed recently. Let's move this to a better Bugzilla component for further triage. It looks like recent back-end popup-blocker bugs are in Core :: DOM: Core & HTML.

Component: General → DOM: Core & HTML
Product: Firefox → Core

Couldn't reproduce this with Nightly (87.0a1 (2021-02-17)) on Ubuntu 18.40.

Reporter, could you perhaps try to find the regression range?
https://mozilla.github.io/mozregression/ can be useful.

Flags: needinfo?(bugzilla)
QA Whiteboard: [qa-regression-triage]

Per smaug, I did try the regression and was very impressed by it -- kudos to the inventor(s). It wasn't clear how to report the results, so I will try to attach the end screenshot. The regression always brings in a new, initialized browser, so here's what I did to reproduce both the successful & problem runs:
Hamburger > Preferences > Privacy & Security
Block Popup Windows [already checked] > Exceptions...
Enter http://www.wuebker.org and click on Allow
In the same window bar, type http://www.wuebker.org
Click on the Today's Funny Papers link
Click on the ...and lots of Other Funnies All on One Page link
You should be on http://www.wuebker.org/comix3.html (using this instead of navigation may work, I didn't try it)
Click on the Tab Group 1 link (which runs web page Javascript)
When it works, Tab Group 1 opens 8 pages from comic sites
When it doesn't work, Tab Group 1 opens 1 page and displays a yellow bar on the comix3.html page
I will submit this comment, then try to attach the final regression page.

Flags: needinfo?(bugzilla)
Attached image firefox_bug_1692776.png

File firefox_bug_1692776.png is the final screenshot from your impressive regression bisecting tool. I did not know of another way to send the data from the regression tool to you, so I took a screenshot.

that pushlog url on the right would be interesting. Unfortunately the image shows only parts of it.
Could you perhaps paste that link here?

(I have used only the text based mozregression, so not really familiar with the GUI)

Flags: needinfo?(bugzilla)

I have tried with both the text-based mozregression & the mozregression-gui and the firefox browsers that mozregression brings up work correctly. However, the problem is still in my nightly version.
Is there a way to point the browsers that mozregression brings up to a copy of my firefox configuration?
If not, I will have to withdraw this bug because I've made many changes to the standard configurations over the year & changing those manually for each regression test would take quite a bit of time. In addition, some of the configuration changes (i.e. Never remember history) require a browser to reboot itself & I'm not sure if that would work with the mozregression S/W starting the browser.

Flags: needinfo?(bugzilla)
Component: DOM: Core & HTML → DOM: Navigation

I've tried reproducing the issue based on the steps provided in comment 7, but without any success. After allowing http://www.wuebker.org/ in the pop-up exception list, all 8 pages from the "Tab Group 1" list are opened.

Regarding the use of your firefox config in mozregression GUI, that is indeed possible. You should be able to select the the profile folder in one of the steps prior to the regression bisection as seen in the attached image.
You can find your profile folder by navigating to about:profiles and opening the root directory of the profile that appears to be in use, then use that path in the mozregression GUI to point to the profile you want to use.

Flags: needinfo?(bugzilla)

Thank you for the explanation. Browsing to my profile in mozregression-gui didn't work, but I was able to use this statement:

mozregression --profile '/path/to/my/profile' --good 2021-02-01 --bad 2021-02-16

to verify that, using my profile, my 'good' version of Firefox failed. Since I know Firefox did not have this problem at that time, and since unchecking the Preferences > Privacy & Security > Block pop-up windows box allows everything to work again, I'm now guessing that the problem lies with my profile.

To try to verify that, I used the Remove All Websites button on the Allowed Websites - Pop-ups page and added just the http://www.wuebker.org website as an allowed website. I saved my changes, closed the browser, restarted it from the command prompt and saw the same problem.

I then retried the mozregression above. mozregression complained about the lock and failed, so I removed the lock & restarted mozregression. regression started normally, but again the 02-01-2021 Firefox showed the problem.

I now believe that this is not a Firefox problem; instead, it's a problem with my Firefox profile and that my problem is:
* When I uncheck the Preference > Privacy & Security > Block pop-up windows box, everything works.
* When I list the web page in the Allowed Websites - Pop-ups page and check the box, opening the 2nd..nth page does not work.
Which brings up a couple of questions:
* What is the difference between unchecking the box and leaving the box checked while having the web page listed in the Allowed Websites window?
* In the 'Box checked & website in the Allowed Websites window case, why did my javascript bring up the first page but not the 2nd page?

I tried clearing the list of allowed sites and my javascript was still able to bring up the first comic page. I'm guessing that it shouldn't be able to do that. I looked at the javascript more carefully and discovered I was using 'new comic()' but comic was a function -- in other languages, I know you can use 'new' on a class but I'm not sure using it on a function in javascript is legal. So I'll have to see if changing the javascript helps (I don't think it will, other sites which are allowed to bring up popups can't bring up any popup), but I still suspect my profile because no one at Mozilla can reproduce this problem.

So, requesting advice from you experts:
* Which file or encrypted file and/or directory in the profile holds the list of allowed sites? Can I remove this item (or rename it to .bak) without damaging other parts of the profile?
* Is there a small set of firefox or profile files which contains the code for allowing websites to open popups? If so, can you list them for me? I can throw a few print statements in them to see if I can quickly figure out this problem.

Thank you very much for your patience. IMHO, Firefox is the best browser around.

Flags: needinfo?(bugzilla)

I have a new procedure which I hope will allow you to reproduce the bug. When Nightly is in Preference > Privacy & Security > Remember History mode, the web page opens all the comics. When Nightly is in Preference > Privacy & Security > Never Remember History mode, the page opens one comic. Here's the procedure I used to Refresh Nightly, show that the web page works, change to Never Remember History mode, show that the web page only opens 1 comic, then change back to Remember History mode & show that the web page works again.

  1. Hamburger menu > Help > More Troubleshooting Information
  2. Refresh Nightly > Refresh Nightly & wait for the timeout
  3. Restore only the ones you want > Uncheck All > Let's Go!
  4. Hamburger > Preference > Privacy & Security
  5. Block pop-up windows should be checked
    Exceptions: Enter http://www.wuebker.org [Allow] [Save Changes]
  6. New Tab, enter http://www.wuebker.org/comix3.html in the address bar
    Click on Tab Group 1, 8 or 9 comic pages appear in the tab [WORKS]
  7. Close the comics & return to the Preferences > Privacy & Security tab
  8. Nightly will Never Remember History > Restart Nightly Now
  9. Click on the existing New Tab
    Enter http://www.wuebker.org/comix3.html in the address bar
    Click on Tab Group 1 and only 1 comic (Adam@Home) appears [FAILS]
  10. Close the comic & open the Preferences > Privacy & Security tab
  11. Nightly will Remember History > Restart Nightly Now
  12. Open a new New Tab
    Enter http://www.wuebker.org/comix3.html in the address bar
  13. Click on Tab Group 1, 8 or 9 comic pages appear in the tab [WORKS]

"Never Remember History" mode behaves the same as Private Browsing mode. "Never Remember History" mode is not expected to save any new site permissions or use any existing remembered permissions. You might be able to work around this problem by setting about:config pref permissions.isolateBy.privateBrowsing to false.

@ Paul, Nika says this bug is probably related to OriginAttributes bug 1422056.

Moving to the Core::Permission Manager component.

Status: UNCONFIRMED → NEW
Component: DOM: Navigation → Permission Manager
Ever confirmed: true
Flags: needinfo?(pbz)
See Also: → 1422056

Correct, since "Never Remember History" mode is practically Private Browsing mode we do not persist any permissions since Bug 1601256. The check for that is here in the permission manager: https://searchfox.org/mozilla-central/rev/5a66c4b4a41ab78a87c30c9db0d93c732c534402/extensions/permissions/PermissionManager.cpp#1601-1611
The permission list of sites allowed to open pop-ups in about:preferences only applies to non private browsing windows, since private browsing permissions are isolated from normal browsing. This will ship in release in 87 (Bug 1680237).

I'd argue that this bug is intended behavior. However, as a workaround you can switch permissions.isolateBy.privateBrowsing to false as Chris mentioned.

Flags: needinfo?(pbz)
See Also: → 1601256, 1680237

(In reply to Paul Zühlcke [:pbz] from comment #15)

I'd argue that this bug is intended behavior. However, as a workaround you can switch permissions.isolateBy.privateBrowsing to false as Chris mentioned.

In that case, I will close this bug report as "invalid" (not a bug). Thanks for confirming!

I'm glad the pref workaround is available for the bug reporter's use case.

Status: NEW → RESOLVED
Closed: 4 years ago
Resolution: --- → INVALID
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: