Closed Bug 185690 Opened 22 years ago Closed 22 years ago

Preference "Client Certificate Selection" has no effect

Categories

(Core :: XUL, defect, P3)

x86
All
defect

Tracking

()

RESOLVED FIXED
mozilla1.3beta

People

(Reporter: Franke, Assigned: jag+mozilla)

Details

(Keywords: regression)

Attachments

(1 file, 1 obsolete file)

User-Agent: Mozilla/5.0 (Windows; U; Win98; en-US; rv:1.3a) Gecko/20021212 Build Identifier: Mozilla/5.0 (Windows; U; Win98; en-US; rv:1.3a) Gecko/20021212 The Preference "Client Certificate Selection" has no effect in the UI and in prefs.js. Reproducible: Always Steps to Reproduce: 1. Start Browser 2. Edit|Preferences|Privacy&Security|Certificates 3. Select one of the 2 buttons of "Client Certificate Selection" 4. OK 5. Edit|Preferences|Privacy&Security|Certificates Actual Results: No "Client Certificate Selection" button selected No change in prefs.js Expected Results: Selection of Step 3. should be persistent. Bug was also present in 1.2
no security hole = not security:general -> PSM
Assignee: mstoltz → ssaux
Component: Security: General → Client Library
Product: Browser → PSM
QA Contact: bsharma → junruh
Version: Trunk → unspecified
I cannot reproduce. Make sure that you are installing into a clean directory.
Priority: -- → P3
Version: unspecified → 2.4
I can not reproduce either. Christian, after you have run into the problem, please open the JavaScript console from Tools/Web Development. Does it show errors? Please paste them in here. To make sure you don't see errors from other components, use a fresh browser session where you haven't done anything else besides reproducing the problem.
Regarding comment 3: sry, I missed the JS Debugging output: Error: val has no properties Source File: chrome://global/content/bindings/radio.xml#radiogroup.selectedItem (setter) Line: 2 Thanks for the tip in comment 2. The installation was in a clean directory, but the profile was converted from NS4.7. Restarting with a fresh profile, I also could not reproduce but found the workaround: Remove the following line from the converted prefs.js: user_pref("security.default_personal_cert", "default"); (To reproduce the bug, simply insert this setting in any profile ;-) This is possibly a problem in Profile conversion. There was another converted setting, that may have this problem: user_pref("security.default_proxy_cert", "default"); *Reassign this bug to "Browser/Profile Migration" ?
Ok, this is a regression. I have worked on a similar problem before in bug 129740. At that time in the past, the radio buttons worked without JS exceptions, even if the preferences did not match the choices in XUL. I have a fix for radio.xml, which makes sure the exception is not triggered. By doing so, the JS context continues to work and a new selection done by the user will be stored when pressing ok.
Assignee: ssaux → jaggernaut
Status: UNCONFIRMED → NEW
Component: Client Library → XP Toolkit/Widgets
Ever confirmed: true
Flags: blocking1.3b?
Keywords: regression
OS: Windows 98 → All
Product: PSM → Browser
QA Contact: junruh → jrgm
Target Milestone: --- → mozilla1.3beta
Version: 2.4 → Trunk
Attached patch Patch v1 (obsolete) — Splinter Review
Suggested fix
Comment on attachment 109522 [details] [diff] [review] Patch v1 Hi Jag, can you please r/sr? Can you suggest somebody who should do the other review, since I'm not working in this kind of the code often? Thanks!
Attachment #109522 - Flags: superreview?(jaggernaut)
Comment on attachment 109522 [details] [diff] [review] Patch v1 This isn't a review, but the following change cannot be correct. >- var alreadySelected = val.getAttribute("selected") == "true"; >+ var alreadySelected = false; >+ if (val) val.getAttribute("selected") == "true";
Indeed, good catch, the second line must be if (val) alreadySelected = val.getAttribute("selected") == "true";
Comment on attachment 109522 [details] [diff] [review] Patch v1 How about this: <setter> <![CDATA[ var focused = this.getAttribute("focused") == "true"; var alreadySelected = false; if (val) { alreadySelected = val.getAttribute("selected") == "true"; val.setAttribute("focused", focused); val.setAttribute("selected", "true"); this.value = val.value; } // uncheck all other group nodes .... That should be functionally equivalent (double check though) and hopefully make the code easier to understand.
This won't block 1.3beta from being released, but I'd definitely approve a patch to fix this issue if you can get it ready in time (say, before Wednesday).
Flags: blocking1.3b? → blocking1.3b-
Attachment #109522 - Attachment is obsolete: true
Attachment #109522 - Flags: superreview?(jaggernaut)
Attached patch Patch v2Splinter Review
patch using Jag's code
Attachment #114838 - Flags: superreview?(jaggernaut)
Comment on attachment 114838 [details] [diff] [review] Patch v2 sr=jag
Attachment #114838 - Flags: superreview?(jaggernaut) → superreview+
Comment on attachment 114838 [details] [diff] [review] Patch v2 Javi, can you please review?
Attachment #114838 - Flags: review?(javi)
Comment on attachment 114838 [details] [diff] [review] Patch v2 r=javi
Attachment #114838 - Flags: review?(javi) → review+
Comment on attachment 114838 [details] [diff] [review] Patch v2 requesting approval for this profile migration correctness patch
Attachment #114838 - Flags: approval1.3?
Comment on attachment 114838 [details] [diff] [review] Patch v2 a=asa (on behalf of drivers) for checkin to 1.3
Attachment #114838 - Flags: approval1.3? → approval1.3+
Checked in, marking fixed.
Status: NEW → RESOLVED
Closed: 22 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: