Closed
Bug 401463
Opened 17 years ago
Closed 17 years ago
Firefox Fonts dialog is broken
Categories
(Core :: XBL, defect)
Core
XBL
Tracking
()
VERIFIED
FIXED
mozilla1.9beta1
People
(Reporter: hidenosuke, Assigned: sicking)
References
Details
(Keywords: regression)
Attachments
(2 files)
(deleted),
image/png
|
Details | |
(deleted),
patch
|
jst
:
review+
jst
:
superreview+
|
Details | Diff | Splinter Review |
Fonts dialog has two problems.
1. Combobox for Sans-serif and Monospaces are broken.
2. I set size for 16pt but Size in Fonts dialog is "9"
Steps to reproduce:
1. Open Preferences(Linux) or Options(Windows).
2. Click Advanced button.
Original bug report in Japanse is
http://bugzilla.mozilla.gr.jp/show_bug.cgi?id=5909.
Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9a9pre) Gecko/2007102823 Minefield/3.0a9pre
Comment 1•17 years ago
|
||
Also on Windows XP.
Regression range is http://bonsai.mozilla.org/cvsquery.cgi?module=PhoenixTinderbox&date=explicit&mindate=1193430360&maxdate=1193444099 so it is caused by Bug 345711.
A bit weird but I double-checked it.
Comment 2•17 years ago
|
||
(In reply to comment #1)
> Also on Windows XP.
> Regression range is
> http://bonsai.mozilla.org/cvsquery.cgi?module=PhoenixTinderbox&date=explicit&mindate=1193430360&maxdate=1193444099
> so it is caused by Bug 345711.
> A bit weird but I double-checked it.
>
I also verified this as a regression from bug 345711 via back-out.
Updated•17 years ago
|
Component: Preferences → XBL
Product: Firefox → Core
QA Contact: preferences → xbl
Target Milestone: --- → M9
Updated•17 years ago
|
Flags: blocking1.9?
Comment 3•17 years ago
|
||
This results in 2 occurrences of the following error in the error console:
Error: preference.setElementValue is not a function
Source file: chrome://browser/content/preferences/fonts.js
Line: 51
Updated•17 years ago
|
Summary: Fonts dialog is broken → Firefox Fonts dialog is broken
When I originally open the Fonts dialog on Windows Vista, I don't see the exact problem shown in the screenshot, I just see empty comboboxes for Sans-serif and Monospace. I do see the font size being shown at 9 (instead of 16). However, when I change the "Fonts for:" combobox to something else (other than the default Western), everything seems to work OK. And it seems to be fine when I put it back to Western.
(In reply to comment #3)
> This results in 2 occurrences of the following error in the error console:
>
> Error: preference.setElementValue is not a function
> Source file: chrome://browser/content/preferences/fonts.js
> Line: 51
I don't see any errors in the error console.
Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US; rv:1.9a9pre) Gecko/2007102705 Minefield/3.0a9pre ID:2007102705
Comment 5•17 years ago
|
||
(In reply to comment #4)
> I don't see any errors in the error console.
Well, do you have the display of errors occurring in chrome enabled?
Set the preference javascript.options.showInConsole to true.
(In reply to comment #5)
> Well, do you have the display of errors occurring in chrome enabled?
>
> Set the preference javascript.options.showInConsole to true.
Thanks for pointing that out; I just changed that pref, and now I do see the 2 errors in the error console.
Updated•17 years ago
|
Target Milestone: M9 → mozilla1.9 M9
Updated•17 years ago
|
Flags: blocking1.9? → blocking1.9+
Assignee | ||
Comment 7•17 years ago
|
||
Better steps to reproduce are:
1. Open Preferences(Linux) or Options(Windows).
2. Select "Content" section.
3. Click Advanced button.
4. Try to choose Sans-serif or Monospace font.
Actual results
Comboboxes are broken
Assignee | ||
Comment 9•17 years ago
|
||
Fixes a number of issues:
1. Makes sure we call InstallImplementation on all queued bindings before running any constructors
2. Makes us not bail even if an InstallImplementation called failed. We'll simply
remove that binding from the queue and keep chugging away at it.
3. Makes us call InstallImplementation on newly queued bindings even if we're in the middle of ProcessAttachedQueue. This ensures that code that runs in a constructor will still be able to access the implementation of content it creates.
All three seemed to be problem in our or extension chrome.
I also added a check to make sure that if the document gets destroyed while processing the attached-queue we won't clobber mProcessingAttachedStack. This fix is unrelated to the filed bugs, but something that probably needs to be fixed.
Assignee: nobody → jonas
Status: NEW → ASSIGNED
Assignee | ||
Updated•17 years ago
|
Attachment #286898 -
Flags: superreview?(jst)
Attachment #286898 -
Flags: review?(jst)
Comment 10•17 years ago
|
||
Comment on attachment 286898 [details] [diff] [review]
Patch to fix
Looks good to me! r+sr=jst
Attachment #286898 -
Flags: superreview?(jst)
Attachment #286898 -
Flags: superreview+
Attachment #286898 -
Flags: review?(jst)
Attachment #286898 -
Flags: review+
Comment 11•17 years ago
|
||
fine here.
maybe other regressions from bug 345711 will be fixed.
Assignee | ||
Comment 12•17 years ago
|
||
Checked in.
Status: ASSIGNED → RESOLVED
Closed: 17 years ago
Resolution: --- → FIXED
Updated•17 years ago
|
Flags: in-testsuite?
Comment 13•17 years ago
|
||
Are we guaranteed that we have no null entries past mAttachedStackSizeOnOutermost in nsBindingManager::EndOutermostUpdate?
Assignee | ||
Comment 14•17 years ago
|
||
No, there can be null entires anywhere in the stack.
My thinking was this:
As soon as we add something to the AttachedStack we'll post an event.
When we post that event we'll call ProcessAttachedQueue(0)
Calling ProcessAttachedQueue(0) will always produce an empty queue, if null entires exist anywhere they will be ignored.
Comment 15•17 years ago
|
||
Then we need some null-checks for the EnsureScriptAPI calls in EndOutermostUpdate?
Assignee | ||
Comment 16•17 years ago
|
||
yes, good catch.
Comment 17•17 years ago
|
||
verified fixed using the steps to reproduce from comment #0 and :
- Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9a9pre) Gecko/2007110104 Minefield/3.0a9pre
- Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9a9pre) Gecko/2007110106
Minefield/3.0a9pre (on Fedora F7)
- Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.4; en-US; rv:1.9a9pre)
Gecko/2007110105 Minefield/3.0a9pre
-> Verified
Status: RESOLVED → VERIFIED
Comment 18•17 years ago
|
||
This caused bug 421997: in EndOutermostUpdate, the new code assumes there are no null pointers in mAttachedStack, but there could be some.
You need to log in
before you can comment on or make changes to this bug.
Description
•