Closed Bug 1558023 Opened 2 years ago Closed 2 years ago

captive portal infobar ("Open Network Login Page") no longer goes away automatically and can't be closed

Categories

(Firefox :: Untriaged, defect)

69 Branch
defect
Not set
normal

Tracking

()

RESOLVED FIXED
Firefox 69
Tracking Status
firefox-esr60 --- unaffected
firefox67 --- unaffected
firefox68 --- unaffected
firefox69 + fixed

People

(Reporter: giul.mus, Assigned: nhnt11)

References

(Regression)

Details

(Keywords: regression)

Attachments

(3 files)

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

Steps to reproduce:

Connect to a network with a captive portal; log in successfully; try to close the bar clicking on the X button.

Actual results:

The X button was highlighted when I put my mouse on it, clicking it changed the highlight color, but otherwise had no effect.

Expected results:

Either the captive portal bar ("You must log in to this network...") closes automatically, or it can be closed clicking on the X button.

I've been seeing this as well for about the past week; I think it was a regression sometime last week or maybe only slightly before. I'm also on 64-bit Linux, running 64-bit nightlies on Ubuntu 18.04 LTS.

It used to be that the infobar disappeared the moment I was logged in; now it no longer does, and the [X] to close it no longer works.

Was Firefox 68 (i.e., beta) the version you were seeing this on? That surprises me a little given that I saw the regression on nightly (Firefox 69) so recently.

Status: UNCONFIRMED → NEW
Ever confirmed: true
Summary: Can't close captive portal bar → captive portal infobar ("Open Network Login Page") no longer goes away automatically and can't be closed

I've been seeing this in Nightly indeed, and within the same window. I think I filed this under Firefox 69? I did not intend to reference Firefox 68.

I can try and investigate this sometime soon. needinfo'ing myself to track.

(In reply to David Baron :dbaron: 🏴󠁵󠁳󠁣󠁡󠁿 ⌚UTC-7 from comment #1)

It used to be that the infobar disappeared the moment I was logged in; now it no longer does, and the [X] to close it no longer works.

Do you see any errors in the console when attempting to close the info-bar?

Flags: needinfo?(nhnt11)

(In reply to Nihanth Subramanya [:nhnt11] from comment #3)

Do you see any errors in the console when attempting to close the info-bar?

I think there's nothing relevant. I tried to launch the browser (Nightly 2019-06-11) on a fresh start (so the captive portal was presented), attempted to close the bar before and after logging in, and the only errors of interest in the browser console were:

TypeError: this._textbox is undefined - searchbar.js:164:9
[Exception... "Component returned failure code: 0x80004001 (NS_ERROR_NOT_IMPLEMENTED) [nsIAppStartup.secondsSinceLastOSRestart]"  nsresult: "0x80004001 (NS_ERROR_NOT_IMPLEMENTED)"  location: "JS frame :: resource:///modules/BrowserGlue.jsm :: _collectStartupConditionsTelemetry :: line 1321"  data: no] - BrowserGlue.jsm:1321:39
Error: listener not re-registered (2) - ExtensionCommon.jsm:2129:22
Unchecked lastError value: Error: Could not establish connection. Receiving end does not exist. - dnt.js:52
Unchecked lastError value: Error: Could not establish connection. Receiving end does not exist. - fingerprinting.js:316
listener not re-registered - ExtensionCommon.jsm:2129
listener not re-registered - ExtensionCommon.jsm:2129
[Exception... "Favicon at "http://<captive portal URL>/favicon.ico" failed to load: Not Found."  nsresult: "0x80004005 (NS_ERROR_FAILURE)"  location: "JS frame :: resource:///modules/FaviconLoader.jsm :: onStopRequest :: line 199"  data: no] - FaviconLoader.jsm:199:42

I didn't see any error messages when clicking the [X], but there was some interesting stuff in the browser console...

I did manage to close this once after clicking on the bar’s close button ~15 times. I guess it’s opening multiple stacked on top of each other or something?

Now that you mention it, that also works for me, though in my case it was more like 7-8 times.

Duplicate of this bug: 1559753

I'm seeing the same thing (Nightly on macOS). It does indeed appear that it's opening multiple bars -- after clicking the close button many times it went away. You can even spot the animation of it closing (only for the next one to then appear in place).

I had some time to investigate this. This seems to be a regression from bug 1556259. The captive-portal-login notification is now being sent multiple times, and the frontend code that receives it is not idempotent, so a new notification is appended for each one.

We should patch the frontend to be idempotent, but also, Valentin, maybe this is something to investigate? Do we want to be sending multiple login notifications like this? If you agree that this is not intentional behavior, I can take a look at CaptiveDetect.jsm and fix that as well in this bug.

Assignee: nobody → nhnt11
Status: NEW → ASSIGNED
Flags: needinfo?(nhnt11)
Flags: needinfo?(valentin.gosu)
Has Regression Range: --- → yes
Has STR: --- → yes
Regressed by: 1556259

By the way, I also noticed JavaScript error: resource://gre/modules/CaptiveDetect.jsm, line 58: TypeError: xhr.channel is null

(In reply to Nihanth Subramanya [:nhnt11] from comment #12)

By the way, I also noticed JavaScript error: resource://gre/modules/CaptiveDetect.jsm, line 58: TypeError: xhr.channel is null

Thanks for investigating this. I just submitted a patch to deal with this error.

Do we want to be sending multiple login notifications like this? If you agree that this is not intentional behavior, I can take a look at CaptiveDetect.jsm and fix that as well in this bug.

The patch might™ fix this also, but I haven't checked. Can you open a separate bug for this issue? We should add a test as well.

Flags: needinfo?(valentin.gosu)
Pushed by valentin.gosu@gmail.com:
https://hg.mozilla.org/integration/autoland/rev/c23df4c30fc6
[CaptiveDetect.jsm] Check if xhr.channel is null before using it r=mayhemer
Status: ASSIGNED → RESOLVED
Closed: 2 years ago
Resolution: --- → FIXED
Target Milestone: --- → Firefox 69
Pushed by nhnt11@gmail.com:
https://hg.mozilla.org/integration/autoland/rev/72e37cf73249
Make CaptivePortalWatcher._showNotification idempotent. r=MattN
You need to log in before you can comment on or make changes to this bug.