Closed Bug 700034 Opened 13 years ago Closed 12 years ago

[HTML5] view_source.editor.path no longer works with Cset cd9add22f090.

Categories

(Core :: DOM: HTML Parser, defect)

Other Branch
x86_64
Windows 7
defect
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla11
Tracking Status
firefox10 + unaffected

People

(Reporter: streetwolf52, Assigned: hsivonen)

References

Details

(Keywords: regression)

Attachments

(1 file, 1 obsolete file)

User Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:10.0a1) Gecko/20111101 Firefox/10.0a1
Build ID: 20111101073309

Steps to reproduce:

In Prefs I have:

view_source.editor.external boolean true

view_source.editor.path string C:\Program Files (x86)\Notepad++\notepad++.exe


Actual results:

The default source editor displayed when I clicked on 'View Page Source.'


Expected results:

Notepad++.exe should be displayed as the source editor.

Problem looks like it might be caused by https://bugzilla.mozilla.org/show_bug.cgi?id=482921
Keywords: regression
Regrtesion window(m-i),
Works:
http://hg.mozilla.org/integration/mozilla-inbound/rev/746e7c151de2
Mozilla/5.0 (Windows NT 6.1; WOW64; rv:10.0a1) Gecko/20111101 Firefox/10.0a1 ID:20111101015315
Fails:
http://hg.mozilla.org/integration/mozilla-inbound/rev/d9cc2539a85d
Mozilla/5.0 (Windows NT 6.1; WOW64; rv:10.0a1) Gecko/20111031 Firefox/10.0a1 ID:20111101043415
Pushlog:
http://hg.mozilla.org/integration/mozilla-inbound/pushloghtml?fromchange=746e7c151de2&tochange=d9cc2539a85d
Blocks: 482921
Status: UNCONFIRMED → NEW
Ever confirmed: true
Assignee: nobody → hsivonen
Status: NEW → ASSIGNED
Attachment #577281 - Flags: review?(gavin.sharp)
Attachment #577281 - Attachment is obsolete: true
Attachment #577281 - Flags: review?(gavin.sharp)
Attachment #577562 - Flags: review?(gavin.sharp)
Why did the view-source rewrite affect this code?
(In reply to Gavin Sharp (use gavin@gavinsharp.com for email) from comment #5)
> Why did the view-source rewrite affect this code?

When not executing scripts (that could block the parser), the old parser always finished parsing when OnStopRequest for the stream fired. View Source does not execute scripts, so the whole View Source DOM was ready after the parser had processed OnStopRequest (on the main thread).

The new parser always proxies stream data to the parser thread, so it always finishes asynchronously: OnStopRequest sends a runnable to the parser thread and then some time later, the main thread gets another event back that makes the main thread see the finished parse.
Comment on attachment 577562 [details] [diff] [review]
Wait for DOMContentLoaded after STATE_STOP, v2

You could use this.onContentLoaded.bind(this) instead of the closure.
Attachment #577562 - Flags: review?(gavin.sharp) → review+
(In reply to Gavin Sharp (use gavin@gavinsharp.com for email) from comment #7)
> Comment on attachment 577562 [details] [diff] [review]
> Wait for DOMContentLoaded after STATE_STOP, v2
> 
> You could use this.onContentLoaded.bind(this) instead of the closure.

Thanks. Landed with this change:
https://hg.mozilla.org/mozilla-central/rev/15fb7f28f213
Status: ASSIGNED → RESOLVED
Closed: 12 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla11
Doesn't this change break the case when you click on a link in the Error Console when you have an external editor defined?
(In reply to neil@parkwaycc.co.uk from comment #9)
> Doesn't this change break the case when you click on a link in the Error
> Console when you have an external editor defined?

I got an error message when I click link in the Error Console. And nothing happens...

Error: this.webShell is null
Source File: chrome://global/content/viewSourceUtils.js
Line: 193
(In reply to Alice0775 White from comment #10)
> (In reply to neil@parkwaycc.co.uk from comment #9)
> > Doesn't this change break the case when you click on a link in the Error
> > Console when you have an external editor defined?
> 
> I got an error message when I click link in the Error Console. And nothing
> happens...
> 
> Error: this.webShell is null
> Source File: chrome://global/content/viewSourceUtils.js
> Line: 193

Thanks. Sigh. Filed as bug 710142.
Comment on attachment 577562 [details] [diff] [review]
Wait for DOMContentLoaded after STATE_STOP, v2

(This comment has been posted on all the bugs mentioned in this comment, except bug 710142, so that the release drivers see it regardless of the order in which they process approval requests.)

The new View Source implementation landed before Firefox 10 moved to Aurora. Afterwards, a bunch of regressions were identified. Many of the regression fixes didn't land before Firefox 10 moved to Aurora but they have now been fixed on trunk except for bug 710142.

To avoid shipping with regressions, we either need to land all the regression fixes on Aurora for Firefox 10 (followed by a fix for bug 710142 in Beta if it doesn't make it before Dec 20th) or switch back to the old View Source implementation on Aurora. The new View Source implementation provides much better diagnostics for Web developers than the old View Source implementation.

So I'd like to ask the release drivers to either approve bug 535530, bug 699356, bug 699365, bug 700034, bug 700361, bug 703965, bug 704667 and bug 705473 plus bug 695640, which is a non-regression tweak, or to approve bug 710175 for reverting to the old View Source implementation for Firefox 10.
Attachment #577562 - Flags: approval-mozilla-aurora?
Regressions affect also my extension ViewSourceWith, I've already patched it adding the listener and luckly the code works also on previous Firefox versions.

I suspect also other extensions should contain regression...
Comment on attachment 577562 [details] [diff] [review]
Wait for DOMContentLoaded after STATE_STOP, v2

[triage comment]
We decided to back out the new view source parser (bug 710175) rather than take this fixup for Firefox 10.

Denying for Aurora.
Attachment #577562 - Flags: approval-mozilla-aurora? → approval-mozilla-aurora-
Firefox 10 no longer affected due to bug 710175 landing.
You need to log in before you can comment on or make changes to this bug.