diff --git a/browser/components/extensions/test/browser/browser-common.ini b/browser/components/extensions/test/browser/browser-common.ini
index 1ae78777aba3..55e11d30d7af 100644
--- a/browser/components/extensions/test/browser/browser-common.ini
+++ b/browser/components/extensions/test/browser/browser-common.ini
@@ -60,7 +60,7 @@ skip-if = (debug && os == 'linux' && bits == 32) || (os == 'win' && !debug) # Bu
[browser_ext_browserAction_popup_preload.js]
skip-if = (os == 'win' && !debug) || (verify && debug && (os == 'mac')) # bug 1352668
[browser_ext_browserAction_popup_resize.js]
-skip-if = (os == 'mac' && debug) # Bug 1482004, also fails in test-verify
+skip-if = (os == 'mac' || os == 'win' || os == 'linux') || (verify && debug) #Bug 1482004,1483701
[browser_ext_browserAction_simple.js]
[browser_ext_browserAction_telemetry.js]
[browser_ext_browserAction_theme_icons.js]
diff --git a/build/moz.configure/toolchain.configure b/build/moz.configure/toolchain.configure
index 16f59691db5d..b95ea3eb70e0 100755
--- a/build/moz.configure/toolchain.configure
+++ b/build/moz.configure/toolchain.configure
@@ -757,26 +757,14 @@ def vc_compiler_path(host, target, vs_major_version, env, vs_release_name):
return paths
-@dependable
-@imports(_from='os', _import='environ')
-def original_path():
- return environ['PATH']
-
-
-@depends(vc_compiler_path, original_path)
+@depends(vc_compiler_path)
@imports('os')
@imports(_from='os', _import='environ')
-def toolchain_search_path(vc_compiler_path, original_path):
- result = [original_path]
+def toolchain_search_path(vc_compiler_path):
+ result = [environ.get('PATH')]
if vc_compiler_path:
- # The second item, if there is one, is necessary to have in $PATH for
- # Windows to load the required DLLs from there.
- if len(vc_compiler_path) > 1:
- environ['PATH'] = os.pathsep.join(result + vc_compiler_path[1:])
-
- # The first item is where the programs are going to be
- result.append(vc_compiler_path[0])
+ result.extend(vc_compiler_path)
# Also add in the location to which `mach bootstrap` or
# `mach artifact toolchain` installs clang.
@@ -788,25 +776,15 @@ def toolchain_search_path(vc_compiler_path, original_path):
bootstrap_cbindgen_path = os.path.join(mozbuild_state_dir, 'cbindgen')
result.append(bootstrap_cbindgen_path)
+ if vc_compiler_path:
+ # We're going to alter PATH for good in windows.configure, but we also
+ # need to do it for the valid_compiler() check below. This is only needed
+ # on Windows, where MSVC needs PATH set to find dlls.
+ environ['PATH'] = os.pathsep.join(result)
+
return result
-# If we modified the PATH environment variable for Windows DLLs, set the PATH
-# variable for the build.
-@depends(toolchain_search_path, original_path)
-@imports(_from='os', _import='environ')
-def altered_path(toolchain_search_path, original_path):
- # Touch the dependency for the linter. We don't actually need the value,
- # only its side effects.
- toolchain_search_path
-
- if environ['PATH'] != original_path:
- return environ['PATH']
-
-
-set_config('PATH', altered_path)
-
-
@template
def default_c_compilers(host_or_target, other_c_compiler=None):
'''Template defining the set of default C compilers for the host and
@@ -1021,6 +999,26 @@ def compiler(language, host_or_target, c_compiler=None, other_compiler=None,
if not flags and macos_sdk and host_or_target.os == 'OSX':
flags = ['-isysroot', macos_sdk]
+ # Ideally, we'd always use the absolute path, but unfortunately, on
+ # Windows, the compiler is very often in a directory containing spaces.
+ # Unfortunately, due to the way autoconf does its compiler tests with
+ # eval, that doesn't work out. So in that case, check that the
+ # compiler can still be found in $PATH, and use the file name instead
+ # of the full path.
+ if quote(compiler) != compiler:
+ full_path = os.path.abspath(compiler)
+ compiler = os.path.basename(compiler)
+ found_compiler = find_program(compiler)
+ if not found_compiler:
+ die('%s is not in your $PATH'
+ % quote(os.path.dirname(full_path)))
+ if os.path.normcase(find_program(compiler)) != os.path.normcase(
+ full_path):
+ die('Found `%s` before `%s` in your $PATH. '
+ 'Please reorder your $PATH.',
+ quote(os.path.dirname(found_compiler)),
+ quote(os.path.dirname(full_path)))
+
info = check_compiler(wrapper + [compiler] + flags, language,
host_or_target)
@@ -1467,8 +1465,7 @@ set_config('PROFILE_USE_CFLAGS', pgo_flags.use_cflags)
set_config('PROFILE_USE_LDFLAGS', pgo_flags.use_ldflags)
llvm_profdata = check_prog('LLVM_PROFDATA', ['llvm-profdata'],
- allow_missing=True,
- paths=toolchain_search_path)
+ allow_missing=True)
add_old_configure_assignment('LLVM_PROFDATA', llvm_profdata)
@@ -1960,8 +1957,7 @@ def as_info(target, c_compiler):
# `provided_compiler`.
provided_assembler = provided_program('AS')
assembler = check_prog('_AS', input=provided_assembler.program,
- what='the assembler', progs=as_info.names,
- paths=toolchain_search_path)
+ what='the assembler', progs=as_info.names)
@depends(as_info, assembler, provided_assembler, c_compiler)
def as_with_flags(as_info, assembler, provided_assembler, c_compiler):
diff --git a/build/moz.configure/windows.configure b/build/moz.configure/windows.configure
index a2ea2bffeaec..a57618fc10ac 100644
--- a/build/moz.configure/windows.configure
+++ b/build/moz.configure/windows.configure
@@ -256,9 +256,9 @@ def valid_ucrt_sdk_dir(windows_sdk_dir, windows_sdk_dir_env, c_compiler):
)
-@depends(c_compiler, toolchain_search_path)
+@depends(c_compiler)
@imports('os')
-def vc_path(c_compiler, toolchain_search_path):
+def vc_path(c_compiler):
vc_path_env = os.environ.get('VC_PATH')
if vc_path_env:
return os.path.normpath(vc_path_env)
@@ -266,13 +266,17 @@ def vc_path(c_compiler, toolchain_search_path):
if c_compiler.type not in ('msvc', 'clang-cl'):
return
+ # Normally, we'd start from c_compiler.compiler, but for now, it's not the
+ # ideal full path to the compiler. At least, we're guaranteed find_program
+ # will get us the one we found in toolchain.configure.
vc_program = c_compiler.compiler
# In clang-cl builds, we use the headers and libraries from an MSVC installation.
if c_compiler.type == 'clang-cl':
- vc_program = find_program('cl.exe', paths=toolchain_search_path)
+ vc_program = 'cl.exe'
- result = os.path.dirname(vc_program)
+ cl = find_program(vc_program)
+ result = os.path.dirname(cl)
while True:
next, p = os.path.split(result)
if next == result:
@@ -464,6 +468,20 @@ host_link = check_prog('HOST_LINKER', ('lld-link.exe', 'link.exe'),
add_old_configure_assignment('LINKER', link)
+# Normally, we'd just have CC, etc. set to absolute paths, but the build system
+# doesn't currently handle properly the case where the paths contain spaces.
+# Additionally, there's the issue described in toolchain.configure, in
+# valid_compiler().
+@depends(sdk_bin_path)
+@imports('os')
+def alter_path(sdk_bin_path):
+ path = os.pathsep.join(sdk_bin_path)
+ os.environ['PATH'] = path
+ return path
+
+
+set_config('PATH', alter_path)
+
check_prog('MAKECAB', ('makecab.exe',))
diff --git a/build/win64-aarch64/mozconfig.vs2017 b/build/win64-aarch64/mozconfig.vs2017
index e7ba53ed4342..1e0ad5ef55b1 100644
--- a/build/win64-aarch64/mozconfig.vs2017
+++ b/build/win64-aarch64/mozconfig.vs2017
@@ -45,10 +45,3 @@ if [ -d "${VSPATH}" ]; then
fi
. $topsrcdir/build/mozconfig.vs-common
-
-mk_export_correct_style WINDOWSSDKDIR
-mk_export_correct_style WIN32_REDIST_DIR
-mk_export_correct_style WIN_DIA_SDK_BIN_DIR
-mk_export_correct_style PATH
-mk_export_correct_style INCLUDE
-mk_export_correct_style LIB
diff --git a/devtools/client/debugger/new/test/mochitest/browser.ini b/devtools/client/debugger/new/test/mochitest/browser.ini
index 1bf51600fe1b..549ead677bfd 100644
--- a/devtools/client/debugger/new/test/mochitest/browser.ini
+++ b/devtools/client/debugger/new/test/mochitest/browser.ini
@@ -592,6 +592,7 @@ support-files =
examples/fetch.js
examples/doc-xhr.html
examples/doc-xhr-run-to-completion.html
+ examples/doc-scroll-run-to-completion.html
examples/sum/sum.js
examples/sum/sum.min.js
examples/sum/sum.min.js.map
@@ -650,6 +651,8 @@ support-files =
examples/script-switching-02.js
examples/script-switching-01.js
examples/times2.js
+ examples/doc-windowless-workers.html
+ examples/simple-worker.js
examples/doc_rr_basic.html
examples/doc_rr_continuous.html
examples/doc_rr_logs.html
@@ -662,6 +665,7 @@ support-files =
skip-if = (os == "win" && ccov) # Bug 1453549
[browser_dbg-xhr-breakpoints.js]
[browser_dbg-xhr-run-to-completion.js]
+[browser_dbg-scroll-run-to-completion.js]
[browser_dbg-sourcemapped-scopes.js]
skip-if = ccov || (verify && debug && (os == 'linux')) # Bug 1441545
[browser_dbg-sourcemapped-stepping.js]
@@ -762,6 +766,7 @@ skip-if = os == "win"
skip-if = os == "win"
[browser_dbg-wasm-sourcemaps.js]
skip-if = true
+[browser_dbg-windowless-workers.js]
[browser_dbg_rr_breakpoints-01.js]
skip-if = os != "mac" || debug || !nightly_build
[browser_dbg_rr_breakpoints-02.js]
diff --git a/devtools/client/debugger/new/test/mochitest/browser_dbg-scroll-run-to-completion.js b/devtools/client/debugger/new/test/mochitest/browser_dbg-scroll-run-to-completion.js
new file mode 100644
index 000000000000..b2128c489013
--- /dev/null
+++ b/devtools/client/debugger/new/test/mochitest/browser_dbg-scroll-run-to-completion.js
@@ -0,0 +1,19 @@
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at . */
+
+add_task(async function() {
+ const dbg = await initDebugger("doc-scroll-run-to-completion.html");
+ invokeInTab("pauseOnce", "doc-scroll-run-to-completion.html");
+ await waitForPaused(dbg);
+ assertPausedLocation(dbg);
+
+ const threadClient = dbg.toolbox.threadClient;
+ await checkEvaluateInTopFrame(threadClient, 'window.scrollBy(0, 10);', undefined);
+
+ // checkEvaluateInTopFrame does an implicit resume for some reason.
+ await waitForPaused(dbg);
+
+ resume(dbg);
+ await once(Services.ppmm, "test passed");
+});
diff --git a/devtools/client/debugger/new/test/mochitest/browser_dbg-windowless-workers.js b/devtools/client/debugger/new/test/mochitest/browser_dbg-windowless-workers.js
new file mode 100644
index 000000000000..5610a28a4b05
--- /dev/null
+++ b/devtools/client/debugger/new/test/mochitest/browser_dbg-windowless-workers.js
@@ -0,0 +1,45 @@
+/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
+/* vim: set ft=javascript ts=2 et sw=2 tw=80: */
+/* Any copyright is dedicated to the Public Domain.
+ * http://creativecommons.org/publicdomain/zero/1.0/ */
+
+// Test basic windowless worker functionality: the main thread and worker can be
+// separately controlled from the same debugger.
+add_task(async function() {
+ await pushPref("devtools.debugger.features.windowless-workers", true);
+
+ const dbg = await initDebugger("doc-windowless-workers.html");
+ const mainThread = dbg.toolbox.threadClient.actor;
+
+ const workers = await getWorkers(dbg);
+ ok(workers.length == 1, "Got one worker");
+ const workerThread = workers[0].actor;
+
+ const mainThreadSource = findSource(dbg, "doc-windowless-workers.html");
+ const workerSource = findSource(dbg, "simple-worker.js");
+
+ assertNotPaused(dbg);
+
+ await dbg.actions.breakOnNext();
+ await waitForPaused(dbg, "doc-windowless-workers.html");
+
+ // We should be paused at the timer in doc-windowless-workers.html
+ assertPausedAtSourceAndLine(dbg, mainThreadSource.id, 9);
+
+ await dbg.actions.selectThread(workerThread);
+ assertNotPaused(dbg);
+
+ await dbg.actions.breakOnNext();
+ await waitForPaused(dbg, "simple-worker.js");
+
+ // We should be paused at the timer in simple-worker.js
+ assertPausedAtSourceAndLine(dbg, workerSource.id, 3);
+
+ await stepOver(dbg);
+ assertPausedAtSourceAndLine(dbg, workerSource.id, 4);
+
+ await dbg.actions.selectThread(mainThread);
+
+ await stepOver(dbg);
+ assertPausedAtSourceAndLine(dbg, mainThreadSource.id, 10);
+});
diff --git a/devtools/client/debugger/new/test/mochitest/examples/doc-scroll-run-to-completion.html b/devtools/client/debugger/new/test/mochitest/examples/doc-scroll-run-to-completion.html
new file mode 100644
index 000000000000..6cc7f123ab78
--- /dev/null
+++ b/devtools/client/debugger/new/test/mochitest/examples/doc-scroll-run-to-completion.html
@@ -0,0 +1,27 @@
+
+
+
+
+
diff --git a/devtools/client/debugger/new/test/mochitest/examples/doc-windowless-workers.html b/devtools/client/debugger/new/test/mochitest/examples/doc-windowless-workers.html
new file mode 100644
index 000000000000..d745e9921e2a
--- /dev/null
+++ b/devtools/client/debugger/new/test/mochitest/examples/doc-windowless-workers.html
@@ -0,0 +1,19 @@
+
+
+
+
+
+
+Hello World!
+
+
diff --git a/devtools/client/debugger/new/test/mochitest/examples/simple-worker.js b/devtools/client/debugger/new/test/mochitest/examples/simple-worker.js
new file mode 100644
index 000000000000..b9c806fa8f88
--- /dev/null
+++ b/devtools/client/debugger/new/test/mochitest/examples/simple-worker.js
@@ -0,0 +1,7 @@
+var count = 0;
+function timer() {
+ var n = ++count;
+ console.log("WORKER SAYS HELLO! " + n);
+}
+
+setInterval(timer, 1000);
diff --git a/devtools/client/debugger/new/test/mochitest/helpers.js b/devtools/client/debugger/new/test/mochitest/helpers.js
index b9d37fd55dae..242eef122303 100644
--- a/devtools/client/debugger/new/test/mochitest/helpers.js
+++ b/devtools/client/debugger/new/test/mochitest/helpers.js
@@ -405,6 +405,34 @@ function isPaused(dbg) {
return !!isPaused(getState());
}
+// Make sure the debugger is paused at a certain source ID and line.
+function assertPausedAtSourceAndLine(dbg, expectedSourceId, expectedLine) {
+ assertPaused(dbg);
+
+ const {
+ selectors: { getWorkers, getFrames },
+ getState
+ } = dbg;
+
+ const frames = getFrames(getState());
+ ok(frames.length >= 1, "Got at least one frame");
+ const { sourceId, line } = frames[0].location;
+ ok(sourceId == expectedSourceId, "Frame has correct source");
+ ok(line == expectedLine, "Frame has correct line");
+}
+
+// Get any workers associated with the debugger.
+async function getWorkers(dbg) {
+ await dbg.actions.updateWorkers();
+
+ const {
+ selectors: { getWorkers },
+ getState
+ } = dbg;
+
+ return getWorkers(getState()).toJS();
+}
+
async function waitForLoadedScopes(dbg) {
const scopes = await waitForElement(dbg, "scopes");
// Since scopes auto-expand, we can assume they are loaded when there is a tree node
diff --git a/devtools/client/webconsole/test/mochitest/browser.ini b/devtools/client/webconsole/test/mochitest/browser.ini
index d2fcb9780a79..c53fd2ef8bdc 100644
--- a/devtools/client/webconsole/test/mochitest/browser.ini
+++ b/devtools/client/webconsole/test/mochitest/browser.ini
@@ -168,7 +168,7 @@ support-files =
skip-if = true # Bug 1437843
[browser_console_consolejsm_output.js]
[browser_console_context_menu_entries.js]
-skip-if = (os == "linux" && (debug || ccov)) # Bug 1440059
+skip-if = os == "linux" # Bug 1440059, disabled for all build types
[browser_console_dead_objects.js]
[browser_console_devtools_loader_exception.js]
[browser_console_error_source_click.js]
diff --git a/dom/base/nsContentUtils.cpp b/dom/base/nsContentUtils.cpp
index a4cb043e8a46..99dc5b3d08e9 100644
--- a/dom/base/nsContentUtils.cpp
+++ b/dom/base/nsContentUtils.cpp
@@ -8202,7 +8202,7 @@ bool nsContentUtils::IsThirdPartyWindowOrChannel(nsPIDOMWindowInner* aWindow,
if (aWindow) {
nsresult rv = thirdPartyUtil->IsThirdPartyWindow(aWindow->GetOuterWindow(),
aURI, &thirdParty);
- if (NS_WARN_IF(NS_FAILED(rv))) {
+ if (NS_FAILED(rv)) {
// Ideally we would do something similar to the channel code path here,
// but existing code depends on this behaviour.
return false;
diff --git a/dom/html/test/mochitest.ini b/dom/html/test/mochitest.ini
index 85f38785d7d0..b122e3045f5f 100644
--- a/dom/html/test/mochitest.ini
+++ b/dom/html/test/mochitest.ini
@@ -536,7 +536,7 @@ skip-if = toolkit == 'android' #bug 811644
[test_bug340017.xhtml]
[test_bug359657.html]
[test_bug369370.html]
-skip-if = toolkit == "android" || toolkit == "windows" # disabled on Windows because of bug 1234520
+skip-if = toolkit == "android" || toolkit == "windows" || os == 'linux' # disabled on Windows because of bug 1234520, disabled on linux bug 1258103
[test_bug380383.html]
[test_bug402680.html]
[test_bug403868.html]
diff --git a/dom/smil/nsSMILFloatType.cpp b/dom/smil/SMILFloatType.cpp
similarity index 65%
rename from dom/smil/nsSMILFloatType.cpp
rename to dom/smil/SMILFloatType.cpp
index 78ba493aeb0e..46753d6acee4 100644
--- a/dom/smil/nsSMILFloatType.cpp
+++ b/dom/smil/SMILFloatType.cpp
@@ -4,51 +4,52 @@
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
-#include "nsSMILFloatType.h"
+#include "SMILFloatType.h"
#include "nsSMILValue.h"
#include "nsDebug.h"
#include
-void nsSMILFloatType::Init(nsSMILValue& aValue) const {
+namespace mozilla {
+
+void SMILFloatType::Init(nsSMILValue& aValue) const {
MOZ_ASSERT(aValue.IsNull(), "Unexpected value type");
aValue.mU.mDouble = 0.0;
aValue.mType = this;
}
-void nsSMILFloatType::Destroy(nsSMILValue& aValue) const {
+void SMILFloatType::Destroy(nsSMILValue& aValue) const {
MOZ_ASSERT(aValue.mType == this, "Unexpected SMIL value");
aValue.mU.mDouble = 0.0;
aValue.mType = nsSMILNullType::Singleton();
}
-nsresult nsSMILFloatType::Assign(nsSMILValue& aDest,
- const nsSMILValue& aSrc) const {
+nsresult SMILFloatType::Assign(nsSMILValue& aDest,
+ const nsSMILValue& aSrc) const {
MOZ_ASSERT(aDest.mType == aSrc.mType, "Incompatible SMIL types");
MOZ_ASSERT(aDest.mType == this, "Unexpected SMIL value");
aDest.mU.mDouble = aSrc.mU.mDouble;
return NS_OK;
}
-bool nsSMILFloatType::IsEqual(const nsSMILValue& aLeft,
- const nsSMILValue& aRight) const {
+bool SMILFloatType::IsEqual(const nsSMILValue& aLeft,
+ const nsSMILValue& aRight) const {
MOZ_ASSERT(aLeft.mType == aRight.mType, "Incompatible SMIL types");
MOZ_ASSERT(aLeft.mType == this, "Unexpected type for SMIL value");
return aLeft.mU.mDouble == aRight.mU.mDouble;
}
-nsresult nsSMILFloatType::Add(nsSMILValue& aDest,
- const nsSMILValue& aValueToAdd,
- uint32_t aCount) const {
+nsresult SMILFloatType::Add(nsSMILValue& aDest, const nsSMILValue& aValueToAdd,
+ uint32_t aCount) const {
MOZ_ASSERT(aValueToAdd.mType == aDest.mType, "Trying to add invalid types");
MOZ_ASSERT(aValueToAdd.mType == this, "Unexpected source type");
aDest.mU.mDouble += aValueToAdd.mU.mDouble * aCount;
return NS_OK;
}
-nsresult nsSMILFloatType::ComputeDistance(const nsSMILValue& aFrom,
- const nsSMILValue& aTo,
- double& aDistance) const {
+nsresult SMILFloatType::ComputeDistance(const nsSMILValue& aFrom,
+ const nsSMILValue& aTo,
+ double& aDistance) const {
MOZ_ASSERT(aFrom.mType == aTo.mType, "Trying to compare different types");
MOZ_ASSERT(aFrom.mType == this, "Unexpected source type");
@@ -60,10 +61,10 @@ nsresult nsSMILFloatType::ComputeDistance(const nsSMILValue& aFrom,
return NS_OK;
}
-nsresult nsSMILFloatType::Interpolate(const nsSMILValue& aStartVal,
- const nsSMILValue& aEndVal,
- double aUnitDistance,
- nsSMILValue& aResult) const {
+nsresult SMILFloatType::Interpolate(const nsSMILValue& aStartVal,
+ const nsSMILValue& aEndVal,
+ double aUnitDistance,
+ nsSMILValue& aResult) const {
MOZ_ASSERT(aStartVal.mType == aEndVal.mType,
"Trying to interpolate different types");
MOZ_ASSERT(aStartVal.mType == this, "Unexpected types for interpolation");
@@ -76,3 +77,5 @@ nsresult nsSMILFloatType::Interpolate(const nsSMILValue& aStartVal,
return NS_OK;
}
+
+} // namespace mozilla
diff --git a/dom/smil/nsSMILFloatType.h b/dom/smil/SMILFloatType.h
similarity index 89%
rename from dom/smil/nsSMILFloatType.h
rename to dom/smil/SMILFloatType.h
index 8236fafaedf5..eaaceedb722e 100644
--- a/dom/smil/nsSMILFloatType.h
+++ b/dom/smil/SMILFloatType.h
@@ -10,11 +10,13 @@
#include "mozilla/Attributes.h"
#include "nsISMILType.h"
-class nsSMILFloatType : public nsISMILType {
+namespace mozilla {
+
+class SMILFloatType : public nsISMILType {
public:
// Singleton for nsSMILValue objects to hold onto.
- static nsSMILFloatType* Singleton() {
- static nsSMILFloatType sSingleton;
+ static SMILFloatType* Singleton() {
+ static SMILFloatType sSingleton;
return &sSingleton;
}
@@ -38,7 +40,9 @@ class nsSMILFloatType : public nsISMILType {
private:
// Private constructor: prevent instances beyond my singleton.
- constexpr nsSMILFloatType() {}
+ constexpr SMILFloatType() {}
};
+} // namespace mozilla
+
#endif // NS_SMILFLOATTYPE_H_
diff --git a/dom/smil/moz.build b/dom/smil/moz.build
index 821bd41ccffd..27848682ccf0 100644
--- a/dom/smil/moz.build
+++ b/dom/smil/moz.build
@@ -44,7 +44,6 @@ UNIFIED_SOURCES += [
'nsSMILCompositor.cpp',
'nsSMILCSSProperty.cpp',
'nsSMILCSSValueType.cpp',
- 'nsSMILFloatType.cpp',
'nsSMILInstanceTime.cpp',
'nsSMILInterval.cpp',
'nsSMILKeySpline.cpp',
@@ -59,6 +58,7 @@ UNIFIED_SOURCES += [
'nsSMILValue.cpp',
'SMILBoolType.cpp',
'SMILEnumType.cpp',
+ 'SMILFloatType.cpp',
'SMILIntegerType.cpp',
'SMILStringType.cpp',
'TimeEvent.cpp',
diff --git a/dom/svg/nsSVGLength2.cpp b/dom/svg/nsSVGLength2.cpp
index 3dc9fa9aabf6..68d474ad16bf 100644
--- a/dom/svg/nsSVGLength2.cpp
+++ b/dom/svg/nsSVGLength2.cpp
@@ -11,7 +11,7 @@
#include "mozilla/dom/SVGViewportElement.h"
#include "nsContentUtils.h" // NS_ENSURE_FINITE
#include "nsIFrame.h"
-#include "nsSMILFloatType.h"
+#include "SMILFloatType.h"
#include "nsSMILValue.h"
#include "nsSVGAttrTearoffTable.h"
#include "nsSVGIntegrationUtils.h"
@@ -436,7 +436,7 @@ nsresult nsSVGLength2::SMILLength::ValueFromString(
return NS_ERROR_DOM_SYNTAX_ERR;
}
- nsSMILValue val(nsSMILFloatType::Singleton());
+ nsSMILValue val(SMILFloatType::Singleton());
val.mU.mDouble = value * mVal->GetPixelsPerUnit(mSVGElement, unitType);
aValue = val;
aPreventCachingOfSandwich =
@@ -448,7 +448,7 @@ nsresult nsSVGLength2::SMILLength::ValueFromString(
}
nsSMILValue nsSVGLength2::SMILLength::GetBaseValue() const {
- nsSMILValue val(nsSMILFloatType::Singleton());
+ nsSMILValue val(SMILFloatType::Singleton());
val.mU.mDouble = mVal->GetBaseValue(mSVGElement);
return val;
}
@@ -462,9 +462,9 @@ void nsSVGLength2::SMILLength::ClearAnimValue() {
}
nsresult nsSVGLength2::SMILLength::SetAnimValue(const nsSMILValue& aValue) {
- NS_ASSERTION(aValue.mType == nsSMILFloatType::Singleton(),
+ NS_ASSERTION(aValue.mType == SMILFloatType::Singleton(),
"Unexpected type to assign animated value");
- if (aValue.mType == nsSMILFloatType::Singleton()) {
+ if (aValue.mType == SMILFloatType::Singleton()) {
return mVal->SetAnimValue(float(aValue.mU.mDouble), mSVGElement);
}
return NS_OK;
diff --git a/dom/svg/nsSVGNumber2.cpp b/dom/svg/nsSVGNumber2.cpp
index 9af2c27c40a9..0abeb6a1d9c1 100644
--- a/dom/svg/nsSVGNumber2.cpp
+++ b/dom/svg/nsSVGNumber2.cpp
@@ -7,7 +7,7 @@
#include "nsSVGNumber2.h"
#include "mozilla/Attributes.h"
#include "nsContentUtils.h" // NS_ENSURE_FINITE
-#include "nsSMILFloatType.h"
+#include "SMILFloatType.h"
#include "nsSMILValue.h"
#include "nsSVGAttrTearoffTable.h"
#include "SVGContentUtils.h"
@@ -126,7 +126,7 @@ nsresult nsSVGNumber2::SMILNumber::ValueFromString(
return NS_ERROR_DOM_SYNTAX_ERR;
}
- nsSMILValue val(nsSMILFloatType::Singleton());
+ nsSMILValue val(SMILFloatType::Singleton());
val.mU.mDouble = value;
aValue = val;
aPreventCachingOfSandwich = false;
@@ -135,7 +135,7 @@ nsresult nsSVGNumber2::SMILNumber::ValueFromString(
}
nsSMILValue nsSVGNumber2::SMILNumber::GetBaseValue() const {
- nsSMILValue val(nsSMILFloatType::Singleton());
+ nsSMILValue val(SMILFloatType::Singleton());
val.mU.mDouble = mVal->mBaseVal;
return val;
}
@@ -149,9 +149,9 @@ void nsSVGNumber2::SMILNumber::ClearAnimValue() {
}
nsresult nsSVGNumber2::SMILNumber::SetAnimValue(const nsSMILValue& aValue) {
- NS_ASSERTION(aValue.mType == nsSMILFloatType::Singleton(),
+ NS_ASSERTION(aValue.mType == SMILFloatType::Singleton(),
"Unexpected type to assign animated value");
- if (aValue.mType == nsSMILFloatType::Singleton()) {
+ if (aValue.mType == SMILFloatType::Singleton()) {
mVal->SetAnimValue(float(aValue.mU.mDouble), mSVGElement);
}
return NS_OK;
diff --git a/toolkit/moz.configure b/toolkit/moz.configure
index 4de3a4846557..b588429146c9 100644
--- a/toolkit/moz.configure
+++ b/toolkit/moz.configure
@@ -1088,8 +1088,7 @@ def check_for_midl(target, compile_environment):
return True
-midl = check_prog('MIDL', midl_names, when=check_for_midl, allow_missing=True,
- paths=sdk_bin_path)
+midl = check_prog('MIDL', midl_names, when=check_for_midl, allow_missing=True)
@depends(c_compiler, target, when=depends(midl, target)(lambda m, t: m and t.kernel == 'WINNT'))
@@ -1276,8 +1275,7 @@ set_config('MOZ_LAYOUT_DEBUGGER', depends_if('--enable-layout-debugger')(lambda
with only_when(compile_environment):
fxc = check_prog('FXC', ('fxc.exe', 'fxc2.exe'), when=depends(target)
- (lambda t: t.kernel == 'WINNT'),
- paths=sdk_bin_path)
+ (lambda t: t.kernel == 'WINNT'))
wine = check_prog('WINE', ['wine'], when=depends(target, host)
(lambda t, h: t.kernel == 'WINNT' and h.kernel == 'Linux'))