Last Comment Bug 674275 - Multiple HTTP basic auth (401) dialogs are not collapsed
: Multiple HTTP basic auth (401) dialogs are not collapsed
Product: Fennec Graveyard
Classification: Graveyard
Component: General (show other bugs)
: Trunk
: x86 Mac OS X
-- normal (vote)
: Firefox 8
Assigned To: Wesley Johnston (:wesj)
Depends on:
  Show dependency treegraph
Reported: 2011-07-26 10:36 PDT by Jeff Balogh (:jbalogh)
Modified: 2011-08-03 07:39 PDT (History)
3 users (show)
See Also:
QA Whiteboard:
Iteration: ---
Points: ---

Patch v1 (4.64 KB, patch)
2011-07-27 16:00 PDT, Wesley Johnston (:wesj)
mark.finkle: review+
Details | Diff | Splinter Review

Description User image Jeff Balogh (:jbalogh) 2011-07-26 10:36:16 PDT includes a bunch of links like [1] which are protected by basic HTTP auth.

When I load the page in Firefox it prompts for auth once and then loads all the images.

When I load the page in Fennec it pops up 12 different auth prompts and I have to click through each one. Some of the prompts don't even invoke the password manager.

Comment 1 User image Wesley Johnston (:wesj) 2011-07-27 16:00:55 PDT
Created attachment 548951 [details] [diff] [review]
Patch v1

There is a couple problems here. Desktop does collapse asyncAuthDialogs, We don't. In fact, we don't (currently) even support them, which should fall back to SyncDialogs, which (theoretically) should be fine. Our "sync" dialogs aren't really sync though, and so they're piling up on top of each other.

Also included some code to skip auth dialogs for proxy logins, but that's not what is going on here:

All this is just a slightly updated version of some desktop Firefox code from:
Comment 2 User image Mark Finkle (:mfinkle) (use needinfo?) 2011-07-27 18:37:00 PDT
Comment on attachment 548951 [details] [diff] [review]
Patch v1

>diff --git a/mobile/components/PromptService.js b/mobile/components/PromptService.js

>+    if (foundLogins.length > 0 && PromptUtils.pwmgr.uiBusy) {
>+      return;
>+    }

no {}

>+    let runnable = {
>+      run : function() {


>+          ok = prompter.promptAuth(,
>+                                   prompt.level,
>+                                   prompt.authInfo);

no wrap

>+        for each (var consumer in prompt.consumers) {

I assume 'let' would work here
Comment 3 User image Wesley Johnston (:wesj) 2011-07-28 11:03:06 PDT
Comment 4 User image Marco Bonardo [::mak] 2011-07-29 03:08:24 PDT
Comment 5 User image Aaron Train [:aaronmt] 2011-08-03 07:39:48 PDT
Verified Fixed 
Mozilla/5.0 (Android; Linux armv7l; rv:8.0a1) Gecko/20110803 Firefox/8.0a1 Fennec/8.0a1

Note You need to log in before you can comment on or make changes to this bug.