Open Bug 995298 Opened 11 years ago Updated 3 years ago

No proper error handling for navigating to some wrong 'chrome:', 'resource:' or 'file:' URLs

Categories

(Core :: General, defect)

30 Branch
x86_64
Windows 7
defect

Tracking

()

UNCONFIRMED

People

(Reporter: duanyao.ustc, Unassigned)

Details

User Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:30.0) Gecko/20100101 Firefox/30.0 (Beta/Release) Build ID: 20140411004002 Steps to reproduce: Try navigating to a wrong chrome: URL with firefox, such as: `chrome://aaa/content/ggg.html` (aaa not registered) `chrome://global/nsTransferable.js` (missing '/content' after 'global') Actual results: Nothing. No error page or dialog is shown. Expected results: Firefox show an error page or something to indicate the error state. Firefox does show an error page if only the part after '/content/' in the URL is wrong, such as: `chrome://global/content/nsTransferable.j` (missing last 's')
I also tested with geckofx(https://bitbucket.org/geckofx), a .net wrapper of xulrunner, and found that: 1. `nsIWebNavigation.LoadURI()` throws exceptions for wrong chrome: URLs. It does not throw for http/file URLs. 2. URLs such as `chrome://global/content/nsTransferable.j` can trigger an error page, while `chrome://aaa/content/ggg.html` and `chrome://global/nsTransferable.js` can't, just like firefox. So it seems that firefox catches exceptions from `nsIWebNavigation.LoadURI()` and drops them silently. I think`nsIWebNavigation.LoadURI()` should not throw for chrome: URLs, and should behave just like http/file URLs. Current behavior is confusing and not consist.
`resource:` URLs have similar problem.
Some file: URLs have similar problem, e.g.: `file:///a/b` (missing drive letter) on windows platform.
Summary: No proper error handling for navigating to wrong chrome: URLs → No proper error handling for navigating to some wrong 'chrome:', 'resource:' or 'file:' URLs
Severity: normal → S3
You need to log in before you can comment on or make changes to this bug.