Closed
Bug 247996
Opened 21 years ago
Closed 8 years ago
<script src="some nonexistent file"/> does not warn
Categories
(Core :: DOM: Core & HTML, defect)
Core
DOM: Core & HTML
Tracking
()
RESOLVED
FIXED
mozilla55
Tracking | Status | |
---|---|---|
firefox55 | --- | fixed |
People
(Reporter: dmosedale, Assigned: keremkat)
References
(Blocks 1 open bug)
Details
(Keywords: helpwanted, student-project)
Attachments
(3 files, 13 obsolete files)
1.14 KB,
text/html
|
Details | |
38.56 KB,
image/png
|
Details | |
9.18 KB,
patch
|
Details | Diff | Splinter Review |
Another thing Mozilla could to do make HTML and XUL developers lives less
painful would be to have a JS console warning for this.
Comment 2•21 years ago
|
||
I reused the method used to output css files with the wrong mimetype.
It has to be called from two places (file:// and http[s]://), and I could
consolidate the code (pass in the nsScriptLoadRequest*) if needed.
Comment on attachment 151463 [details] [diff] [review]
First try
avoid using chrome://communicator, that's an invitation to a firefox developer
to randomly traipse in and change your code.
> + consoleService->LogMessage(errorObject);
> + return NS_OK;
why not return ...LogMessage?
>+ rv = request->mURI->GetSpec(url);
you trample over that rv here:
>+ if (doc) {
>+ rv = doc->GetDocumentURI()->GetSpec(documentUrl);
>+ }
(not a very nice thing to do to such a poor and helpless rv).
Comment 4•21 years ago
|
||
(In reply to comment #3)
> (From update of attachment 151463 [details] [diff] [review])
> avoid using chrome://communicator, that's an invitation to a firefox developer
> to randomly traipse in and change your code.
>
Its something gecko uses internally, and I don't think we need another
.properties file for this.
> > + consoleService->LogMessage(errorObject);
> > + return NS_OK;
>
> why not return ...LogMessage?
>
Because we don't care if it fails, we continue on anyways. Plus, that is copied
code :)
> >+ rv = request->mURI->GetSpec(url);
> you trample over that rv here:
> >+ if (doc) {
> >+ rv = doc->GetDocumentURI()->GetSpec(documentUrl);
> >+ }
> (not a very nice thing to do to such a poor and helpless rv).
>
Is it even needed to get the rv and check it in this situation?
Comment 5•21 years ago
|
||
Updated•21 years ago
|
Attachment #151463 -
Attachment is obsolete: true
Comment 6•21 years ago
|
||
Attachment #152697 -
Attachment is obsolete: true
![]() |
||
Comment 7•21 years ago
|
||
I'm really not happy with sticking this in MediaDocument.properties.... maybe
it's time for a layout.properties or something? Or gecko.properties?
Also, aStatus can be an error for things other than file://. That comment is
pretty misleading.
Finally, why not make ReportToConsole take the URI and document? That way you
can avoid all that code duplication....
Comment 8•21 years ago
|
||
Yeah, I made ReportToConsole take in those to make the code cleaner.
Where should a layout.properties go?
![]() |
||
Comment 9•21 years ago
|
||
Actually, maybe content.properties is more appropriate. If so it could go in
content/ or content/base.
But that's jst's call, I would say.
Comment 10•21 years ago
|
||
How about just in content/resources?
Comment 11•21 years ago
|
||
Updated•21 years ago
|
Attachment #152721 -
Attachment is obsolete: true
Updated•20 years ago
|
Attachment #153302 -
Flags: superreview?(jst)
Comment 12•20 years ago
|
||
Comment on attachment 153302 [details] [diff] [review]
cleanup per bz and created a content.properties
>+ReportToConsole2(const PRUnichar* aMessageName, const PRUnichar **aParams,
>+ PRUint32 aParamsLength, PRUint32 aErrorFlags, PRInt32* aLineNum,
>+ const PRUnichar* aSrcFileName)
please drop this function, you're not using it, and if you did, you'd end up
lying at the end:
>+ rv = errorObject->Init(errorText.get(),
...
>+ "CSS Loader");
>+ consoleService->LogMessage(errorObject);
Comment 13•20 years ago
|
||
Comment on attachment 153302 [details] [diff] [review]
cleanup per bz and created a content.properties
+ReportToConsole2(const PRUnichar* aMessageName, const PRUnichar **aParams,
+ PRUint32 aParamsLength, PRUint32 aErrorFlags, PRInt32*
aLineNum,
+ const PRUnichar* aSrcFileName)
Like timeless said, remove this as it's not used.
sr=jst
PS: Please add "diff -p" to your .cvsrc, I'd suggest "diff -u9 -Np" to make
reviewing your patches a bit easier.
Attachment #153302 -
Flags: superreview?(jst) → superreview+
Comment 14•20 years ago
|
||
Comment on attachment 153302 [details] [diff] [review]
cleanup per bz and created a content.properties
>+InvalidScriptSrc=An included script file, %S, could not be loaded.
just for kicks, is the property name a reasonable description of its value? it
seems pretty poor at a glance. (not that i can think of something better, but
i'm tired.)
Attachment #153302 -
Flags: review?(bzbarsky)
![]() |
||
Comment 15•20 years ago
|
||
Comment on attachment 153302 [details] [diff] [review]
cleanup per bz and created a content.properties
ReportToConsole2 is unused. Why do we have it? Didn't I comment on this the
first time I looked at this patch?
ReportToConsole can probably be dropped in favor of
nsContentUtils::ReportToConsole (which will need to be taught about
content.properties, but that's easy). Again, less code duplication.
(Apart from that, and semi-obsoleted by it, why were we passing a pointer to
our int instead of just passing the int?)
For future reference, please use the -p option to diff and use more context
(-u6 or more, please).
Finally, setting mLineNo on the script this way will break line numbers for
external script error reporting, won't it? Or do those not go through
nsScriptLoader::EvaluateScript? I'm pretty sure they do.
Attachment #153302 -
Flags: review?(bzbarsky) → review-
Comment 16•17 years ago
|
||
by the way guys, it caused a whole page to fail in ff3. the page source looked like this:
<script type="text/javascript" src="login.js" />
and didn't display anything, but when it was changed to:
<script type="text/javascript" src="login.js" ></script>
it displayed the rest of the page... the problem is also in IE, and it seems in ff3 too, but not ff2.
![]() |
||
Comment 17•17 years ago
|
||
That has nothing to do with this bug. This bug is about the case when you have a <script> pointing to a file that doesn't exist. Your problem is about someone who doesn't know better dropping XHTML into an HTML page and getting bitten by us fixing a security bug present in Firefox 2.
Updated•15 years ago
|
QA Contact: ian → general
Comment 18•15 years ago
|
||
I found this bug because i have seen the same bug as Sam Elliott.
![]() |
||
Updated•14 years ago
|
Assignee: doronr → nobody
Keywords: helpwanted,
student-project
Comment 19•13 years ago
|
||
WorkerThread, given your XHR console reporting experience, this might be a bug you could polish off quickly.
Updated•13 years ago
|
Assignee: nobody → worker.thread
Updated•12 years ago
|
Assignee: worker.thread → nobody
Assignee | ||
Comment 20•8 years ago
|
||
I have added console messages for failed script load attempts, including different messages for different types of failures in the included patch.
Note that I can't seem to find a way to get the column number of a script element.
Please review the changes.
Attachment #8833726 -
Flags: review?(bugs)
Assignee | ||
Comment 21•8 years ago
|
||
script.htm can be used to generate the log messages for 0001-js-src-warning-logs.patch
Attachment #8833726 -
Flags: review?(bugs) → review?(jst)
Assignee | ||
Comment 22•8 years ago
|
||
Screenshot of log messages attached.
Updated•8 years ago
|
Assignee: nobody → keremkat
![]() |
||
Updated•8 years ago
|
Flags: needinfo?(josh)
Comment 24•8 years ago
|
||
Comment on attachment 8833726 [details] [diff] [review]
0001-js-src-warning-logs.patch
This looks great, though I have a couple of suggestions:
+ bool sriNotFailed = NS_SUCCEEDED(rv);
How about naming this "sriOk" or "sriSucceeded" instead?
- In dom/locales/en-US/chrome/layout/layout_errors.properties:
+ScriptSourceLoadFailed=Loading failed for the script source "%S".
+ScriptSourceMalformed=Script source URI is malformed: "%S".
+ScriptSourceNotAllowed=Script source URI is not allowed in this document: "%S".
\ No newline at end of file
Add a newline at the end of that file. r- only to fix up those few things!
Attachment #8833726 -
Flags: review?(jst) → review-
Assignee | ||
Comment 25•8 years ago
|
||
Renamed the variable and added newline, thanks.
Attachment #8833726 -
Attachment is obsolete: true
Attachment #8841540 -
Flags: review?(jst)
Comment 26•8 years ago
|
||
Comment on attachment 8841540 [details] [diff] [review]
0002-js-src-warning-logs.patch
Looks good! Thanks!
Attachment #8841540 -
Flags: review?(jst) → review+
Assignee | ||
Comment 27•8 years ago
|
||
Pleasure is mine, could you push the patch to the try server please?
Flags: needinfo?(jst)
Comment 28•8 years ago
|
||
:overholt, could you find someone who could help get this pushed to try and then landed, assuming all looks green on try?
Flags: needinfo?(jst) → needinfo?(overholt)
![]() |
||
Comment 29•8 years ago
|
||
I was going to push this to try, but I actually have some questions about the patch:
1) Why are the ScriptSourceMalformed/ScriptSourceNotAllowed bits done in PreloadURI but not for normal script loads?
2) Why are we going via mReporter and then immediately flushing it? Why not just directly call nsContentUtils::ReportToConsole like so (for the OnStreamComplete callsite):
nsContentUtils::ReportToConsole(nsIScriptError::warningFlag, NS_LITERAL_CSTRING("Script Loader"),
mDocument, nsContentUtils::eLAYOUT_PROPERTIES,
"ScriptSourceLoadFailed", params, ArrayLength(params),
nullptr, EmptyString(), lineNo);
where params is a const char16_t*[] of your params (one in your case)? This doesn't need to be conditioned on mDocument->GetDocumentURI or anything.
3) NS_ConvertASCIItoUTF16(aRequest->mURL) is wrong: aRequest->mURL can contain UTF-8 encoded Unicode. You want NS_ConvertUTF8toUTF16. Something like:
NS_ConvertUTF8toUTF16 url(aRequest->mURL);
const char16_t* params[] = { url.get() };
4) In general "auto foo = NS_ConvertASCIItoUTF16(bar)" is going to make an extra copy of the string. Just do "NS_ConvertASCIItoUTF16 foo(bar)".
5) It really bothers me that auto message = NS_LITERAL_CSTRING("ScriptSourceLoadFailed") followed by reassignments of "message" compiles. The type of NS_LITERAL_CSTRING is "const nsLiteralCString&". I would expect assignment to that to explode. Filed bug 1344448 on that. Luckily, per item 2 that code should go away anyway...
Flags: needinfo?(keremkat)
Assignee | ||
Comment 30•8 years ago
|
||
(In reply to Boris Zbarsky [:bz] (still a bit busy) from comment #29)
> I was going to push this to try, but I actually have some questions about
> the patch:
>
> 1) Why are the ScriptSourceMalformed/ScriptSourceNotAllowed bits done in
> PreloadURI but not for normal script loads?
>
As far as I can tell, a script tag in nsHtml5SpeculativeLoad.h:49 (eSpeculativeLoadScript, eSpeculativeLoadScriptFromHead) will cause a nsHtml5TreeOpExecutor::PreloadScript call which will in turn invoke nsScriptLoader::PreloadURI method with valid or invalid src attribute.
I would appreciate any pointers on how to look for other possible invocations and be sure that PreloadURI is invoked for every nsScriptLoader::OnStreamComplete call.
> 2) Why are we going via mReporter and then immediately flushing it? Why
> not just directly call nsContentUtils::ReportToConsole like so (for the
> OnStreamComplete callsite):
>
No specific reason other than mReporter field being present in nsScriptLoader, changed usages to nsContentUtils::ReportToConsole method.
> nsContentUtils::ReportToConsole(nsIScriptError::warningFlag,
> NS_LITERAL_CSTRING("Script Loader"),
> mDocument,
> nsContentUtils::eLAYOUT_PROPERTIES,
> "ScriptSourceLoadFailed", params,
> ArrayLength(params),
> nullptr, EmptyString(), lineNo);
>
> where params is a const char16_t*[] of your params (one in your case)? This
> doesn't need to be conditioned on mDocument->GetDocumentURI or anything.
>
> 3) NS_ConvertASCIItoUTF16(aRequest->mURL) is wrong: aRequest->mURL can
> contain UTF-8 encoded Unicode. You want NS_ConvertUTF8toUTF16. Something
> like:
>
> NS_ConvertUTF8toUTF16 url(aRequest->mURL);
> const char16_t* params[] = { url.get() };
>
Simplified and corrected string conversions as suggested.
> 4) In general "auto foo = NS_ConvertASCIItoUTF16(bar)" is going to make an
> extra copy of the string. Just do "NS_ConvertASCIItoUTF16 foo(bar)".
>
Simplified and corrected string conversions as suggested.
> 5) It really bothers me that auto message =
> NS_LITERAL_CSTRING("ScriptSourceLoadFailed") followed by reassignments of
> "message" compiles. The type of NS_LITERAL_CSTRING is "const
> nsLiteralCString&". I would expect assignment to that to explode. Filed
> bug 1344448 on that. Luckily, per item 2 that code should go away anyway...
Per item 2, this one usage went away, other three usages in PreloadURI method converted to nsAutoCString instead of NS_LITERAL_CSTRING.
Flags: needinfo?(keremkat)
Assignee | ||
Comment 31•8 years ago
|
||
Attachment #8841540 -
Attachment is obsolete: true
Flags: needinfo?(bzbarsky)
![]() |
||
Comment 32•8 years ago
|
||
> I would appreciate any pointers on how to look for other possible invocations
Here's a script load that never calls PreloadURI at all:
var script = document.createElement("script");
script.src = "http://whatever";
document.documentElement.appendChild(script);
Flags: needinfo?(bzbarsky)
Assignee | ||
Comment 33•8 years ago
|
||
Attachment #8845126 -
Attachment is obsolete: true
Assignee | ||
Comment 34•8 years ago
|
||
Added document.createElement, document.write and svg examples to the html file.
Attachment #8833727 -
Attachment is obsolete: true
Assignee | ||
Comment 35•8 years ago
|
||
Attachment #8833728 -
Attachment is obsolete: true
Assignee | ||
Comment 36•8 years ago
|
||
In the latest patch, we are handling invalid URIs more precisely:
1. If the URI is valid but malformed or not allowed, we log the error in nsScriptLoader::ProcessScriptElement.
2. If the URI is invalid, i.e. no nsURI can be constructed for the HTML or SVG script element, it is logged in HTMLScriptElement::FreezeUriAsyncDefer and SVGScriptElement::FreezeUriAsyncDefer respectively.
3. If URI is valid but the script cannot be loaded, it is logged from nsScriptLoader::OnStreamComplete. PreloadURI is untouched in this latest 0004 patch.
Flags: needinfo?(bzbarsky)
Attachment #153302 -
Attachment is obsolete: true
![]() |
||
Comment 37•8 years ago
|
||
Comment on attachment 8845506 [details] [diff] [review]
0004-js-src-warning-logs.patch
>+ nsAutoCString message("ScriptSourceLoadFailed");
const char* message = "ScriptSourceLoadFailed";
>+ message = nsAutoCString("ScriptSourceMalformed");
message = "ScriptSourceMalformed";
etc. And then pass just message to the ReportToConsole call.
>+ if (rv == NS_ERROR_MALFORMED_URI) {
Hmm. I guess we can get here for about:.
I guess the "http://this is an invalid uri/" case is already covered by HTMLScriptElement::FreezeUriAsyncDefer? Do you need similar changes in SVGScriptElement::FreezeUriAsyncDefer?
>+ NS_ConvertASCIItoUTF16 url(scriptURI->GetSpecOrDefault());
You want NS_ConvertUTF8toUTF16 here. I think this got lost in the other string discussion above.
>+ nsContentUtils::eLAYOUT_PROPERTIES, message.get(),
Why LAYOUT_PROPERTIES, by the way? DOM_PROPERTIES would make a lot more sense.
>+ nsAutoCString sourceUri;
This looks unused. Why do you need it?
>+ if (uri) {
>+ NS_ConvertASCIItoUTF16 url(uri->GetSpecOrDefault());
>+ params[0] = url.get();
>+ }
This is not ok. Your NS_ConvertASCIItoUTF16 goes out of scope at the end of the block, so params[0] ends up pointing into deallocated memory.
>+ NS_ConvertUTF8toUTF16 url(aRequest->mURL);
I don't quite follow this part. Why not just use aRequest->mURI here, assuming it's non-null? aRequest->mURL will only be nonempty if aRequest->mURI was non-null, right? And in those cases it may have some extra gunk in there that is not really relevant to this reporting code. So I see no reason to look at it here. If there _is_ a reason, it needs documentation.
>+++ b/dom/html/HTMLScriptElement.cpp
>+#include "nsIConsoleService.h"
Why do you need this?
>+ NS_LITERAL_CSTRING("HTML"), GetOwnerDocument(),
s/GetOwnerDocument()/OwnerDoc()/, both places.
Maybe file a followup to move more of the logic in this method up to the superclass? The amount of duplication between here and the SVG impl at this point is sufficient that it would be better to share it.
>+ScriptSourceEmpty=Script source is empty.
I think something more like:
ScriptSourceEmpty='src' attribute of <script> element is empty.
with a localization note to not translate "src" or "script" would be clearer.
>+ScriptSourceInvalidUri=Script source is not a valid URI: %S
Again, I think this should be clearer about it being an 'src' attribute value, not some other source of script data (like textContent).
Why do we have both ScriptSourceInvalidUri and ScriptSourceMalformed? They're really expressing the same thing, right?
>+++ b/dom/svg/SVGScriptElement.cpp
>+#include "nsIDOMDocument.h"
Why do you need this?
>+ NS_LITERAL_CSTRING("SVG"), mNodeInfo->GetDocument(),
OwnerDoc(), please, not "mNodeInfo->GetDocument()". Both places.
Flags: needinfo?(bzbarsky)
Assignee | ||
Comment 38•8 years ago
|
||
Attachment #8845506 -
Attachment is obsolete: true
Assignee | ||
Comment 39•8 years ago
|
||
Attachment #8845509 -
Attachment is obsolete: true
Assignee | ||
Comment 40•8 years ago
|
||
Attachment #8845510 -
Attachment is obsolete: true
Assignee | ||
Comment 41•8 years ago
|
||
(In reply to Boris Zbarsky [:bz] (still a bit busy) (if a patch has no decent message, automatic r-) from comment #37)
> Comment on attachment 8845506 [details] [diff] [review]
> 0004-js-src-warning-logs.patch
>
> >+ nsAutoCString message("ScriptSourceLoadFailed");
>
> const char* message = "ScriptSourceLoadFailed";
>
> >+ message = nsAutoCString("ScriptSourceMalformed");
>
> message = "ScriptSourceMalformed";
>
> etc. And then pass just message to the ReportToConsole call.
>
Done.
> >+ if (rv == NS_ERROR_MALFORMED_URI) {
>
> Hmm. I guess we can get here for about:.
>
> I guess the "http://this is an invalid uri/" case is already covered by
> HTMLScriptElement::FreezeUriAsyncDefer? Do you need similar changes in
> SVGScriptElement::FreezeUriAsyncDefer?
>
Invalid uri and empty source(src in html, href in svg) are handled in both FreezeUriAsyncDefer methods in 0004-*.patch and the new 0005-*.patch file.
> >+ NS_ConvertASCIItoUTF16 url(scriptURI->GetSpecOrDefault());
>
> You want NS_ConvertUTF8toUTF16 here. I think this got lost in the other
> string discussion above.
>
Done.
> >+ nsContentUtils::eLAYOUT_PROPERTIES, message.get(),
>
> Why LAYOUT_PROPERTIES, by the way? DOM_PROPERTIES would make a lot more
> sense.
>
Moved properties to dom.properties file.
> >+ nsAutoCString sourceUri;
>
> This looks unused. Why do you need it?
>
Removed.
> >+ if (uri) {
> >+ NS_ConvertASCIItoUTF16 url(uri->GetSpecOrDefault());
> >+ params[0] = url.get();
> >+ }
>
> This is not ok. Your NS_ConvertASCIItoUTF16 goes out of scope at the end of
> the block, so params[0] ends up pointing into deallocated memory.
>
Changed to "const char16_t* params[] = { url.get() };" in the same scope as ReportToConsole.
> >+ NS_ConvertUTF8toUTF16 url(aRequest->mURL);
>
> I don't quite follow this part. Why not just use aRequest->mURI here,
> assuming it's non-null? aRequest->mURL will only be nonempty if
> aRequest->mURI was non-null, right? And in those cases it may have some
> extra gunk in there that is not really relevant to this reporting code. So
> I see no reason to look at it here. If there _is_ a reason, it needs
> documentation.
>
There was no specific reason, I have changed mURL usages to mURI.
> >+++ b/dom/html/HTMLScriptElement.cpp
> >+#include "nsIConsoleService.h"
>
> Why do you need this?
>
Not needed in the latest patch, my bad. Removed.
> >+ NS_LITERAL_CSTRING("HTML"), GetOwnerDocument(),
>
> s/GetOwnerDocument()/OwnerDoc()/, both places.
>
Done.
> Maybe file a followup to move more of the logic in this method up to the
> superclass? The amount of duplication between here and the SVG impl at this
> point is sufficient that it would be better to share it.
>
TODO Will submit a new bug after these changes are is committed.
> >+ScriptSourceEmpty=Script source is empty.
>
> I think something more like:
>
> ScriptSourceEmpty='src' attribute of <script> element is empty.
>
> with a localization note to not translate "src" or "script" would be clearer.
>
> >+ScriptSourceInvalidUri=Script source is not a valid URI: %S
>
> Again, I think this should be clearer about it being an 'src' attribute
> value, not some other source of script data (like textContent).
>
Clarified messages, we now have ScriptSourceEmpty, ScriptSourceInvalidUri, ScriptSourceLoadFailed, ScriptSourceMalformed and ScriptSourceNotAllowed.
> Why do we have both ScriptSourceInvalidUri and ScriptSourceMalformed?
> They're really expressing the same thing, right?
>
Not really, an invalid URI in this context, is a string that cannot be successfully parsed as a URI (e.g. "////"), whereas a malformed URI is valid but unusable for script loading (i.e. "about://a").
> >+++ b/dom/svg/SVGScriptElement.cpp
> >+#include "nsIDOMDocument.h"
>
> Why do you need this?
>
Not needed in the latest patch, my bad. Removed.
> >+ NS_LITERAL_CSTRING("SVG"), mNodeInfo->GetDocument(),
>
> OwnerDoc(), please, not "mNodeInfo->GetDocument()". Both places.
OwnerDoc everywhere, done.
Flags: needinfo?(bzbarsky)
![]() |
||
Comment 42•8 years ago
|
||
>@@ -2539,21 +2557,48 @@ nsScriptLoader::OnStreamComplete(nsIIncr
>+ nsIURI *uri = aRequest->mElement->GetScriptURI();
>+
>+ nsAutoString url;
>+
>+ if (!uri) {
>+ uri = aRequest->mURI;
I'm sorry I wasn't clear enough about this... Why are we looking at aRequest->mElement->GetScriptURI() at all? Why not just look at aRequest->mURI? So something like this:
nsAutoString url;
if (aRequest->mURI) {
AppendUTF8toUTF16(aRequest->mURI->GetSpecOrDefault(), url);
}
(and again, note that URI specs are _not_ ASCII, so using *ASCIItoUTF16 APIs on them is wrong).
>+++ b/dom/locales/en-US/chrome/dom/dom.properties
>+# LOCALIZATION NOTE: Do not translate script.
>+ScriptSourceLoadFailed=Loading failed for the script with source "%S".
That localization note would make more sense if the text said "<script> element" instead of "script". Which I think it should do.
>+# LOCALIZATION NOTE: Do not translate script.
>+ScriptSourceMalformed=Script source URI is malformed: "%S".
And here I think the note just doesn't belong.
>+# LOCALIZATION NOTE: Do not translate script.
>+ScriptSourceNotAllowed=Script source URI is not allowed in this document: "%S".
And here.
The rest looks great. Sorry about all the back-and-forth here... I think this will be the last round.
Flags: needinfo?(bzbarsky)
Assignee | ||
Comment 43•8 years ago
|
||
Thank you for your comments and pointers so far, it is appreciated.
Attachment #8847173 -
Attachment is obsolete: true
Flags: needinfo?(bzbarsky)
![]() |
||
Comment 44•8 years ago
|
||
Try push at https://treeherder.mozilla.org/#/jobs?repo=try&revision=50a8abb7f31bfe183efe201eb32be73ab104ec38&selectedJob=84091585 says we have a lint that checks that all the quotes used in property strings are Unicode ones...
I fixed that, I think. Try push with that fixed at https://treeherder.mozilla.org/#/jobs?repo=try&revision=31eedca40368117cca801489c9602e6a88143ce9
Comment 45•8 years ago
|
||
Pushed by bzbarsky@mozilla.com:
https://hg.mozilla.org/integration/mozilla-inbound/rev/89b1b0cc8b76
Add JS console warnings for every script element with an src that fails to load/execute it. r=bzbarsky
![]() |
||
Comment 46•8 years ago
|
||
That try push looks good. Thank you for fixing this!
Flags: needinfo?(bzbarsky)
Comment 47•8 years ago
|
||
bugherder |
Status: ASSIGNED → RESOLVED
Closed: 8 years ago
status-firefox55:
--- → fixed
Resolution: --- → FIXED
Target Milestone: --- → mozilla55
Updated•8 years ago
|
Flags: needinfo?(overholt)
Updated•6 years ago
|
Component: DOM → DOM: Core & HTML
You need to log in
before you can comment on or make changes to this bug.
Description
•