mirror of
https://gitlab.winehq.org/wine/wine-gecko.git
synced 2024-09-13 09:24:08 -07:00
Merge m-c to fx-team, a=merge
This commit is contained in:
commit
f1f60449ff
@ -15,7 +15,7 @@
|
||||
<project name="platform_build" path="build" remote="b2g" revision="e862ab9177af664f00b4522e2350f4cb13866d73">
|
||||
<copyfile dest="Makefile" src="core/root.mk"/>
|
||||
</project>
|
||||
<project name="gaia" path="gaia" remote="mozillaorg" revision="b9968cdc4a1dee49848fed6159a59c378cea062d"/>
|
||||
<project name="gaia" path="gaia" remote="mozillaorg" revision="c2c798dd2faadc49c5440abaa60fb2ea3f57113f"/>
|
||||
<project name="fake-libdvm" path="dalvik" remote="b2g" revision="d50ae982b19f42f0b66d08b9eb306be81687869f"/>
|
||||
<project name="gonk-misc" path="gonk-misc" remote="b2g" revision="c490ae41c67f892232599f4ef049467a922b613e"/>
|
||||
<project name="librecovery" path="librecovery" remote="b2g" revision="1b3591a50ed352fc6ddb77462b7b35d0bfa555a3"/>
|
||||
@ -23,7 +23,7 @@
|
||||
<project name="rilproxy" path="rilproxy" remote="b2g" revision="5ef30994f4778b4052e58a4383dbe7890048c87e"/>
|
||||
<project name="valgrind" path="external/valgrind" remote="b2g" revision="daa61633c32b9606f58799a3186395fd2bbb8d8c"/>
|
||||
<project name="vex" path="external/VEX" remote="b2g" revision="47f031c320888fe9f3e656602588565b52d43010"/>
|
||||
<project name="apitrace" path="external/apitrace" remote="apitrace" revision="cfa80d0c1c13a13a64b049173ea3a1d605f2cffd"/>
|
||||
<project name="apitrace" path="external/apitrace" remote="apitrace" revision="7d810e5c522d146a3ee6d13b9422110119a3689f"/>
|
||||
<!-- Stock Android things -->
|
||||
<project groups="linux" name="platform/prebuilts/gcc/linux-x86/host/i686-linux-glibc2.7-4.6" path="prebuilts/gcc/linux-x86/host/i686-linux-glibc2.7-4.6" revision="95bb5b66b3ec5769c3de8d3f25d681787418e7d2"/>
|
||||
<project groups="linux" name="platform/prebuilts/gcc/linux-x86/host/x86_64-linux-glibc2.7-4.6" path="prebuilts/gcc/linux-x86/host/x86_64-linux-glibc2.7-4.6" revision="ebdad82e61c16772f6cd47e9f11936bf6ebe9aa0"/>
|
||||
|
@ -15,7 +15,7 @@
|
||||
<project name="platform_build" path="build" remote="b2g" revision="e862ab9177af664f00b4522e2350f4cb13866d73">
|
||||
<copyfile dest="Makefile" src="core/root.mk"/>
|
||||
</project>
|
||||
<project name="gaia" path="gaia" remote="mozillaorg" revision="b9968cdc4a1dee49848fed6159a59c378cea062d"/>
|
||||
<project name="gaia" path="gaia" remote="mozillaorg" revision="c2c798dd2faadc49c5440abaa60fb2ea3f57113f"/>
|
||||
<project name="fake-libdvm" path="dalvik" remote="b2g" revision="d50ae982b19f42f0b66d08b9eb306be81687869f"/>
|
||||
<project name="gonk-misc" path="gonk-misc" remote="b2g" revision="c490ae41c67f892232599f4ef049467a922b613e"/>
|
||||
<project name="librecovery" path="librecovery" remote="b2g" revision="1b3591a50ed352fc6ddb77462b7b35d0bfa555a3"/>
|
||||
@ -23,7 +23,7 @@
|
||||
<project name="rilproxy" path="rilproxy" remote="b2g" revision="5ef30994f4778b4052e58a4383dbe7890048c87e"/>
|
||||
<project name="valgrind" path="external/valgrind" remote="b2g" revision="daa61633c32b9606f58799a3186395fd2bbb8d8c"/>
|
||||
<project name="vex" path="external/VEX" remote="b2g" revision="47f031c320888fe9f3e656602588565b52d43010"/>
|
||||
<project name="apitrace" path="external/apitrace" remote="apitrace" revision="cfa80d0c1c13a13a64b049173ea3a1d605f2cffd"/>
|
||||
<project name="apitrace" path="external/apitrace" remote="apitrace" revision="7d810e5c522d146a3ee6d13b9422110119a3689f"/>
|
||||
<!-- Stock Android things -->
|
||||
<project groups="linux" name="platform/prebuilts/gcc/linux-x86/host/i686-linux-glibc2.7-4.6" path="prebuilts/gcc/linux-x86/host/i686-linux-glibc2.7-4.6" revision="95bb5b66b3ec5769c3de8d3f25d681787418e7d2"/>
|
||||
<project groups="linux" name="platform/prebuilts/gcc/linux-x86/host/x86_64-linux-glibc2.7-4.6" path="prebuilts/gcc/linux-x86/host/x86_64-linux-glibc2.7-4.6" revision="ebdad82e61c16772f6cd47e9f11936bf6ebe9aa0"/>
|
||||
|
@ -19,7 +19,7 @@
|
||||
<copyfile dest="Makefile" src="core/root.mk"/>
|
||||
</project>
|
||||
<project name="fake-dalvik" path="dalvik" remote="b2g" revision="ca1f327d5acc198bb4be62fa51db2c039032c9ce"/>
|
||||
<project name="gaia.git" path="gaia" remote="mozillaorg" revision="b9968cdc4a1dee49848fed6159a59c378cea062d"/>
|
||||
<project name="gaia.git" path="gaia" remote="mozillaorg" revision="c2c798dd2faadc49c5440abaa60fb2ea3f57113f"/>
|
||||
<project name="gonk-misc" path="gonk-misc" remote="b2g" revision="c490ae41c67f892232599f4ef049467a922b613e"/>
|
||||
<project name="rilproxy" path="rilproxy" remote="b2g" revision="5ef30994f4778b4052e58a4383dbe7890048c87e"/>
|
||||
<project name="platform_hardware_ril" path="hardware/ril" remote="b2g" revision="87a2d8ab9248540910e56921654367b78a587095"/>
|
||||
|
@ -17,10 +17,10 @@
|
||||
</project>
|
||||
<project name="rilproxy" path="rilproxy" remote="b2g" revision="5ef30994f4778b4052e58a4383dbe7890048c87e"/>
|
||||
<project name="fake-libdvm" path="dalvik" remote="b2g" revision="d50ae982b19f42f0b66d08b9eb306be81687869f"/>
|
||||
<project name="gaia" path="gaia" remote="mozillaorg" revision="b9968cdc4a1dee49848fed6159a59c378cea062d"/>
|
||||
<project name="gaia" path="gaia" remote="mozillaorg" revision="c2c798dd2faadc49c5440abaa60fb2ea3f57113f"/>
|
||||
<project name="gonk-misc" path="gonk-misc" remote="b2g" revision="c490ae41c67f892232599f4ef049467a922b613e"/>
|
||||
<project name="moztt" path="external/moztt" remote="b2g" revision="657894b4a1dc0a926117f4812e0940229f9f676f"/>
|
||||
<project name="apitrace" path="external/apitrace" remote="apitrace" revision="cfa80d0c1c13a13a64b049173ea3a1d605f2cffd"/>
|
||||
<project name="apitrace" path="external/apitrace" remote="apitrace" revision="7d810e5c522d146a3ee6d13b9422110119a3689f"/>
|
||||
<project name="valgrind" path="external/valgrind" remote="b2g" revision="daa61633c32b9606f58799a3186395fd2bbb8d8c"/>
|
||||
<project name="vex" path="external/VEX" remote="b2g" revision="47f031c320888fe9f3e656602588565b52d43010"/>
|
||||
<!-- Stock Android things -->
|
||||
|
@ -15,7 +15,7 @@
|
||||
<project name="platform_build" path="build" remote="b2g" revision="e862ab9177af664f00b4522e2350f4cb13866d73">
|
||||
<copyfile dest="Makefile" src="core/root.mk"/>
|
||||
</project>
|
||||
<project name="gaia" path="gaia" remote="mozillaorg" revision="b9968cdc4a1dee49848fed6159a59c378cea062d"/>
|
||||
<project name="gaia" path="gaia" remote="mozillaorg" revision="c2c798dd2faadc49c5440abaa60fb2ea3f57113f"/>
|
||||
<project name="fake-libdvm" path="dalvik" remote="b2g" revision="d50ae982b19f42f0b66d08b9eb306be81687869f"/>
|
||||
<project name="gonk-misc" path="gonk-misc" remote="b2g" revision="c490ae41c67f892232599f4ef049467a922b613e"/>
|
||||
<project name="librecovery" path="librecovery" remote="b2g" revision="1b3591a50ed352fc6ddb77462b7b35d0bfa555a3"/>
|
||||
@ -23,7 +23,7 @@
|
||||
<project name="rilproxy" path="rilproxy" remote="b2g" revision="5ef30994f4778b4052e58a4383dbe7890048c87e"/>
|
||||
<project name="valgrind" path="external/valgrind" remote="b2g" revision="daa61633c32b9606f58799a3186395fd2bbb8d8c"/>
|
||||
<project name="vex" path="external/VEX" remote="b2g" revision="47f031c320888fe9f3e656602588565b52d43010"/>
|
||||
<project name="apitrace" path="external/apitrace" remote="apitrace" revision="cfa80d0c1c13a13a64b049173ea3a1d605f2cffd"/>
|
||||
<project name="apitrace" path="external/apitrace" remote="apitrace" revision="7d810e5c522d146a3ee6d13b9422110119a3689f"/>
|
||||
<!-- Stock Android things -->
|
||||
<project groups="linux" name="platform/prebuilts/gcc/linux-x86/host/i686-linux-glibc2.7-4.6" path="prebuilts/gcc/linux-x86/host/i686-linux-glibc2.7-4.6" revision="f92a936f2aa97526d4593386754bdbf02db07a12"/>
|
||||
<project groups="linux" name="platform/prebuilts/gcc/linux-x86/host/x86_64-linux-glibc2.7-4.6" path="prebuilts/gcc/linux-x86/host/x86_64-linux-glibc2.7-4.6" revision="6e47ff2790f5656b5b074407829ceecf3e6188c4"/>
|
||||
|
@ -15,7 +15,7 @@
|
||||
<project name="platform_build" path="build" remote="b2g" revision="61e82f99bb8bc78d52b5717e9a2481ec7267fa33">
|
||||
<copyfile dest="Makefile" src="core/root.mk"/>
|
||||
</project>
|
||||
<project name="gaia" path="gaia" remote="mozillaorg" revision="b9968cdc4a1dee49848fed6159a59c378cea062d"/>
|
||||
<project name="gaia" path="gaia" remote="mozillaorg" revision="c2c798dd2faadc49c5440abaa60fb2ea3f57113f"/>
|
||||
<project name="fake-libdvm" path="dalvik" remote="b2g" revision="d50ae982b19f42f0b66d08b9eb306be81687869f"/>
|
||||
<project name="gonk-misc" path="gonk-misc" remote="b2g" revision="c490ae41c67f892232599f4ef049467a922b613e"/>
|
||||
<project name="librecovery" path="librecovery" remote="b2g" revision="1b3591a50ed352fc6ddb77462b7b35d0bfa555a3"/>
|
||||
@ -23,7 +23,7 @@
|
||||
<project name="rilproxy" path="rilproxy" remote="b2g" revision="5ef30994f4778b4052e58a4383dbe7890048c87e"/>
|
||||
<project name="valgrind" path="external/valgrind" remote="b2g" revision="daa61633c32b9606f58799a3186395fd2bbb8d8c"/>
|
||||
<project name="vex" path="external/VEX" remote="b2g" revision="47f031c320888fe9f3e656602588565b52d43010"/>
|
||||
<project name="apitrace" path="external/apitrace" remote="apitrace" revision="cfa80d0c1c13a13a64b049173ea3a1d605f2cffd"/>
|
||||
<project name="apitrace" path="external/apitrace" remote="apitrace" revision="7d810e5c522d146a3ee6d13b9422110119a3689f"/>
|
||||
<!-- Stock Android things -->
|
||||
<project groups="pdk,linux" name="platform/prebuilts/clang/linux-x86/host/3.5" path="prebuilts/clang/linux-x86/host/3.5" revision="ffc05a232799fe8fcb3e47b7440b52b1fb4244c0"/>
|
||||
<project groups="pdk,linux,arm" name="platform/prebuilts/gcc/linux-x86/aarch64/aarch64-linux-android-4.8" path="prebuilts/gcc/linux-x86/aarch64/aarch64-linux-android-4.8" revision="337e0ef5e40f02a1ae59b90db0548976c70a7226"/>
|
||||
|
@ -19,7 +19,7 @@
|
||||
<copyfile dest="Makefile" src="core/root.mk"/>
|
||||
</project>
|
||||
<project name="fake-dalvik" path="dalvik" remote="b2g" revision="ca1f327d5acc198bb4be62fa51db2c039032c9ce"/>
|
||||
<project name="gaia.git" path="gaia" remote="mozillaorg" revision="b9968cdc4a1dee49848fed6159a59c378cea062d"/>
|
||||
<project name="gaia.git" path="gaia" remote="mozillaorg" revision="c2c798dd2faadc49c5440abaa60fb2ea3f57113f"/>
|
||||
<project name="gonk-misc" path="gonk-misc" remote="b2g" revision="c490ae41c67f892232599f4ef049467a922b613e"/>
|
||||
<project name="rilproxy" path="rilproxy" remote="b2g" revision="5ef30994f4778b4052e58a4383dbe7890048c87e"/>
|
||||
<project name="platform_hardware_ril" path="hardware/ril" remote="b2g" revision="87a2d8ab9248540910e56921654367b78a587095"/>
|
||||
|
@ -15,7 +15,7 @@
|
||||
<project name="platform_build" path="build" remote="b2g" revision="e862ab9177af664f00b4522e2350f4cb13866d73">
|
||||
<copyfile dest="Makefile" src="core/root.mk"/>
|
||||
</project>
|
||||
<project name="gaia" path="gaia" remote="mozillaorg" revision="b9968cdc4a1dee49848fed6159a59c378cea062d"/>
|
||||
<project name="gaia" path="gaia" remote="mozillaorg" revision="c2c798dd2faadc49c5440abaa60fb2ea3f57113f"/>
|
||||
<project name="fake-libdvm" path="dalvik" remote="b2g" revision="d50ae982b19f42f0b66d08b9eb306be81687869f"/>
|
||||
<project name="gonk-misc" path="gonk-misc" remote="b2g" revision="c490ae41c67f892232599f4ef049467a922b613e"/>
|
||||
<project name="librecovery" path="librecovery" remote="b2g" revision="1b3591a50ed352fc6ddb77462b7b35d0bfa555a3"/>
|
||||
@ -23,7 +23,7 @@
|
||||
<project name="rilproxy" path="rilproxy" remote="b2g" revision="5ef30994f4778b4052e58a4383dbe7890048c87e"/>
|
||||
<project name="valgrind" path="external/valgrind" remote="b2g" revision="daa61633c32b9606f58799a3186395fd2bbb8d8c"/>
|
||||
<project name="vex" path="external/VEX" remote="b2g" revision="47f031c320888fe9f3e656602588565b52d43010"/>
|
||||
<project name="apitrace" path="external/apitrace" remote="apitrace" revision="cfa80d0c1c13a13a64b049173ea3a1d605f2cffd"/>
|
||||
<project name="apitrace" path="external/apitrace" remote="apitrace" revision="7d810e5c522d146a3ee6d13b9422110119a3689f"/>
|
||||
<!-- Stock Android things -->
|
||||
<project groups="linux" name="platform/prebuilts/gcc/linux-x86/host/i686-linux-glibc2.7-4.6" path="prebuilts/gcc/linux-x86/host/i686-linux-glibc2.7-4.6" revision="95bb5b66b3ec5769c3de8d3f25d681787418e7d2"/>
|
||||
<project groups="linux" name="platform/prebuilts/gcc/linux-x86/host/x86_64-linux-glibc2.7-4.6" path="prebuilts/gcc/linux-x86/host/x86_64-linux-glibc2.7-4.6" revision="ebdad82e61c16772f6cd47e9f11936bf6ebe9aa0"/>
|
||||
|
@ -1,9 +1,9 @@
|
||||
{
|
||||
"git": {
|
||||
"git_revision": "b9968cdc4a1dee49848fed6159a59c378cea062d",
|
||||
"git_revision": "c2c798dd2faadc49c5440abaa60fb2ea3f57113f",
|
||||
"remote": "https://git.mozilla.org/releases/gaia.git",
|
||||
"branch": ""
|
||||
},
|
||||
"revision": "275f9f64b346b08c91bbe10bfc786827a5bd0531",
|
||||
"revision": "76c556f31dcbe9e77390aa71db867fd4f28aa70f",
|
||||
"repo_path": "integration/gaia-central"
|
||||
}
|
||||
|
@ -17,10 +17,10 @@
|
||||
</project>
|
||||
<project name="rilproxy" path="rilproxy" remote="b2g" revision="5ef30994f4778b4052e58a4383dbe7890048c87e"/>
|
||||
<project name="fake-libdvm" path="dalvik" remote="b2g" revision="d50ae982b19f42f0b66d08b9eb306be81687869f"/>
|
||||
<project name="gaia" path="gaia" remote="mozillaorg" revision="b9968cdc4a1dee49848fed6159a59c378cea062d"/>
|
||||
<project name="gaia" path="gaia" remote="mozillaorg" revision="c2c798dd2faadc49c5440abaa60fb2ea3f57113f"/>
|
||||
<project name="gonk-misc" path="gonk-misc" remote="b2g" revision="c490ae41c67f892232599f4ef049467a922b613e"/>
|
||||
<project name="moztt" path="external/moztt" remote="b2g" revision="657894b4a1dc0a926117f4812e0940229f9f676f"/>
|
||||
<project name="apitrace" path="external/apitrace" remote="apitrace" revision="cfa80d0c1c13a13a64b049173ea3a1d605f2cffd"/>
|
||||
<project name="apitrace" path="external/apitrace" remote="apitrace" revision="7d810e5c522d146a3ee6d13b9422110119a3689f"/>
|
||||
<project name="valgrind" path="external/valgrind" remote="b2g" revision="daa61633c32b9606f58799a3186395fd2bbb8d8c"/>
|
||||
<project name="vex" path="external/VEX" remote="b2g" revision="47f031c320888fe9f3e656602588565b52d43010"/>
|
||||
<!-- Stock Android things -->
|
||||
|
@ -15,7 +15,7 @@
|
||||
<project name="platform_build" path="build" remote="b2g" revision="61e82f99bb8bc78d52b5717e9a2481ec7267fa33">
|
||||
<copyfile dest="Makefile" src="core/root.mk"/>
|
||||
</project>
|
||||
<project name="gaia" path="gaia" remote="mozillaorg" revision="b9968cdc4a1dee49848fed6159a59c378cea062d"/>
|
||||
<project name="gaia" path="gaia" remote="mozillaorg" revision="c2c798dd2faadc49c5440abaa60fb2ea3f57113f"/>
|
||||
<project name="fake-libdvm" path="dalvik" remote="b2g" revision="d50ae982b19f42f0b66d08b9eb306be81687869f"/>
|
||||
<project name="gonk-misc" path="gonk-misc" remote="b2g" revision="c490ae41c67f892232599f4ef049467a922b613e"/>
|
||||
<project name="librecovery" path="librecovery" remote="b2g" revision="1b3591a50ed352fc6ddb77462b7b35d0bfa555a3"/>
|
||||
@ -23,7 +23,7 @@
|
||||
<project name="rilproxy" path="rilproxy" remote="b2g" revision="5ef30994f4778b4052e58a4383dbe7890048c87e"/>
|
||||
<project name="valgrind" path="external/valgrind" remote="b2g" revision="daa61633c32b9606f58799a3186395fd2bbb8d8c"/>
|
||||
<project name="vex" path="external/VEX" remote="b2g" revision="47f031c320888fe9f3e656602588565b52d43010"/>
|
||||
<project name="apitrace" path="external/apitrace" remote="apitrace" revision="cfa80d0c1c13a13a64b049173ea3a1d605f2cffd"/>
|
||||
<project name="apitrace" path="external/apitrace" remote="apitrace" revision="7d810e5c522d146a3ee6d13b9422110119a3689f"/>
|
||||
<!-- Stock Android things -->
|
||||
<project groups="pdk,linux" name="platform/prebuilts/clang/linux-x86/host/3.5" path="prebuilts/clang/linux-x86/host/3.5" revision="ffc05a232799fe8fcb3e47b7440b52b1fb4244c0"/>
|
||||
<project groups="pdk,linux,arm" name="platform/prebuilts/gcc/linux-x86/aarch64/aarch64-linux-android-4.8" path="prebuilts/gcc/linux-x86/aarch64/aarch64-linux-android-4.8" revision="337e0ef5e40f02a1ae59b90db0548976c70a7226"/>
|
||||
|
@ -194,7 +194,7 @@ def append_signatures(d, sigs):
|
||||
def generate_file_content(signatures):
|
||||
output = []
|
||||
for s in sorted(signatures.keys()):
|
||||
archs = set(signatures[s])
|
||||
archs = set(sorted(signatures[s]))
|
||||
if len(archs.symmetric_difference(architecture_independent)) == 0:
|
||||
output.append(s + ';\n')
|
||||
if s.startswith('inline'):
|
||||
|
@ -119,6 +119,11 @@ public:
|
||||
return mNextDriver || mPreviousDriver;
|
||||
}
|
||||
|
||||
GraphDriver* NextDriver()
|
||||
{
|
||||
return mNextDriver;
|
||||
}
|
||||
|
||||
/**
|
||||
* If we are running a real time graph, get the current time stamp to schedule
|
||||
* video frames. This has to be reimplemented by real time drivers.
|
||||
|
@ -3420,15 +3420,21 @@ MediaStreamGraphImpl::ApplyAudioContextOperationImpl(AudioNodeStream* aStream,
|
||||
// If we have suspended the last AudioContext, and we don't have other
|
||||
// streams that have audio, this graph will automatically switch to a
|
||||
// SystemCallbackDriver, because it can't find a MediaStream that has an audio
|
||||
// track. When resuming, force switching to an AudioCallbackDriver. It would
|
||||
// have happened at the next iteration anyways, but doing this now save
|
||||
// some time.
|
||||
// track. When resuming, force switching to an AudioCallbackDriver (if we're
|
||||
// not already switching). It would have happened at the next iteration
|
||||
// anyways, but doing this now save some time.
|
||||
if (aOperation == AudioContextOperation::Resume) {
|
||||
if (!CurrentDriver()->AsAudioCallbackDriver()) {
|
||||
AudioCallbackDriver* driver = new AudioCallbackDriver(this);
|
||||
AudioCallbackDriver* driver;
|
||||
if (CurrentDriver()->Switching()) {
|
||||
MOZ_ASSERT(CurrentDriver()->NextDriver()->AsAudioCallbackDriver());
|
||||
driver = CurrentDriver()->NextDriver()->AsAudioCallbackDriver();
|
||||
} else {
|
||||
driver = new AudioCallbackDriver(this);
|
||||
mMixer.AddCallback(driver);
|
||||
CurrentDriver()->SwitchAtNextIteration(driver);
|
||||
}
|
||||
driver->EnqueueStreamAndPromiseForOperation(aStream, aPromise, aOperation);
|
||||
mMixer.AddCallback(driver);
|
||||
CurrentDriver()->SwitchAtNextIteration(driver);
|
||||
} else {
|
||||
// We are resuming a context, but we are already using an
|
||||
// AudioCallbackDriver, we can resolve the promise now.
|
||||
@ -3456,9 +3462,14 @@ MediaStreamGraphImpl::ApplyAudioContextOperationImpl(AudioNodeStream* aStream,
|
||||
CurrentDriver()->AsAudioCallbackDriver()->
|
||||
EnqueueStreamAndPromiseForOperation(aStream, aPromise, aOperation);
|
||||
|
||||
SystemClockDriver* driver = new SystemClockDriver(this);
|
||||
mMixer.RemoveCallback(CurrentDriver()->AsAudioCallbackDriver());
|
||||
CurrentDriver()->SwitchAtNextIteration(driver);
|
||||
SystemClockDriver* driver;
|
||||
if (CurrentDriver()->NextDriver()) {
|
||||
MOZ_ASSERT(!CurrentDriver()->NextDriver()->AsAudioCallbackDriver());
|
||||
} else {
|
||||
driver = new SystemClockDriver(this);
|
||||
mMixer.RemoveCallback(CurrentDriver()->AsAudioCallbackDriver());
|
||||
CurrentDriver()->SwitchAtNextIteration(driver);
|
||||
}
|
||||
} else {
|
||||
// We are closing or suspending an AudioContext, but something else is
|
||||
// using the audio stream, we can resolve the promise now.
|
||||
|
@ -85,6 +85,7 @@ MOCHITEST_MANIFESTS += [
|
||||
if CONFIG['MOZ_WEBRTC']:
|
||||
MOCHITEST_MANIFESTS += ['tests/mochitest/mochitest.ini']
|
||||
WEBRTC_SIGNALLING_TEST_MANIFESTS += ['tests/mochitest/steeplechase.ini']
|
||||
WEBRTC_SIGNALLING_TEST_MANIFESTS += ['tests/mochitest/steeplechase_long/steeplechase_long.ini']
|
||||
|
||||
XPIDL_SOURCES += [
|
||||
'nsIDOMNavigatorUserMedia.idl',
|
||||
|
@ -0,0 +1,5 @@
|
||||
<script>
|
||||
var ac = new AudioContext();
|
||||
ac.resume();
|
||||
ac.resume();
|
||||
</script>
|
@ -80,6 +80,7 @@ load 1158427.html
|
||||
load 1157994.html
|
||||
load 1122218.html
|
||||
load 1127188.html
|
||||
load audiocontext-double-suspend.html
|
||||
include ../../mediasource/test/crashtests/crashtests.list
|
||||
|
||||
# This needs to run at the end to avoid leaking busted state into other tests.
|
||||
|
@ -1,11 +1,11 @@
|
||||
[DEFAULT]
|
||||
support-files =
|
||||
head.js
|
||||
long.js
|
||||
mediaStreamPlayback.js
|
||||
pc.js
|
||||
templates.js
|
||||
turnConfig.js
|
||||
../head.js
|
||||
../mediaStreamPlayback.js
|
||||
../pc.js
|
||||
../templates.js
|
||||
../turnConfig.js
|
||||
|
||||
[test_peerConnection_basicAudio_long.html]
|
||||
[test_peerConnection_basicVideo_long.html]
|
@ -37,9 +37,11 @@ SharedPlanarYCbCrImage::~SharedPlanarYCbCrImage() {
|
||||
|
||||
if (mCompositable->GetAsyncID() != 0 &&
|
||||
!InImageBridgeChildThread()) {
|
||||
ADDREF_MANUALLY(mTextureClient);
|
||||
ImageBridgeChild::DispatchReleaseTextureClient(mTextureClient);
|
||||
mTextureClient = nullptr;
|
||||
if (mTextureClient) {
|
||||
ADDREF_MANUALLY(mTextureClient);
|
||||
ImageBridgeChild::DispatchReleaseTextureClient(mTextureClient);
|
||||
mTextureClient = nullptr;
|
||||
}
|
||||
|
||||
ImageBridgeChild::DispatchReleaseImageClient(mCompositable.forget().take());
|
||||
}
|
||||
|
@ -1689,6 +1689,30 @@ bool DoesD3D11DeviceWork(ID3D11Device *device)
|
||||
return true;
|
||||
}
|
||||
|
||||
static void
|
||||
CheckForAdapterMismatch(ID3D11Device *device)
|
||||
{
|
||||
nsRefPtr<IDXGIDevice> dxgiDevice;
|
||||
if (FAILED(device->QueryInterface(__uuidof(IDXGIDevice),
|
||||
getter_AddRefs(dxgiDevice)))) {
|
||||
return;
|
||||
}
|
||||
nsRefPtr<IDXGIAdapter> dxgiAdapter;
|
||||
if (FAILED(dxgiDevice->GetAdapter(getter_AddRefs(dxgiAdapter)))) {
|
||||
return;
|
||||
}
|
||||
nsCOMPtr<nsIGfxInfo> gfxInfo = services::GetGfxInfo();
|
||||
nsString vendorID;
|
||||
gfxInfo->GetAdapterVendorID(vendorID);
|
||||
nsresult ec;
|
||||
int32_t vendor = vendorID.ToInteger(&ec, 16);
|
||||
DXGI_ADAPTER_DESC desc;
|
||||
dxgiAdapter->GetDesc(&desc);
|
||||
if (vendor != desc.VendorId) {
|
||||
gfxCriticalNote << "VendorIDMismatch " << hexa(vendor) << " " << hexa(desc.VendorId);
|
||||
}
|
||||
}
|
||||
|
||||
void CheckIfRenderTargetViewNeedsRecreating(ID3D11Device *device)
|
||||
{
|
||||
nsRefPtr<ID3D11DeviceContext> deviceContext;
|
||||
@ -1758,6 +1782,9 @@ void CheckIfRenderTargetViewNeedsRecreating(ID3D11Device *device)
|
||||
}
|
||||
|
||||
keyedMutex->ReleaseSync(0);
|
||||
|
||||
// It seems like this may only happen when we're using the NVIDIA gpu
|
||||
CheckForAdapterMismatch(device);
|
||||
}
|
||||
|
||||
|
||||
|
15
js/src/jit-test/tests/ion/bug1143679.js
Normal file
15
js/src/jit-test/tests/ion/bug1143679.js
Normal file
@ -0,0 +1,15 @@
|
||||
// |jit-test| error:98
|
||||
function foo() {
|
||||
function gen() {
|
||||
try {
|
||||
yield 1;
|
||||
} finally {
|
||||
throw 98;
|
||||
}
|
||||
}
|
||||
for (i in gen()) {
|
||||
for each (var i in this)
|
||||
return false;
|
||||
}
|
||||
}
|
||||
foo();
|
12
js/src/jit-test/tests/ion/bug1160884.js
Normal file
12
js/src/jit-test/tests/ion/bug1160884.js
Normal file
@ -0,0 +1,12 @@
|
||||
function foo(date) {
|
||||
var F = date.split(" ");
|
||||
var D = F[0].split("-");
|
||||
var C = F[1].split(":");
|
||||
return new Date(D[0], D[1], D[2], C[0], C[1], C[2]);
|
||||
}
|
||||
function test() {
|
||||
with(this) {};
|
||||
for (var i = 0; i < 1200; i++)
|
||||
foo("13-5-2015 18:30:" + i);
|
||||
}
|
||||
test();
|
@ -4103,10 +4103,11 @@ MNewArray::MNewArray(CompilerConstraintList* constraints, uint32_t count, MConst
|
||||
{
|
||||
setResultType(MIRType_Object);
|
||||
if (templateObject()) {
|
||||
TemporaryTypeSet* types = MakeSingletonTypeSet(constraints, templateObject());
|
||||
setResultTypeSet(types);
|
||||
if (types->convertDoubleElements(constraints) == TemporaryTypeSet::AlwaysConvertToDoubles)
|
||||
convertDoubleElements_ = true;
|
||||
if (TemporaryTypeSet* types = MakeSingletonTypeSet(constraints, templateObject())) {
|
||||
setResultTypeSet(types);
|
||||
if (types->convertDoubleElements(constraints) == TemporaryTypeSet::AlwaysConvertToDoubles)
|
||||
convertDoubleElements_ = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -1541,6 +1541,13 @@ already_AddRefed<LayerManager> nsDisplayList::PaintRoot(nsDisplayListBuilder* aB
|
||||
props = Move(LayerProperties::CloneFrom(layerManager->GetRoot()));
|
||||
}
|
||||
|
||||
// Clear any FrameMetrics that may have been set on the root layer on a
|
||||
// previous paint. This paint will set new metrics if necessary, and if we
|
||||
// don't clear the old one here, we may be left with extra metrics.
|
||||
if (Layer* root = layerManager->GetRoot()) {
|
||||
root->SetFrameMetrics(nsTArray<FrameMetrics>());
|
||||
}
|
||||
|
||||
ContainerLayerParameters containerParameters
|
||||
(presShell->GetResolution(), presShell->GetResolution());
|
||||
nsRefPtr<ContainerLayer> root = layerBuilder->
|
||||
@ -1616,9 +1623,6 @@ already_AddRefed<LayerManager> nsDisplayList::PaintRoot(nsDisplayListBuilder* aB
|
||||
aBuilder->FindReferenceFrameFor(frame),
|
||||
root, FrameMetrics::NULL_SCROLL_ID, viewport, Nothing(),
|
||||
isRootContent, containerParameters));
|
||||
} else {
|
||||
// Set empty metrics to clear any metrics that might be on a recycled layer.
|
||||
root->SetFrameMetrics(nsTArray<FrameMetrics>());
|
||||
}
|
||||
|
||||
// NS_WARNING is debug-only, so don't even bother checking the conditions in
|
||||
|
@ -30,7 +30,7 @@ interface nsIURIClassifierCallback : nsISupports
|
||||
* The URI classifier service checks a URI against lists of phishing
|
||||
* and malware sites.
|
||||
*/
|
||||
[scriptable, uuid(750c4313-f689-4a4c-87c2-a04710a2395b)]
|
||||
[scriptable, uuid(9168a330-7fba-40e8-9c47-4ce8f15a57fd)]
|
||||
interface nsIURIClassifier : nsISupports
|
||||
{
|
||||
/**
|
||||
@ -55,14 +55,6 @@ interface nsIURIClassifier : nsISupports
|
||||
in boolean aTrackingProtectionEnabled,
|
||||
in nsIURIClassifierCallback aCallback);
|
||||
|
||||
/**
|
||||
* Synchronously classify a Principal locally using its URI. This does not
|
||||
* make network requests. The result is an error code with which the channel
|
||||
* should be cancelled, or NS_OK if no result was found.
|
||||
*/
|
||||
nsresult classifyLocal(in nsIPrincipal aPrincipal,
|
||||
in boolean aTrackingProtectionEnabled);
|
||||
|
||||
/**
|
||||
* Synchronously classify a Principal locally using its URI with a
|
||||
* comma-separated string containing the given tables. This does not make
|
||||
|
@ -5037,23 +5037,27 @@ nsHttpChannel::BeginConnect()
|
||||
if (mLoadFlags & LOAD_CLASSIFY_URI) {
|
||||
nsCOMPtr<nsIURIClassifier> classifier = do_GetService(NS_URICLASSIFIERSERVICE_CONTRACTID);
|
||||
if (classifier) {
|
||||
bool tp = false;
|
||||
channelClassifier->ShouldEnableTrackingProtection(this, &tp);
|
||||
bool tpEnabled = false;
|
||||
channelClassifier->ShouldEnableTrackingProtection(this, &tpEnabled);
|
||||
// We skip speculative connections by setting mLocalBlocklist only
|
||||
// when tracking protection is enabled. Though we could do this for
|
||||
// both phishing and malware, it is not necessary for correctness,
|
||||
// since no network events will be received while the
|
||||
// nsChannelClassifier is in progress. See bug 1122691.
|
||||
if (tp) {
|
||||
if (tpEnabled) {
|
||||
nsCOMPtr<nsIPrincipal> principal = GetURIPrincipal();
|
||||
nsresult response = NS_OK;
|
||||
classifier->ClassifyLocal(principal, tp, &response);
|
||||
if (NS_FAILED(response)) {
|
||||
LOG(("nsHttpChannel::ClassifyLocal found principal on local "
|
||||
"blocklist [this=%p]", this));
|
||||
nsAutoCString tables;
|
||||
Preferences::GetCString("urlclassifier.trackingTable", &tables);
|
||||
nsAutoCString results;
|
||||
rv = classifier->ClassifyLocalWithTables(principal, tables, results);
|
||||
if (NS_SUCCEEDED(rv) && !results.IsEmpty()) {
|
||||
LOG(("nsHttpChannel::ClassifyLocalWithTables found "
|
||||
"principal on local tracking blocklist [this=%p]",
|
||||
this));
|
||||
mLocalBlocklist = true;
|
||||
} else {
|
||||
LOG(("nsHttpChannel::ClassifyLocal no result found [this=%p]", this));
|
||||
LOG(("nsHttpChannel::ClassifyLocalWithTables no result "
|
||||
"found [this=%p]", this));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -16,9 +16,9 @@ import sys
|
||||
from io import BytesIO
|
||||
|
||||
from buildconfig import topsrcdir
|
||||
from header import print_header
|
||||
from typelib import write_typelib
|
||||
from xpidl import IDLParser
|
||||
from xpidl.header import print_header
|
||||
from xpidl.typelib import write_typelib
|
||||
from xpidl.xpidl import IDLParser
|
||||
from xpt import xpt_link
|
||||
|
||||
from mozbuild.makeutil import Makefile
|
||||
|
@ -21,6 +21,10 @@ __all__ = ['parse', 'ParseError', 'ExpressionParser']
|
||||
# | expr '||' expr
|
||||
# | expr '==' expr
|
||||
# | expr '!=' expr
|
||||
# | expr '<' expr
|
||||
# | expr '>' expr
|
||||
# | expr '<=' expr
|
||||
# | expr '>=' expr
|
||||
# literal := BOOL
|
||||
# | INT
|
||||
# | STRING
|
||||
@ -63,6 +67,26 @@ class neq_op_token(object):
|
||||
def led(self, parser, left):
|
||||
return left != parser.expression(self.lbp)
|
||||
|
||||
class lt_op_token(object):
|
||||
"<"
|
||||
def led(self, parser, left):
|
||||
return left < parser.expression(self.lbp)
|
||||
|
||||
class gt_op_token(object):
|
||||
">"
|
||||
def led(self, parser, left):
|
||||
return left > parser.expression(self.lbp)
|
||||
|
||||
class le_op_token(object):
|
||||
"<="
|
||||
def led(self, parser, left):
|
||||
return left <= parser.expression(self.lbp)
|
||||
|
||||
class ge_op_token(object):
|
||||
">="
|
||||
def led(self, parser, left):
|
||||
return left >= parser.expression(self.lbp)
|
||||
|
||||
class not_op_token(object):
|
||||
"!"
|
||||
def nud(self, parser):
|
||||
@ -111,7 +135,8 @@ class string_token(literal_token):
|
||||
precedence = [(end_token, rparen_token),
|
||||
(or_op_token,),
|
||||
(and_op_token,),
|
||||
(eq_op_token, neq_op_token),
|
||||
(lt_op_token, gt_op_token, le_op_token, ge_op_token,
|
||||
eq_op_token, neq_op_token),
|
||||
(lparen_token,),
|
||||
]
|
||||
for index, rank in enumerate(precedence):
|
||||
@ -128,7 +153,7 @@ class ExpressionParser(object):
|
||||
The expression language can be described as follows::
|
||||
|
||||
EXPRESSION ::= LITERAL | '(' EXPRESSION ')' | '!' EXPRESSION | EXPRESSION OP EXPRESSION
|
||||
OP ::= '==' | '!=' | '&&' | '||'
|
||||
OP ::= '==' | '!=' | '<' | '>' | '<=' | '>=' | '&&' | '||'
|
||||
LITERAL ::= BOOL | INT | IDENT | STRING
|
||||
BOOL ::= 'true' | 'false'
|
||||
INT ::= [0-9]+
|
||||
@ -179,6 +204,10 @@ class ExpressionParser(object):
|
||||
(r'("[^"]*")|(\'[^\']*\')', string_token),
|
||||
(r"==", eq_op_token()),
|
||||
(r"!=", neq_op_token()),
|
||||
(r"<=", le_op_token()),
|
||||
(r">=", ge_op_token()),
|
||||
(r"<", lt_op_token()),
|
||||
(r">", gt_op_token()),
|
||||
(r"\|\|", or_op_token()),
|
||||
(r"!", not_op_token()),
|
||||
(r"&&", and_op_token()),
|
||||
|
@ -91,5 +91,62 @@ class ExpressionParserTest(unittest.TestCase):
|
||||
self.assertFalse(parse("!true && true"))
|
||||
self.assertFalse(parse("true && !true"))
|
||||
|
||||
def test_lesser_than(self):
|
||||
"""
|
||||
Test the < operator.
|
||||
"""
|
||||
self.assertTrue(parse("1 < 2"))
|
||||
self.assertFalse(parse("3 < 2"))
|
||||
self.assertTrue(parse("false || (1 < 2)"))
|
||||
self.assertTrue(parse("1 < 2 && true"))
|
||||
self.assertTrue(parse("true && 1 < 2"))
|
||||
self.assertTrue(parse("!(5 < 1)"))
|
||||
self.assertTrue(parse("'abc' < 'def'"))
|
||||
self.assertFalse(parse("1 < 1"))
|
||||
self.assertFalse(parse("'abc' < 'abc'"))
|
||||
|
||||
def test_greater_than(self):
|
||||
"""
|
||||
Test the > operator.
|
||||
"""
|
||||
self.assertTrue(parse("2 > 1"))
|
||||
self.assertFalse(parse("2 > 3"))
|
||||
self.assertTrue(parse("false || (2 > 1)"))
|
||||
self.assertTrue(parse("2 > 1 && true"))
|
||||
self.assertTrue(parse("true && 2 > 1"))
|
||||
self.assertTrue(parse("!(1 > 5)"))
|
||||
self.assertTrue(parse("'def' > 'abc'"))
|
||||
self.assertFalse(parse("1 > 1"))
|
||||
self.assertFalse(parse("'abc' > 'abc'"))
|
||||
|
||||
def test_lesser_or_equals_than(self):
|
||||
"""
|
||||
Test the <= operator.
|
||||
"""
|
||||
self.assertTrue(parse("1 <= 2"))
|
||||
self.assertFalse(parse("3 <= 2"))
|
||||
self.assertTrue(parse("false || (1 <= 2)"))
|
||||
self.assertTrue(parse("1 < 2 && true"))
|
||||
self.assertTrue(parse("true && 1 <= 2"))
|
||||
self.assertTrue(parse("!(5 <= 1)"))
|
||||
self.assertTrue(parse("'abc' <= 'def'"))
|
||||
self.assertTrue(parse("1 <= 1"))
|
||||
self.assertTrue(parse("'abc' <= 'abc'"))
|
||||
|
||||
def test_greater_or_equals_than(self):
|
||||
"""
|
||||
Test the > operator.
|
||||
"""
|
||||
self.assertTrue(parse("2 >= 1"))
|
||||
self.assertFalse(parse("2 >= 3"))
|
||||
self.assertTrue(parse("false || (2 >= 1)"))
|
||||
self.assertTrue(parse("2 >= 1 && true"))
|
||||
self.assertTrue(parse("true && 2 >= 1"))
|
||||
self.assertTrue(parse("!(1 >= 5)"))
|
||||
self.assertTrue(parse("'def' >= 'abc'"))
|
||||
self.assertTrue(parse("1 >= 1"))
|
||||
self.assertTrue(parse("'abc' >= 'abc'"))
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
unittest.main()
|
||||
|
@ -1228,22 +1228,6 @@ nsUrlClassifierDBService::Classify(nsIPrincipal* aPrincipal,
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
NS_IMETHODIMP
|
||||
nsUrlClassifierDBService::ClassifyLocal(nsIPrincipal* aPrincipal,
|
||||
bool aTrackingProtectionEnabled,
|
||||
nsresult* aResponse)
|
||||
{
|
||||
MOZ_ASSERT(NS_IsMainThread(), "ClassifyLocal must be on main thread");
|
||||
*aResponse = NS_OK;
|
||||
nsAutoCString tables;
|
||||
BuildTables(aTrackingProtectionEnabled, tables);
|
||||
nsAutoCString results;
|
||||
nsresult rv = ClassifyLocalWithTables(aPrincipal, tables, results);
|
||||
NS_ENSURE_SUCCESS(rv, rv);
|
||||
*aResponse = TablesToResponse(results);
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
NS_IMETHODIMP
|
||||
nsUrlClassifierDBService::ClassifyLocalWithTables(nsIPrincipal *aPrincipal,
|
||||
const nsACString & aTables,
|
||||
|
15
xpcom/idl-parser/setup.py
Normal file
15
xpcom/idl-parser/setup.py
Normal file
@ -0,0 +1,15 @@
|
||||
from setuptools import setup, find_packages
|
||||
|
||||
|
||||
setup(
|
||||
name='xpidl',
|
||||
version='1.0',
|
||||
description='Parser and header generator for xpidl files.',
|
||||
author='Mozilla Foundation',
|
||||
license='MPL 2.0',
|
||||
packages=find_packages(),
|
||||
install_requires=['ply>=3.6,<4.0'],
|
||||
url='https://github.com/pelmers/xpidl',
|
||||
entry_points={'console_scripts': ['header.py = xpidl.header:main']},
|
||||
keywords=['xpidl', 'parser']
|
||||
)
|
0
xpcom/idl-parser/xpidl/__init__.py
Normal file
0
xpcom/idl-parser/xpidl/__init__.py
Normal file
@ -501,7 +501,8 @@ def write_interface(iface, fd):
|
||||
|
||||
fd.write(iface_template_epilog)
|
||||
|
||||
if __name__ == '__main__':
|
||||
|
||||
def main():
|
||||
from optparse import OptionParser
|
||||
o = OptionParser()
|
||||
o.add_option('-I', action='append', dest='incdirs', default=['.'],
|
||||
@ -569,3 +570,6 @@ if __name__ == '__main__':
|
||||
print >>depfd, "%s: %s" % (options.outfile, " ".join(deps))
|
||||
for dep in deps:
|
||||
print >>depfd, "%s:" % dep
|
||||
|
||||
if __name__ == '__main__':
|
||||
main()
|
@ -8,7 +8,7 @@ with Files('**'):
|
||||
BUG_COMPONENT = ('Core', 'XPCOM')
|
||||
|
||||
DIRS += [
|
||||
'idl-parser',
|
||||
'idl-parser/xpidl',
|
||||
]
|
||||
|
||||
DIRS += [
|
||||
|
@ -4,7 +4,7 @@
|
||||
|
||||
export::
|
||||
ifndef LIBXUL_SDK
|
||||
$(call SUBMAKE,xpidl-parser,$(DEPTH)/xpcom/idl-parser)
|
||||
$(call SUBMAKE,xpidl-parser,$(DEPTH)/xpcom/idl-parser/xpidl)
|
||||
endif
|
||||
$(call py_action,process_install_manifest,$(DIST)/idl $(DEPTH)/_build_manifests/install/dist_idl)
|
||||
$(call SUBMAKE,xpidl,$(DEPTH)/config/makefiles/xpidl)
|
||||
|
Loading…
Reference in New Issue
Block a user