- Apr 22, 2022
-
-
Bas Schouten authored
Bug 1751693: Add telemetry probe to measure glyph rasterization time and the required plumbing for WR. r=jrmuizel,nical Differential Revision: https://phabricator.services.mozilla.com/D140681
-
Glenn Watson authored
Bug 1764875 - Fix scale factors for perspective surfaces when not specified by Gecko r=gfx-reviewers,lsalzman Differential Revision: https://phabricator.services.mozilla.com/D144339
-
Steve Fink authored
Differential Revision: https://phabricator.services.mozilla.com/D141391
-
Norisz Fay authored
-
Norisz Fay authored
-
Hiroyuki Ikezoe authored
Differential Revision: https://phabricator.services.mozilla.com/D144351
-
Hiroyuki Ikezoe authored
Differential Revision: https://phabricator.services.mozilla.com/D144350
-
Jed Davis authored
Bug 1759196 - Fix the Linux sandbox's handling of 32-bit arguments on 64-bit platforms. r=gcp,bobowen Background: When 32-bit types are passed in registers on x86-64 (and probably other platforms?), the function call ABI does not specify the contents of the upper half, and the Linux kernel syscall ABI appears to have the same behavior. In practice, the upper half is usually zero (or maybe sign-extended from the lower half), because 64-bit operations aren't cheaper than 32-bit, and 32-bit operations zero-extend their outputs; therefore, this case usually doesn't happen in the first place, and any kind of spill or register move will zero the upper half. However, arbitrary values are possible, and a case like this has occurred with the Firefox profiler using `clock_gettime`. (This paragraph is applicable to x86-64 and ARM64; other 64-bit architecutures may behave differently.) But the Chromium seccomp-bpf compiler, when testing the value of a 32-bit argument on a 64-bit platform, requires that the value be zero-extended or sign-extended, and (incorrectly, as far as I can tell) considers anything else an ABI violation. With this patch, when that case is detected, we use the `SIGSYS` handler to zero-extend the problematic argument and re-issue the syscall. (It would also be possible to just ignore the upper half, and that would be faster, but that could lead to subtle security holes if the type used in `bpf_dsl` is incorrect and the kernel really does treat it as 64-bit.) Differential Revision: https://phabricator.services.mozilla.com/D143964
-
Mike Hommey authored
Differential Revision: https://phabricator.services.mozilla.com/D143570
-
Mike Hommey authored
Bug 1765474 - Fix unused-but-set-variable warning in OggDemuxer.cpp. r=media-playback-reviewers,padenot dom/media/ogg/OggDemuxer.cpp:1905:7: error: variable 'hops' set but not used [-Werror,-Wunused-but-set-variable] int hops = 0; ^ Differential Revision: https://phabricator.services.mozilla.com/D144147
-
Mike Hommey authored
mozglue/tests/TestBaseProfiler.cpp:2188:12: error: variable 'chunk1ReuseCount' set but not used [-Werror,-Wunused-but-set-variable] unsigned chunk1ReuseCount = 0; ^ Differential Revision: https://phabricator.services.mozilla.com/D144146
-
Mike Hommey authored
js/src/editline/editline.c:147:1: error: a function declaration without a prototype is deprecated in all versions of C and is not supported in C2x [-Werror,-Wdeprecated-non-prototype] TTYput(c) ^ js/src/editline/editline.c:158:1: error: a function declaration without a prototype is deprecated in all versions of C and is not supported in C2x [-Werror,-Wdeprecated-non-prototype] TTYputs(p) ^ js/src/editline/editline.c:166:1: error: a function declaration without a prototype is deprecated in all versions of C and is not supported in C2x [-Werror,-Wdeprecated-non-prototype] TTYshow(c) ^ js/src/editline/editline.c:187:1: error: a function declaration without a prototype is deprecated in all versions of C and is not supported in C2x [-Werror,-Wdeprecated-non-prototype] TTYstring(p) ^ js/src/editline/editline.c:212:1: error: a function declaration without a prototype is deprecated in all versions of C and is not supported in C2x [-Werror,-Wdeprecated-non-prototype] TTYbackn(n) ^ js/src/editline/editline.c:288:1: error: a function declaration without a prototype is deprecated in all versions of C and is not supported in C2x [-Werror,-Wdeprecated-non-prototype] left(Change) ^ js/src/editline/editline.c:305:1: error: a function declaration without a prototype is deprecated in all versions of C and is not supported in C2x [-Werror,-Wdeprecated-non-prototype] right(Change) ^ js/src/editline/editline.c:322:1: error: a function declaration without a prototype is deprecated in all versions of C and is not supported in C2x [-Werror,-Wdeprecated-non-prototype] do_macro(c) ^ js/src/editline/editline.c:340:1: error: a function declaration without a prototype is deprecated in all versions of C and is not supported in C2x [-Werror,-Wdeprecated-non-prototype] do_forward(move) ^ js/src/editline/editline.c:365:1: error: a function declaration without a prototype is deprecated in all versions of C and is not supported in C2x [-Werror,-Wdeprecated-non-prototype] do_case(type) ^ js/src/editline/editline.c:441:1: error: a function declaration without a prototype is deprecated in all versions of C and is not supported in C2x [-Werror,-Wdeprecated-non-prototype] insert_string(p) ^ js/src/editline/editline.c:502:1: error: a function declaration without a prototype is deprecated in all versions of C and is not supported in C2x [-Werror,-Wdeprecated-non-prototype] do_insert_hist(p) ^ js/src/editline/editline.c:515:1: error: a function declaration without a prototype is deprecated in all versions of C and is not supported in C2x [-Werror,-Wdeprecated-non-prototype] do_hist(move) ^ js/src/editline/editline.c:557:1: error: a function declaration without a prototype is deprecated in all versions of C and is not supported in C2x [-Werror,-Wdeprecated-non-prototype] substrcmp(text, pat, len) ^ js/src/editline/editline.c:607:14: error: passing arguments to a function without a prototype is deprecated in all versions of C and is not supported in C2x [-Werror,-Wdeprecated-non-prototype] if ((*match)((char *)H.Lines[H.Pos], pat, len) == 0) ^ js/src/editline/editline.c:573:1: error: a function declaration without a prototype is deprecated in all versions of C and is not supported in C2x [-Werror,-Wdeprecated-non-prototype] search_hist(search, move) ^ js/src/editline/editline.c:663:1: error: a function declaration without a prototype is deprecated in all versions of C and is not supported in C2x [-Werror,-Wdeprecated-non-prototype] save_yank(begin, i) ^ js/src/editline/editline.c:682:1: error: a function declaration without a prototype is deprecated in all versions of C and is not supported in C2x [-Werror,-Wdeprecated-non-prototype] delete_string(count) ^ js/src/editline/editline.c:781:1: error: a function declaration without a prototype is deprecated in all versions of C and is not supported in C2x [-Werror,-Wdeprecated-non-prototype] insert_char(c) ^ js/src/editline/editline.h:81:13: error: a function declaration without a prototype is deprecated in all versions of C and is not supported in C2x [-Werror,-Wdeprecated-non-prototype] extern void rl_add_slash(); ^ js/src/editline/sysunix.c:36:1: error: a function declaration without a prototype is deprecated in all versions of C and is not supported in C2x [-Werror,-Wdeprecated-non-prototype] rl_ttyset(Reset) ^ js/src/editline/sysunix.c:139:1: error: a function declaration without a prototype is deprecated in all versions of C and is not supported in C2x [-Werror,-Wdeprecated-non-prototype] rl_add_slash(path, p) ^ Differential Revision: https://phabricator.services.mozilla.com/D144145
-
Mike Hommey authored
netwerk/protocol/http/Http2Compression.cpp:326:12: error: variable 'removedCount' set but not used [-Werror,-Wunused-but-set-variable] uint32_t removedCount = 0; ^ netwerk/streamconv/converters/nsDirIndexParser.cpp:376:11: error: variable 'numItems' set but not used [-Werror,-Wunused-but-set-variable] int32_t numItems = 0; ^ Differential Revision: https://phabricator.services.mozilla.com/D144144
-
Mike Hommey authored
layout/xul/nsSprocketLayout.cpp:1116:14: error: variable 'pass' set but not used [-Werror,-Wunused-but-set-variable] for (int pass = 1; true == limit; pass++) { ^ Differential Revision: https://phabricator.services.mozilla.com/D144143
-
Mike Hommey authored
Differential Revision: https://phabricator.services.mozilla.com/D144142
-
Mike Hommey authored
js/src/frontend/BytecodeEmitter.cpp:4893:12: error: variable 'count' set but not used [-Werror,-Wunused-but-set-variable] uint32_t count = cookedOrRaw->count(); ^ js/src/frontend/BytecodeEmitter.cpp:4910:10: error: variable 'idx' set but not used [-Werror,-Wunused-but-set-variable] size_t idx; ^ js/src/irregexp/RegExpNativeMacroAssembler.cpp:899:10: error: variable 'pushedNonVolatileRegisters' set but not used [-Werror,-Wunused-but-set-variable] size_t pushedNonVolatileRegisters = 0; ^ Differential Revision: https://phabricator.services.mozilla.com/D144141
-
Mike Hommey authored
dom/midi/MIDIUtils.cpp:110:12: error: variable 'bytesRead' set but not used [-Werror,-Wunused-but-set-variable] uint32_t bytesRead = 0; ^ Differential Revision: https://phabricator.services.mozilla.com/D144140
-
Sean Feng authored
Differential Revision: https://phabricator.services.mozilla.com/D144340
-
Timothy Nikkel authored
Bug 1765112. Silence spammy warnings in netwerk/url-classifier/AsyncUrlChannelClassifier.cpp. r=baku,dimi Depends on D143890 Differential Revision: https://phabricator.services.mozilla.com/D143891
-
James Teh authored
Previously, we used the obs_documentCreated observer message fired by editor. However, this is fired when an editor is created anywhere in the document, even if it's for a descendant. This meant that we were firing an editable state change on the document when a descendant became contentEditable. In turn, this resulted in the document always having the editable state in the cache if there was a contentEditable descendant. This message also isn't fired if an editor already exists (e.g. for a contentEditable descendant) and designMode is turned on for the document. This meant that we wouldn't fire an event in that case, resulting in an incorrect cache. There is no usable equivalent to detect when designMode is turned off. While there is obs_documentWillBeDestroyed, that doesn't ever seem to get fired. This meant that we didn't fire a state change when designMode was turned off, also resulting in an incorrect cache. To fix all of these issues, we now watch for NS_EVENT_STATE_READWRITE changes on the root element of the document. Because we use the root element (not the body), this should avoid duplicate state changes for contentEditable changes on the body, which get handled by LocalAccessible::DOMAttributeChanged. Finally, we previously fired only an editable state change, but changing the editable state of a document also impacts the read-only state. This too resulted in an incorrect cache. We now fire a read-only state change as well. Differential Revision: https://phabricator.services.mozilla.com/D143969
-
- Apr 21, 2022
-
-
Daniel Holbert authored
Bug 1765640 part 2: Change reference case select-3-ref.html to use position:absolute instead of fixed, to avoid fuzzy failures due to antialiasing differences. r=hiro This should still serve as a good reference case for select-3.html, since it's still simpler-in-structure than that testcase. To the extent that the testcase really does want to test positioning of select elements with position:absolute vs. position:fixed (I'm not sure if it does, but just in case it does): we still have coverage for that, via the new copy of this reftest called "select-4.html" added in the previous patch in this series. Differential Revision: https://phabricator.services.mozilla.com/D144226
-
Daniel Holbert authored
Bug 1765640 part 1: Create a copy of reftest "select-3.html" with transparent text, to avoid antialiasing-related fuzzy failures. r=hiro Differential Revision: https://phabricator.services.mozilla.com/D144225
-
Dão Gottwald authored
Bug 1765821 - Remove now-redundant !important from in-content common-shared.css xul|tab styling. r=amy Differential Revision: https://phabricator.services.mozilla.com/D144312
-
Zaggy1024 authored
Differential Revision: https://phabricator.services.mozilla.com/D144343
-
Scott authored
Bug 1765859 - Clear save to Pocket button recent saves if user logs into another Pocket account. r=gvn Differential Revision: https://phabricator.services.mozilla.com/D144334
-
Norisz Fay authored
Backed out changeset 41bd981c3622 (bug 1651728) for causing bc failures on browser_readerMode_download.js CLOSED TREE
-
Andrew Erickson authored
m-c build used: https://treeherder.mozilla.org/jobs?repo=mozilla-central&revision=f78fb89b9c2f6255da18795f55dd420dcb1be6b2 Differential Revision: https://phabricator.services.mozilla.com/D144229
-
Hunter Jones authored
Differential Revision: https://phabricator.services.mozilla.com/D97847
-
Mike Hommey authored
Bug 1765680 - Use toolchain aliases for rust dependencies for toolchains. r=firefox-build-system-reviewers,mhentges While here, upgrade the rust toolchain used for lowercase. For some reason it was stuck on 1.47. Differential Revision: https://phabricator.services.mozilla.com/D144240
-
Norisz Fay authored
Backed out changeset f177a4875b01 (bug 1759196) for causing build bustages on Unified_cpp_sandbox_common0.o CLOSED TREE
-
Cosmin Sabou authored
Backed out changeset 252f5225f556 (bug 1764626) for causing bc failures on browser_multistage_spotlight.js. CLOSED TREE
-
Jed Davis authored
Bug 1759196 - Fix the Linux sandbox's handling of 32-bit arguments on 64-bit platforms. r=gcp,bobowen Background: When 32-bit types are passed in registers on x86-64 (and probably other platforms?), the function call ABI does not specify the contents of the upper half, and the Linux kernel syscall ABI appears to have the same behavior. In practice, the upper half is usually zero (or maybe sign-extended from the lower half), because 64-bit operations aren't cheaper than 32-bit, and 32-bit operations zero-extend their outputs; therefore, this case usually doesn't happen in the first place, and any kind of spill or register move will zero the upper half. However, arbitrary values are possible, and a case like this has occurred with the Firefox profiler using `clock_gettime`. (This paragraph is applicable to x86-64 and ARM64; other 64-bit architecutures may behave differently.) But the Chromium seccomp-bpf compiler, when testing the value of a 32-bit argument on a 64-bit platform, requires that the value be zero-extended or sign-extended, and (incorrectly, as far as I can tell) considers anything else an ABI violation. With this patch, when that case is detected, we use the `SIGSYS` handler to zero-extend the problematic argument and re-issue the syscall. (It would also be possible to just ignore the upper half, and that would be faster, but that could lead to subtle security holes if the type used in `bpf_dsl` is incorrect and the kernel really does treat it as 64-bit.) Differential Revision: https://phabricator.services.mozilla.com/D143964
-
Chris H-C authored
Differential Revision: https://phabricator.services.mozilla.com/D144175
-
Chris H-C authored
Differential Revision: https://phabricator.services.mozilla.com/D144174
-
Meg Viar authored
Bug 1764626 - Differentiate between about:welcome and Spotlight context when sending event telemetry r=Mardak Differential Revision: https://phabricator.services.mozilla.com/D143645
-
Andrew Erickson authored
m-c build used: https://treeherder.mozilla.org/jobs?repo=mozilla-central&revision=f78fb89b9c2f6255da18795f55dd420dcb1be6b2 Differential Revision: https://phabricator.services.mozilla.com/D144232
-
Norisz Fay authored
CLOSED TREE Backed out changeset 2b6a67ada4d3 (bug 1654054f) Backed out changeset 2f9ad49eb131 (bug 1654054f)
-
Andrew Erickson authored
m-c build used: https://treeherder.mozilla.org/jobs?repo=mozilla-central&revision=f78fb89b9c2f6255da18795f55dd420dcb1be6b2 Differential Revision: https://phabricator.services.mozilla.com/D144231
-
Emilio Cobos Álvarez authored
MANUAL PUSH: Trivial build fix.
-
Luca Greco authored
Differential Revision: https://phabricator.services.mozilla.com/D143188
-