Commit Graph

231291 Commits

Author SHA1 Message Date
Gregory Szorc
a1b5250803 Bug 1132771 - Fix grammar nits in moz.build documentation
These were left over from a Ms2ger review and weren't seen before
landing.

DONTBUILD (NPOTB)
2015-03-01 22:15:07 -08:00
Anthony Jones
7aca700d5d Bug 1135558 - Disable WebM support for MSE; r=rillian 2015-03-02 16:38:45 +13:00
Anthony Jones
7dea01a959 Bug 1135544 - Create an abstract base class for a track demuxer; r=kinetik 2015-03-02 16:34:44 +13:00
Bobby Holley
aa3b26a74c Bug 1135785 - Hoist some work onto the state machine thread and tighten down our assertions. r=cpearce 2015-03-01 19:33:53 -08:00
Bobby Holley
4bd9040eca Bug 1135785 - Stop manually resetting mCurrentSeekTarget in MDSM::SeekCompleted and rely on the AutoSetOnScopeExit instead. r=cpearce
For some reason the current code is resetting it twice - once explicitly and
once with the AutoSetOnScopeExit. To make matters worse, we have a monitor drop
between the two. So when DecodeSeek runs on the decode task queue but SeekCompleted
runs on the state machine thread, we can start another DecodeSeek during the monitor
drop, and then clobber it with the AutoSeetOnScopeExit, causing us to hang.

This is a non-issue with the patches in bug 1135170, but necessary to make the
patches in this bug independently green.
2015-03-01 19:33:52 -08:00
Bobby Holley
68ac0259e2 Bug 1135785 - Stop invoking StopPlayback in SetDormant. r=cpearce
This already gets incoded in the DECODER_STATE_DORMANT case of RunStateMachine,
which will run momentarily on the state machine thread. Doing this allows us to
avoid calling StopPlayback on the main thread.
2015-03-01 19:33:50 -08:00
Bobby Holley
4ffe849a5a Bug 1135785 - Return samples on state machine thread. r=cpearce
This is necessary because we're going to want to start disconnecting sample
and seek requests directly from the state machine thread, and the machinery
asserts that disconnection happens on the same thread as resolution.

More generally, this is the right thing to do architecturally, and will help
wean us off the monitor.
2015-03-01 19:33:49 -08:00
Bobby Holley
887b211fd3 Bug 1135785 - Make DecodeError safe to run on any thread. r=cpearce
This is necessary so that we can make On{Audio,Video}{,Not}Decoded run on the
state machine thread in the next patch.
2015-03-01 19:33:48 -08:00
Bobby Holley
0e2adf3284 Bug 1135785 - Make MediaTaskQueue::IsCurrentThreadIn actually do the right thing on release builds. r=cpearce
The current situation is really dangerous because it compiles on release builds,
but just lies. This bit me when I tried to use it for non-assertion purposes.

My reading of the reasoning for the current setup in bug 968016 is that we didn't
trust nsIEventTarget::IsCurrentThreadOn or thought it might be slow. But the
implementation of MediaTaskQueue::IsCurrentThreadIn doesn't actually use that, and
indeed currently does all of the work for this feature in release builds anyway.
2015-03-01 19:33:46 -08:00
Bobby Holley
2c6b1b64e3 Bug 1135785 - Introduce a 1-argument overload of ProxyMediaCall. r=cpearce 2015-03-01 19:33:45 -08:00
Bobby Holley
40c1074481 Bug 1138072 - Don't defer reading to a closed stream. r=roc
Other streams in the list bail out of the servicing loop if they're closed, so
we can wait indefinitely.
2015-03-01 19:33:44 -08:00
Gregory Szorc
34f45e6431 Bug 1132771 - Implement file-info mach command; r=glandium
Now that we have a mechanism for defining file-based metadata, let's add
a mach command to interface with it.

Currently, we limit ourselves to simple Bugzilla data dumping. Features
will be added over time.
2015-02-27 13:58:01 -08:00
Gregory Szorc
6ad26eb327 Bug 1132771 - Define some bug components; r=glandium
This patch defines bug components for code that I have historically
touched.
2015-02-26 11:43:45 -08:00
Gregory Szorc
1e851af0da Bug 1132771 - Add Files to moz.build with ability to define Bugzilla component; r=glandium
The Files sub-context allows us to attach metadata to files based on
pattern matching rules.

Patterns are matched against files in a last-write-wins fashion.

The sub-context defines the BUG_COMPONENT variable, which is a 2-tuple
(actually a named tuple) defining the Bugzilla product and component for
files. There are no consumers yet. But an eventual use case will be to
suggest a bug component for a patch/commit. Another will be to
automatically suggest a bug component for a failing test.
2015-02-27 13:56:26 -08:00
Gregory Szorc
f818edcfa2 Bug 1132771 - Support and test for reading without a config object; r=glandium
We want the ability to read data from any moz.build file without needing
a full build configuration (running configure). This will enable tools
to consume metadata by merely having a copy of the source code and
nothing more.

This commit creates the EmptyConfig object. It is a config object that -
as its name implies - is empty. It will be used for reading moz.build
files in "no config" mode.

Many moz.build files make assumptions that variables in CONFIG are
defined and that they are strings. We create the EmptyValue type that
behaves like an empty unicode string. Since moz.build files also do some
type checking, we carve an exemption for EmptyValue, just like we do for
None.

We add a test to verify that reading moz.build files in "no config" mode
works. This required some minor changes to existing moz.build files to
make them work in the new execution mode.
2015-02-26 10:21:52 -08:00
Gregory Szorc
718b4578a6 Bug 1132771 - Add a test for reading all moz.build files in filesystem traversal mode; r=glandium
moz.build files should execute in filesystem traversal mode. Add a test
that verifies this is true.

This test performs a brute force filesystem scan to find relevant
moz.build files. This can be a little slow. That's unfortunate. But it's
a price we need to pay in order to ensure metadata extraction mode
continues to work.
2015-02-26 09:49:49 -08:00
Gregory Szorc
264071f565 Bug 1132771 - Support reading relevant moz.build files; r=glandium
Building on top of the API to retrieve relevant moz.build files for a
given path, we introduce a moz.build reading API that reads all
moz.build files relevant to a given set of paths. We plan to use this
new API to read metadata from moz.build files relevant to a set of
files.

This patch changes the generator behavior of read_mozbuild to emit the
main context before any processing occurs. This allows downstream
consumers to manipulate state of the context before things like
directory processing occurs. We utilize this capability in the new
reading API to forcefully declare the directory traversal order for
processed moz.build files, overriding DIRS and similar variables.

Since variable exporting doesn't work reliably in this new traversal
mode, variable exporting no-ops when this mode is activated.
2015-02-26 09:44:55 -08:00
Gregory Szorc
3d8f408eff Bug 1132771 - Pass special types down to sandboxes via metadata; r=glandium
Currently, MozSandbox assumes that the FUNCTIONS, SPECIAL_VARIABLES, and
SUBCONTEXTS data structures are the instances that should be associated
with the sandbox. As we introduce new moz.build processing modes that
wish to change processing behavior, it is necessary for them to have
control over these special symbols.

This patch moves the declaration of these types to the special metadata
dictionary which is inherited during recursion. The "read_topsrcdir" API
now explicitly passes the initial metadata into "read_mozbuild".
2015-02-26 09:43:55 -08:00
Gregory Szorc
1e57f6119e Bug 1132771 - Implement strongly typed named tuples; r=glandium
An upcoming patch introduces a use case for a strongly typed named
tuple. So, we introduce a generic factory function that can produce these
types.
2015-02-26 09:38:43 -08:00
Gregory Szorc
ddc6e538e0 Bug 1132771 - API to return moz.build files relevant for a set of paths; r=glandium
We have an eventual goal to store file-level metadata in moz.build files
and to have this metadata "cascade" down directory hierarchies. e.g.
metadata in the root directory will apply to all children directories.

A prerequisite for this feature is a way to query which moz.build files
are relevant to a given file. In this patch, we implement an API that
returns this information.
2015-02-25 14:10:10 -08:00
Chris Pearce
4d3879ec6c Bug 1138240 - Fail faster if a CDM tries to resolve a resolved promise. r=edwin 2015-03-02 14:13:47 +13:00
Jean-Yves Avenard
43eec98395 Bug 1137529: Prefer Apple's VDA hardware acceleration for Hi-Def videos. r=rillian
With some GPUs (such as Intel HD-x000), Apple VideoTool box provides poor
decoding speed, causing us to drop frames for most HD videos.
VDA is around 50 times faster on those machines (31ms average to decode a 4K
frame with VT, while 0.6ms average with VDA)
2015-03-02 10:48:28 +11:00
Jean-Yves Avenard
091f2ff1f0 Bug 1128397: Work around EOS detection in MSE. r=mattwoodrow
This attempts to handle video and audio sourcebuffer not having exactly the
same duration, so the ended event is properly fired.
2015-03-02 10:47:54 +11:00
Jean-Yves Avenard
89b13c783a Bug 1134387: Prevent crash when decoder couldn't be created. r=edwin 2015-02-27 11:31:46 +11:00
Mike Hommey
84c54d128d Bug 762449 - Enable jemalloc 3 by default, but don't make it ride the trains yet. r=njn 2015-03-02 07:35:29 +09:00
Mike Hommey
1a6b501d3e Bug 762449 - Fix "result of 32-bit shift implicitly converted to 64 bits" on win64. r=njn 2015-03-02 07:35:28 +09:00
Mike Hommey
59d2230256 Bug 762449 - Make jemalloc's opt.lg_dirty_mult work as documented. r=njn 2015-03-02 07:35:28 +09:00
Brian Hackett
013462312d Bug 1135423 - Use unboxed objects for object literals where possible, clean up object literal creation and property initialization code, r=jandem. 2015-03-01 16:31:41 -06:00
Chris Peterson
07ff92f355 Bug 1137987 - Remove nonstandard let block from dom/downloads/tests. r=aus 2015-02-27 18:31:21 -08:00
Tooru Fujisawa
cae277bdd7 Bug 1108382 - Part 12: Do not use non-standard flag argument of String.prototype.replace in testing/web-platform/tests/. r=jgriffin 2015-03-01 09:51:33 +09:00
Tooru Fujisawa
20a8c15d94 Bug 1108382 - Part 11: Do not use non-standard flag argument of String.prototype.replace in services/. r=rnewman 2015-03-01 09:51:33 +09:00
Tooru Fujisawa
baa0a6ed28 Bug 1108382 - Part 10: Do not use non-standard flag argument of String.prototype.replace in mobile/android/. r=rnewman 2015-03-01 09:51:33 +09:00
Tooru Fujisawa
3121600762 Bug 1108382 - Part 9: Do not use non-standard flag argument of String.prototype.replace in js/src/. r=jandem 2015-03-01 09:51:33 +09:00
Tooru Fujisawa
18b43bcf6b Bug 1108382 - Part 8: Do not use non-standard flag argument of String.prototype.replace in dom/payment/. r=fabrice 2015-03-01 09:51:33 +09:00
Tooru Fujisawa
9bc8b14eba Bug 1108382 - Part 7: Do not use non-standard flag argument of String.prototype.replace in dom/mobileconnection/gonk/. r=echen 2015-03-01 09:51:33 +09:00
Tooru Fujisawa
2adc4406e1 Bug 1108382 - Part 6: Do not use non-standard flag argument of String.prototype.replace in dom/. r=peterv 2015-03-01 09:51:33 +09:00
Tooru Fujisawa
74095dfb8d Bug 1108382 - Part 5: Do not use non-standard flag argument of String.prototype.replace in docshell/test/unit/. r=gavin 2015-03-01 09:51:33 +09:00
Tooru Fujisawa
04e043ce47 Bug 1108382 - Part 4: Do not use non-standard flag argument of String.prototype.replace in build/pgo/. r=jandem 2015-03-01 09:51:33 +09:00
Tooru Fujisawa
3f6ab43f59 Bug 1108382 - Part 3: Do not use non-standard flag argument of String.prototype.replace in browser/metro/. r=mbrubeck 2015-03-01 09:51:33 +09:00
Tooru Fujisawa
f2019503d3 Bug 1108382 - Part 2: Do not use non-standard flag argument of String.prototype.match/replace in browser/components/translation/. r=felipe 2015-03-01 09:51:33 +09:00
Tooru Fujisawa
e6bded4aef Bug 1108382 - Part 1: Do not use non-standard flag argument of String.prototype.match/replace in browser/. r=gavin 2015-03-01 09:51:32 +09:00
Alexander Surkov
21b18abe2d Bug 1137714 - Make roleDescription nicer/correct/faster, r=marcoz 2015-02-28 17:25:06 -05:00
Andrew McCreight
83322be904 Backed out changeset a761ac6f8bcc for e10s bc3 opt thumbnail timeouts. 2015-02-28 11:16:58 -08:00
Bill McCloskey
467405d10f Bug 1137933 - Don't cache the docshell in WebNavigation in browser-child.js. r=felipe
Also don't cache the session history, because we only use it in init.
2015-02-28 08:41:07 -08:00
Nathan Froyd
a641e5e1a7 Bug 967300 - enable cairo's atomic support on gcc-esque compilers; r=mshal
Cairo has a number of nifty features predicated on support for atomic
operations on integer types.  Normally, such support would be determined
by cairo's configure script.  But since we don't run cairo's configure
script, we need to manually define HAVE_INTEL_ATOMIC_PRIMITIVES during
cairo's build.  That macro enables codepaths that depend on certain
SIZEOF_* variables being defined by autoconf, so we also need to add the
necessary code in moz.build to set those.
2015-01-15 15:53:28 -05:00
Marco Zehe
9e7656393a Bug 1121518 - ARIA 1.1: Add support for role 'searchbox', r=surkov 2015-02-27 15:41:57 +01:00
Tooru Fujisawa
f866d845d0 Bug 1137897 - Do not throw exception from nsPluginTag::GetMimeTypes if a plug-in has no MIME-Types. r=bz 2015-02-28 13:32:27 +09:00
Chris Pearce
7c56165d01 Bug 1137957 - Fix non-unified build failure in GMPVideoDecoder. r=kinetik 2015-02-28 16:15:29 +13:00
Chris Pearce
b916b705c7 Bug 1137489 - Fix unified build failure in gmp-clearkey. r=edwin 2015-02-28 16:15:18 +13:00
Chris Peterson
927f45dd80 Bug 1133277 - Remove nonstandard let blocks from toolkit/components and modules. r=mak 2015-02-05 22:53:14 -08:00