Closed
Bug 793582
Opened 12 years ago
Closed 12 years ago
Cannot open Image Manger via Tools->Image Manager->Manage Image Permissions (regression)
Categories
(SeaMonkey :: Passwords & Permissions, defect)
SeaMonkey
Passwords & Permissions
Tracking
(seamonkey2.15 fixed)
RESOLVED
FIXED
seamonkey2.15
Tracking | Status | |
---|---|---|
seamonkey2.15 | --- | fixed |
People
(Reporter: philip.chee, Assigned: ewong)
References
Details
(Keywords: regression)
Attachments
(1 file, 4 obsolete files)
Mon Sep 24 2012 12:55:10 Error: NS_ERROR_UNEXPECTED: Component returned failure code: 0x8000ffff (NS_ERROR_UNEXPECTED) [nsIPermissionManager.add] Source file: chrome://navigator/content/navigator.js Line: 826 Regression caused by Bug 175175 which added an ID here: http://hg.mozilla.org/comm-central/rev/f6cce22f417f#l1.178 1.178 - <menuitem label="&cookieDisplayImagesCmd.label;" 1.179 + <menuitem id="menuitem_cookieDisplay" 1.180 + label="&cookieDisplayImagesCmd.label;" 1.181 accesskey="&cookieDisplayImagesCmd.accesskey;"/>
Assignee | ||
Comment 1•12 years ago
|
||
Reporter | ||
Comment 2•12 years ago
|
||
I was thinking something like this would work: - oncommand="if (event.target.id) CookieImageAction(event.target); + oncommand="if (event.target.id != 'menuitem_cookieDisplay') + CookieImageAction(event.target); or perhaps: + oncommand="if (event.target.id.startsWith('cookie_')) + CookieImageAction(event.target);
Assignee | ||
Comment 3•12 years ago
|
||
Attachment #664339 -
Attachment is obsolete: true
Attachment #664339 -
Flags: review?(mnyromyr)
Attachment #664819 -
Flags: review?(mnyromyr)
Assignee | ||
Comment 4•12 years ago
|
||
Attachment #664819 -
Attachment is obsolete: true
Attachment #664819 -
Flags: review?(mnyromyr)
Attachment #664821 -
Flags: review?(mnyromyr)
Comment 5•12 years ago
|
||
Comment on attachment 664821 [details] [diff] [review] Ensure the id is not 'menuitem_cookieDisplay' before running CookieImageAction(). (v2) >+ oncommand="if (event.target.id) && (event.target.id != 'menuitem_cookieDisplay') >+ CookieImageAction(event.target); > else toDataManager('|permissions');"> It really is a good idea to actually *test* patches before submitting them, *including* looking at the Error Console for unwanted behaviour. This would have shown this very obvious syntax error right away. ;-) Apart from this, only one out of the five menuitems is meant to call the Data Manager, hence using its id in a rejection condition is a bit weird. Just do a plain if (event.target.id == 'menuitem_cookieDisplay') toDataManager('|permissions'); else CookieImageAction(event.target);
Attachment #664821 -
Flags: review?(mnyromyr) → review-
Assignee | ||
Comment 6•12 years ago
|
||
Attachment #664821 -
Attachment is obsolete: true
Attachment #667294 -
Flags: review?(mnyromyr)
Assignee | ||
Comment 7•12 years ago
|
||
(In reply to Karsten Düsterloh from comment #5) > Comment on attachment 664821 [details] [diff] [review] > Ensure the id is not 'menuitem_cookieDisplay' before running > CookieImageAction(). (v2) > > >+ oncommand="if (event.target.id) && (event.target.id != 'menuitem_cookieDisplay') > >+ CookieImageAction(event.target); > > else toDataManager('|permissions');"> > > It really is a good idea to actually *test* patches before submitting them, > *including* looking at the Error Console for unwanted behaviour. This would > have shown this very obvious syntax error right away. ;-) When running the above code, it didn't even get to the point of showing the menu list. It just hung there. And Ctrl-Shift-J doesn't work in this case. Can you clarify why this doesn't work?: if (event.target.id) && (event.target.id != 'menuitem_cookieDisplay') CookieImageAction(event.target); else toDataManager('|permissions'); Without the first "(event.target.id) &&" part, the patch works. My understanding is that it tests if event.target.id is non-null. (This is purely an academic query. I've already changed the patch to reflect your comments.)
Comment 8•12 years ago
|
||
(In reply to Edmund Wong (:ewong) from comment #7) > Can you clarify why this doesn't work?: > if (event.target.id) && (event.target.id != 'menuitem_cookieDisplay') > CookieImageAction(event.target); > else > toDataManager('|permissions'); > > Without the first "(event.target.id) &&" part, the patch works. JavaScript, like C++ and others, expects this syntax: if (expression) Even if the expression itself consists of several other expressions in parantheses, you still need the outer brackets: if ((expr) && (expr)) Everything else will result in a syntax error! > My understanding is that it tests if event.target.id is non-null. It does; you don't fail for it. With outer brackets, it'd work, but it still would be unneeded. ;-)
Comment 9•12 years ago
|
||
Comment on attachment 667294 [details] [diff] [review] Check if the id is 'menuitem_cookieDisplay' before running CookieImageAction(). (v3) >+ oncommand="if (event.target.id == 'menuitem_cookieDisplay') >+ toDataManager('|permissions'); >+ else CookieImageAction(event.target);"> Either wrap both branches or none. r=me with that.
Attachment #667294 -
Flags: review?(mnyromyr) → review+
Assignee | ||
Comment 10•12 years ago
|
||
Wrapped branch.
Attachment #667294 -
Attachment is obsolete: true
Attachment #667768 -
Flags: review+
Assignee | ||
Comment 11•12 years ago
|
||
Pushed to comm-central: http://hg.mozilla.org/comm-central/rev/3debe9b1eed2
Status: ASSIGNED → RESOLVED
Closed: 12 years ago
Resolution: --- → FIXED
Comment 12•12 years ago
|
||
Settings flags to make tracking of fixed bugs easier.
status-seamonkey2.15:
--- → fixed
Target Milestone: --- → seamonkey2.15
You need to log in
before you can comment on or make changes to this bug.
Description
•