Commit graph

4,742 commits

Author SHA1 Message Date
Moonchild
3bcd2ee360 [DOM] Don't allow internal MIME types to be assigned to DataTransfer
We already blocked x-moz-file(-promise) and x-moz-place* but of course people
would find ways to abuse other internal types. This change now blocks everything
except x-moz-url types which are harmless. (i.e. whitelist instead of blacklist)
2022-05-31 09:41:43 +08:00
Moonchild
7f3a7225af [network] SocketTransport2 cleanup 2022-05-31 09:40:14 +08:00
roytam1
6ec59e7984 image: sync with 8e42fccca6 2022-05-31 09:36:20 +08:00
trav90
f2cfb9997e Issue #457 - Make GLContextSymbols a pure aggregate POD 2022-05-31 09:13:17 +08:00
trav90
c782076add Issue #457 - Remove the constructor from gfxShapedText::CompressedGlyph and make it a trivial class
Also provide a couple of convenience "factory" methods to create simple and complex glyph values.
2022-05-31 09:13:12 +08:00
Jeremy Andrews
1cdbf6eb6a Issue #1742 - Part 5: Remove unnecessary GCPtr::unbarrieredGet
Ref: BZ 1323441
2022-05-31 09:12:51 +08:00
Jeremy Andrews
e632fc1e8c Issue #1742 - Part 4: Don't trigger read barriers when comparing wrapped pointers types
This is actually an undocumented dependency of Bug 1325406 for Linux and
SunOS.

Ref: BZ 1308236
2022-05-31 09:12:45 +08:00
Moonchild
30a3ec27a2 Issue #1742 - Remove the ambiguous portions of gc that dealt with tagged pointers for shapes.
Nobody likes "isNullLike(obj)" when trying to garbage collect. It either is or
is not. Master Yoda would be pleased with this change.
2022-05-31 09:12:38 +08:00
Moonchild
574b295d15 Issue #1742 - Part 3: use JS::PropertyResult instead of Shape*
This is the meat of the issue and switches using raw shape pointers out for
PropertyResult objects where feasible.
2022-05-31 09:12:29 +08:00
Moonchild
c48b8e8932 Issue #1742 - Part 2: Add a class to encapsulate the possible results of a property lookup 2022-05-31 09:12:25 +08:00
Moonchild
80d7d43961 Issue #1742 - Part 1: Refactor rooting base class templates
Based on Bug 1325406
2022-05-31 09:12:19 +08:00
Moonchild
2f81312755 No issue - relax ctts flag checking in media/libstagefright
Some encoders will set ctts flags incorrectly (similar to version) resulting in
libstagefright aborting playback of media based on the media header.
(Looking at you, Twitter)
This change relaxes libstagefright's checking to pass ctts flags 0 or 1 and
falls through to actually trying to decoding the file.
2022-05-27 07:01:15 +08:00
trav90
5c61382dac Issue #457 - Silence some GCC compiler warnings in FFmpeg code 2022-05-22 06:47:01 +08:00
FranklinDM
2e975416bf No issue - Add null check to send packet function in the developer tools server
This resolves some of the useless log spam thrown in the browser console by the developer tools.
2022-05-22 06:46:57 +08:00
FranklinDM
f0e208a861 Issue #1894 - Part 7: Update tests
Based on https://bugzilla.mozilla.org/show_bug.cgi?id=1566141
2022-05-22 06:46:47 +08:00
FranklinDM
9dde32ee98 Issue #1894 - Part 6: Check for nullish values when folding coalesce nodes
This uses a different approach by modifying the `Boolish` function directly to act differently if we're checking for nullish values.

Partially based on:
Bug 1566141 - Implement the Nullish Coalescing operator (??) proposal
Bug 1599163 - Nullish coalescing operator returns undefined for void expressions
2022-05-22 06:46:40 +08:00
FranklinDM
707867d165 Issue #1894 - Part 5: Implement bytecode for nullish coalescing
Based on https://bugzilla.mozilla.org/show_bug.cgi?id=1566141
2022-05-22 06:46:35 +08:00
FranklinDM
5812721809 Issue #1894 - Part 4: Implement IonMonkey support for nullish coalescing
Based on https://bugzilla.mozilla.org/show_bug.cgi?id=1566141
2022-05-22 06:46:31 +08:00
FranklinDM
f282a4c05f Issue #1894 - Part 3: Implement support for nullish coalescing in JS reflection
Partially based on:
Bug 1566141 - Implement the Nullish Coalescing operator (??) proposal
Bug 1593415 - Assertion failure: false, at js/src/builtin/ReflectParse.cpp:3092 with nullish coalescing
2022-05-22 06:46:27 +08:00
FranklinDM
d7cdeaf313 Issue #1894 - Part 2: Implement support for nullish coalescing in the JS parser
Based on https://bugzilla.mozilla.org/show_bug.cgi?id=1566141
2022-05-22 06:46:21 +08:00
FranklinDM
3efa23472c Issue #1894 - Part 1: Implement coalesce JS opcode
Based on https://bugzilla.mozilla.org/show_bug.cgi?id=1566141
2022-05-22 06:46:16 +08:00
Moonchild
62a140ab80 Bug 1679987 - Remove unused includes of nsCharSeparatedTokenizer.h. 2022-05-22 06:46:06 +08:00
Moonchild
8dfcd4553f Issue #1210 - Keep timepicker disabled for now.
This needs localization work before enabling.
2022-05-19 20:59:45 +08:00
Moonchild
40e9f40e89 Issue #1813 - Enable date and time picker by default.
Resolves #1813
2022-05-19 20:59:42 +08:00
FranklinDM
d42af42d26 Issue #1898 - Make sure that the sanity test stops running if necessary
As part of telemetry removal, d60103257eb83db103f9acab54b1755486b7e9c1 removed the `reportResult` function which also handles the stopping of the sanity test. This also removes unused histogram enumeration values and revises/adds some comments.
2022-05-19 20:59:34 +08:00
Moonchild
349d3d96a2 Issue #1899 - Make sure the test for it still works
Some hoops to make sure the test still works if the default value for the pref
is false, requiring setting and resetting it and making sure the observers have
time to react to these changes before testing.
2022-05-19 20:59:29 +08:00
Moonchild
0749a8828c Issue #1899 - Disable the (broken) MDN integration widget by default. 2022-05-19 20:59:23 +08:00
Moonchild
046b81d062 Issue #1509 - Invalidate previous result when datalist is changed.
Even if `<datalist>` is dynamically changed, the autocomplete controller still
uses the previous search result. If changed, we have to ignore the previous
result that may now be invalid.

Also, even if `<datalist>` is changed, we have to keep the selected index
(See Mozilla Bug 595069), so we cannot use `ResetInternalState` in this
situation because it resets the selected index.

This resolves #1509.
2022-05-12 09:45:35 +08:00
Brian Smith
fd04893c34 Issue #1891 - Fix ASAN and clang crashes on Linux, BSD and MacOS. Merge with the existing Solaris fix, by folding Solaris into the Linux/BSD section. Add Apple Silicon (ARM64) support. This should also address Issue #1884 by moving the offending code into assembly. 2022-05-12 09:44:33 +08:00
Moonchild
28821219dd Bug 1761981 2022-05-05 10:43:52 +08:00
Moonchild
50965fb223 No issue - Align our resource timing with the updated Fetch spec.
This makes FetchStart use StartTime() when the TAO check fails for
PerformanceResourceTiming

Given the recent Fetch spec updates, Step 8.1 in
https://fetch.spec.whatwg.org/#finalize-and-report-timing specifies that start
time(StartTime) and post-redirect start time(FetchStart) should be start time
when the TAO check fails.
2022-05-05 09:10:09 +08:00
Moonchild
a8b1099a1e Issue #1890 - Update libopus
This resolves #1890
2022-05-05 09:09:54 +08:00
Stephen A Pohl
b188579bb6 [XPCOM] Improve the conversion of line breaks.
Fix an off-by-one error in CRLF checking.
2022-05-05 09:05:27 +08:00
FranklinDM
f2cd5760ba Issue #1658 - Part 8: Update tests 2022-05-05 09:05:06 +08:00
FranklinDM
c8d825af39 Issue #1658 - Part 7: Implement support for optional chaining in console autocomplete
This works by stripping the optional chaining characters from the completion part variable, allowing the developer tools' parser to proceed as if it were a regular, non-optional expression.

Tests were partially based on: https://bugzilla.mozilla.org/show_bug.cgi?id=1594009

Tests for features that do not apply to our version of developer tools (e.g. autocomplete for integer literals, ignoring spaces between property accessors, etc) were excluded.
2022-05-05 09:05:02 +08:00
FranklinDM
cb9809634a Issue #1658 - Part 6: Break and return no control flow for jumps emitted by optional chains under IonBuilder
IIUC, we want to process the GOTO in the case of optional chains, and we do not satisfy the requirements mentioned in the comment of snoopControlFlow's caller. Optional chains are not loops, we (probably) don't have a loop in the instruction following the GOTO, and in the GOTO destination, we're either returning an undefined/null value or the actual value.
2022-05-05 09:04:58 +08:00
FranklinDM
4c35296690 Issue #1658 - Part 5: Add and initialize TDZ check to optional chaining emitter
Partially based on: https://bugzilla.mozilla.org/show_bug.cgi?id=1685260
2022-05-05 09:04:54 +08:00
FranklinDM
a350d51223 Issue #1658 - Part 4: Fix optional chaining assertions and remove unreachable code
This includes the following:

Bug 1611777 - Part 1: Report syntax error for optional property access in self-hosting code. r=yulia!
Bug 1611777 - Part 2: Merge same blocks in emitDeleteOptionalChain(). r=yulia!
Bug 1611777 - Part 3: N/A
Bug 1611777 - Part 4: `super` can't occur on the left-hand side of an optional chain
Bug 1611777 - Part 5: Remove unnecessary super-handling in optional delete. r=yulia!
The child node of a DeleteOptionalChainExpr node can't be a super-property
accessor, so we can remove this code.

Bug 1611777 - Part 6: Crash for unexpected super-base in optional call. r=yulia!
Bug 1611777 - Part 7: Add missing entries to list of valid optional chain start expressions. r=yulia!
Bug 1611777 - Part 8: Add missing emitGet in emitOptionalElemExpression. r=yulia!
Aligns emitOptionalElemExpression() with emitOptionalDotExpression(), so it's
easier to compare both methods against each other.

Bug 1611777 - Part 9: Replace an if-statement with an assertion. r=yulia!
Bug 1611777 - Part 10: N/A
Bug 1611777 - Part 11: Support optional chaining in class heritage expression. r=yulia!
Bug 1611777 - Part 12: Use optionalExpr() for update expressions to match spec grammar. r=yulia!

Using optionalExpr matches the spec grammar more closely. This change also
modifies the reported error message. ++a?.b reported before this change
"unexpected token: '?.'", but now reports "invalid increment/decrement operand".

Bug 1611777 - Part 13: N/A
Bug 1611777 - Part 14: Simplify two lines in optionalExpr(). r=yulia!

We don't need to test for tt == TokenKind::Eof when we return for tt != TokenKind::OptionalChain anyway. Omit local variable for the result value and instead use a tail-call. This matches the local style in the parser more closely.

Bug 1611777 - Part 15: Support FunCall/FunApply optimisations for optional chaining. r=yulia!
Bug 1611777 - Part 16: Pass through ValueUsage in optional chains. r=yulia
2022-05-05 09:04:49 +08:00
FranklinDM
efabdc1885 Issue #1658 - Part 3: Implement support for optional chaining in JS reflection
Partially based on:
Bug 1610447 - Update Reflect to handle Optional Chaining operator
Bug 1657835 - Assertion failure: false, at js/src/builtin/ReflectParse.cpp:3168
2022-05-05 09:04:45 +08:00
FranklinDM
d58db931d5 Issue #1658 - Part 2: Implement bytecode for optional chaining
Partially based on:
Bug 1566143 - Implement the Optional Chaining operator (?.) proposal
Bug 1650340 - Fix deleteElementInOptionalChain
Bug 1644839 - Fix return value of emitOptionalChain on failure
2022-05-05 09:04:40 +08:00
FranklinDM
e04a23ff98 Issue #1658 - Part 1: Implement support for optional chaining in the JS Parser
Partially based on: https://bugzilla.mozilla.org/show_bug.cgi?id=1566143
2022-05-05 09:04:36 +08:00
roytam1
9816e341b2 bump versions 2022-05-05 09:04:04 +08:00
FranklinDM
5d8b76c827 [Pale-Moon] Issue MoonchildProductions/UXP#21 - Remove panning/tab animation performance measurements 2022-05-05 09:02:06 +08:00
FranklinDM
fb350a088f [Pale-Moon] Restore removed call to log application start time 2022-05-05 09:01:46 +08:00
FranklinDM
22b4e607c8 [Pale-Moon] Fix undefined console when the hidePopup method is called 2022-05-05 09:01:23 +08:00
roytam1
cba4f41ffa mfbt: fixup after rev 13fcc4a0 2022-05-04 11:43:38 +08:00
Jeremy Andrews
292d71cd24 Issue #1887 - Allow /bin/sh to be used as a fallback value when SHELL is not set. 2022-05-04 10:11:48 +08:00
FranklinDM
4caef059e4 [Toolkit] Set an icon for the default handler 2022-05-04 10:11:36 +08:00
FranklinDM
06d8563a58 Issue #21 - Remove run phase property and constants from XPIProvider.jsm
These were introduced in Bug 853388 for the sole purpose of tracking the current startup phase for telemetry
2022-05-04 10:11:17 +08:00
FranklinDM
c8fa61323d Regenerate developer tools' static CSS properties database 2022-05-04 10:11:13 +08:00