Closed
Bug 1073956
Opened 9 years ago
Closed 9 years ago
octal literals and octal escape sequences are deprecated: resource://gre/modules/DownloadPaths.jsm
Categories
(Toolkit :: Downloads API, defect)
Toolkit
Downloads API
Tracking
()
RESOLVED
FIXED
mozilla35
People
(Reporter: ishikawa, Assigned: ishikawa)
References
Details
Attachments
(1 file, 1 obsolete file)
1.22 KB,
patch
|
bbondy
:
review+
|
Details | Diff | Splinter Review |
During testing of DEBUG version of TB using "make mozmill" test suite run, I noticed that the following message for the file: comm-central/mozilla/toolkit/mozapps/downloads/DownloadPaths.jsm JavaScript strict warning: resource://gre/modules/DownloadPaths.jsm, line 61: SyntaxError: octal literals and octal escape sequences are deprecated A patch to replace an octet literal with a call to ParseInt(..., 8) is attached.
Assignee | ||
Comment 1•9 years ago
|
||
Comment on attachment 8496557 [details] [diff] [review] Replaced a literal octal string with a ParseInt() call. I won't mind creating a new patch if 0o prefix notation is preferable these days. TIA
Attachment #8496557 -
Flags: review?(bwinton)
Comment 2•9 years ago
|
||
Comment on attachment 8496557 [details] [diff] [review] Replaced a literal octal string with a ParseInt() call. Bug 931267 seems to indicate that we want 0o notation, so I would suggest using that. Also, since this is toolkit code not Thunderbird code, I'm redirecting the review request to bbondy, who reviewed a similar patch over there. ;)
Attachment #8496557 -
Flags: review?(bwinton) → review?(netzen)
Comment 3•9 years ago
|
||
Comment on attachment 8496557 [details] [diff] [review] Replaced a literal octal string with a ParseInt() call. Review of attachment 8496557 [details] [diff] [review]: ----------------------------------------------------------------- Thanks for the patch! Yep please change to 0o, I think that is the preferred way. I think originally octal literals were deprecated because it makes it hard to read and has unexpected consequences for new readers of the code. Note that the patch as is uses: ParseInt("0644", 8) which would fail. I think you meant parseInt with a lowercase p.
Attachment #8496557 -
Flags: review?(netzen) → review-
Assignee | ||
Comment 4•9 years ago
|
||
(I have four similar bugzilla entries/patches. Here is a template response.) Thank you for the review. I am uploading a new patch with that uses "0o" prefix for octal literal. It seems "0o..." notation is preferred over parseInt(..., 8). Regarding the misspelling of "ParseInt" for "parseint", I thought initially people were referring to the misspelling in the description field of my patch. I said "Whoa!" when I realized that the code itself had this misspelling(!) SURPRISE: I had applied the patch to my source tree, and had run the |make mozmill| test, and JS and mozmill test frame never printed a single complaint about this (!!!) That is why I did not realize the misspelling in the code portion of the patch. I carefully checked the log files and found no mention of ParseInt at all. Also, the number of failed errors were not that much different before and after the patch. (Because of timing-sensitive errors that happen during shutdown (bugs), etc., the number of failed errors may differ from one run to the other. I did not see any major errors possibly due to the "ParseInt" misspellings.) So, I think JS interpreter is doing something without aborting the execution. What gives? I think this merits a new bugzilla entry... Anyway, the simple "Use 0o prefix for octal literal" patch is uploaded. TIA
Attachment #8496557 -
Attachment is obsolete: true
Attachment #8497247 -
Flags: review?(netzen)
Comment 5•9 years ago
|
||
Comment on attachment 8497247 [details] [diff] [review] Use 0o prefix for octal literal. Review of attachment 8497247 [details] [diff] [review]: ----------------------------------------------------------------- Great, thank you! > had applied the patch to my source tree, and had run the > |make mozmill| test, and JS and mozmill test frame never printed a > single complaint about this (!!!) Perhaps the change wasn't built from the source or else maybe there's just not coverage hitting that part of the code. Thanks again for the patch!
Attachment #8497247 -
Flags: review?(netzen) → review+
Assignee | ||
Comment 6•9 years ago
|
||
(In reply to Brian R. Bondy [:bbondy] from comment #5) > Perhaps the change wasn't built from the source or else maybe there's just > not coverage hitting that part of the code. > Thanks again for the patch! Oh, I see. 0666 or whatever caused the parser of JavaScript to complain about deprecated octal literal on the first reading, but ParseInt (that begins with capital P) did not get called since the code in question was never executed. Makes sense. For a moment, I forgot that JavaScript is a dynamically typed language. (I don't think coding big program modules using a dynamically typed language is a good idea for long-term maintenance, but I digress.) I will put in checkin_needed keyword. TIA.
Keywords: checkin-needed
![]() |
||
Comment 7•9 years ago
|
||
Pushed to mozilla-inbound https://hg.mozilla.org/integration/mozilla-inbound/rev/e0b3b8c18424
Status: NEW → ASSIGNED
Component: Untriaged → Download Manager
Keywords: checkin-needed
Product: Thunderbird → Toolkit
Target Milestone: --- → mozilla35
Version: unspecified → Trunk
https://hg.mozilla.org/mozilla-central/rev/e0b3b8c18424
Assignee: nobody → ishikawa
Status: ASSIGNED → RESOLVED
Closed: 9 years ago
Resolution: --- → FIXED
You need to log in
before you can comment on or make changes to this bug.
Description
•