зеркало из https://github.com/mozilla/gecko-dev.git
Revert to changeset e6fc4594c22e which was the last one to get a green Win7 tp run
This commit is contained in:
Родитель
92f6958e72
Коммит
44916171a8
|
@ -16,6 +16,7 @@ builtin(include, build/autoconf/mozheader.m4)dnl
|
||||||
builtin(include, build/autoconf/acwinpaths.m4)dnl
|
builtin(include, build/autoconf/acwinpaths.m4)dnl
|
||||||
builtin(include, build/autoconf/lto.m4)dnl
|
builtin(include, build/autoconf/lto.m4)dnl
|
||||||
builtin(include, build/autoconf/gcc-pr49911.m4)dnl
|
builtin(include, build/autoconf/gcc-pr49911.m4)dnl
|
||||||
|
builtin(include, build/autoconf/frameptr.m4)dnl
|
||||||
|
|
||||||
MOZ_PROG_CHECKMSYS()
|
MOZ_PROG_CHECKMSYS()
|
||||||
|
|
||||||
|
|
|
@ -1,7 +1,8 @@
|
||||||
pref("startup.homepage_override_url","http://www.mozilla.org/projects/%APP%/%VERSION%/whatsnew/");
|
pref("startup.homepage_override_url","http://www.mozilla.org/projects/%APP%/%VERSION%/whatsnew/");
|
||||||
pref("startup.homepage_welcome_url","http://www.mozilla.org/projects/%APP%/%VERSION%/firstrun/");
|
pref("startup.homepage_welcome_url","http://www.mozilla.org/projects/%APP%/%VERSION%/firstrun/");
|
||||||
// The time interval between checks for a new version (in seconds)
|
// The time interval between checks for a new version (in seconds)
|
||||||
pref("app.update.interval", 7200); // 2 hours
|
// nightly=8 hours, official=24 hours
|
||||||
|
pref("app.update.interval", 28800);
|
||||||
// The time interval between the downloading of mar file chunks in the
|
// The time interval between the downloading of mar file chunks in the
|
||||||
// background (in seconds)
|
// background (in seconds)
|
||||||
pref("app.update.download.backgroundInterval", 60);
|
pref("app.update.download.backgroundInterval", 60);
|
||||||
|
|
|
@ -1,7 +1,8 @@
|
||||||
pref("startup.homepage_override_url","http://www.mozilla.org/projects/%APP%/%VERSION%/whatsnew/");
|
pref("startup.homepage_override_url","http://www.mozilla.org/projects/%APP%/%VERSION%/whatsnew/");
|
||||||
pref("startup.homepage_welcome_url","http://www.mozilla.org/projects/%APP%/%VERSION%/firstrun/");
|
pref("startup.homepage_welcome_url","http://www.mozilla.org/projects/%APP%/%VERSION%/firstrun/");
|
||||||
// The time interval between checks for a new version (in seconds)
|
// The time interval between checks for a new version (in seconds)
|
||||||
pref("app.update.interval", 86400); // 24 hours
|
// nightly=8 hours, official=24 hours
|
||||||
|
pref("app.update.interval", 28800);
|
||||||
// The time interval between the downloading of mar file chunks in the
|
// The time interval between the downloading of mar file chunks in the
|
||||||
// background (in seconds)
|
// background (in seconds)
|
||||||
pref("app.update.download.backgroundInterval", 60);
|
pref("app.update.download.backgroundInterval", 60);
|
||||||
|
|
|
@ -2,5 +2,6 @@ amazondotcom
|
||||||
bing
|
bing
|
||||||
eBay
|
eBay
|
||||||
google
|
google
|
||||||
|
twitter
|
||||||
wikipedia
|
wikipedia
|
||||||
yahoo
|
yahoo
|
||||||
|
|
|
@ -0,0 +1,11 @@
|
||||||
|
<SearchPlugin xmlns="http://www.mozilla.org/2006/browser/search/">
|
||||||
|
<ShortName>Twitter</ShortName>
|
||||||
|
<Description>Realtime Twitter Search</Description>
|
||||||
|
<InputEncoding>UTF-8</InputEncoding>
|
||||||
|
<Image width="16" height="16">data:image/x-icon;base64,AAABAAEAEBAAAAEAIABoBAAAFgAAACgAAAAQAAAAIAAAAAEAIAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A/v7+D/7+/j/+/v5g/v7+YP7+/mD+/v5I/v7+KP///wD///8A////AP///wD///8A////AP///wD+/v4H/v7+UPbv4pHgx47B1K9Y3tWwWN7Ur1je3sKCx+rbuKj+/v5n/v7+GP///wD///8A////AP///wD+/v4Y+fbweM2ycMe2iB7/vI0f/8STIf/KlyL/zJki/8yZIv/LmCL/0ahK5/Hp1JH+/v4Y////AP///wD///8A7OTTaquHN+CujkXPs5ZTv6N6G/+2iB7/xpUh/8yZIv/MmSL/zJki/8yZIv/Kmy738OjUi////wD///8A////AMKtfY7w6+Ef////AP///wD///8A3sqbp8iWIf/MmSL/zJki/8yZIv/MmSL/y5gi/8mePO7+/v4w////AP///wD///8A////AP///wD+/v4H/v7+V9CtWN3KmCL/zJki/8yZIv/MmSL/zJki/8yZIv/JlyH/5tSqp/7+/mD+/v4/////AP///wD///8A+PXvJtGyZdXNnS/3y5gi/8qYIv/LmCL/zJki/8yZIv/MmSL/y5gi/82iPO7LqVfe0byMmf///wD///8A/v7+D/Do1JHKmy73ypci/8KSIP+/jyD/xpQh/8uYIv/MmSL/zJki/8qYIv+/jyD/rIEd/9nKqH7///8A////APPu4TzAlSz3wZEg/7mLH/+sgR3/uZdGz7mLH//JlyH/zJki/8yZIv/GlSH/to0r9eXbxD/Vx6dg////AP7+/h/p38WhtIsq9al/HP+kfyjuybaKgf///wCzjzjlwJAg/8qYIv/JlyH/u4wf/8CkYrn///8A////AP///wDj2sRMnHUa/7meYa7Vx6dg////AP///wD///8A2MmnYK6DHf++jiD/vo4g/62CHf/k2sQ/////AP///wD///8A8OvhH/f07w////8A////AP///wD///8A////AP///wC/p3Cfpnwc/66GKvPg1LZ8////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////ANXHp2DJtoqByLWKgf///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A//8AAP//AADgPwAAwA8AAIAHAAB4BwAA+AMAAPAAAADgAQAA4AMAAMEDAADPhwAA/48AAP/nAAD//wAA//8AAA==</Image>
|
||||||
|
<SearchForm>https://twitter.com/search/</SearchForm>
|
||||||
|
<Url type="text/html" method="GET" template="https://twitter.com/search/{searchTerms}">
|
||||||
|
<Param name="partner" value="Firefox"/>
|
||||||
|
<Param name="source" value="desktop-search"/>
|
||||||
|
</Url>
|
||||||
|
</SearchPlugin>
|
|
@ -0,0 +1,25 @@
|
||||||
|
dnl Set MOZ_FRAMEPTR_FLAGS to the flags that should be used for enabling or
|
||||||
|
dnl disabling frame pointers in this architecture based on the configure
|
||||||
|
dnl options
|
||||||
|
|
||||||
|
AC_DEFUN([MOZ_SET_FRAMEPTR_FLAGS], [
|
||||||
|
if test "$GNU_CC"; then
|
||||||
|
MOZ_ENABLE_FRAME_PTR="-fno-omit-frame-pointer"
|
||||||
|
MOZ_DISABLE_FRAME_PTR="-fomit-frame-pointer"
|
||||||
|
else
|
||||||
|
case "$target" in
|
||||||
|
*-mingw*)
|
||||||
|
MOZ_ENABLE_FRAME_PTR="-Oy-"
|
||||||
|
MOZ_DISABLE_FRAME_PTR="-Oy"
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
fi
|
||||||
|
|
||||||
|
# if we are debugging or profiling, we want a frame pointer.
|
||||||
|
if test -z "$MOZ_OPTIMIZE" -o \
|
||||||
|
-n "$MOZ_PROFILING" -o -n "$MOZ_DEBUG"; then
|
||||||
|
MOZ_FRAMEPTR_FLAGS="$MOZ_ENABLE_FRAME_PTR"
|
||||||
|
else
|
||||||
|
MOZ_FRAMEPTR_FLAGS="$MOZ_DISABLE_FRAME_PTR"
|
||||||
|
fi
|
||||||
|
])
|
|
@ -303,6 +303,7 @@ ACDEFINES = @MOZ_DEFINES@
|
||||||
WARNINGS_AS_ERRORS = @WARNINGS_AS_ERRORS@
|
WARNINGS_AS_ERRORS = @WARNINGS_AS_ERRORS@
|
||||||
|
|
||||||
MOZ_OPTIMIZE = @MOZ_OPTIMIZE@
|
MOZ_OPTIMIZE = @MOZ_OPTIMIZE@
|
||||||
|
MOZ_FRAMEPTR_FLAGS = @MOZ_FRAMEPTR_FLAGS@
|
||||||
MOZ_OPTIMIZE_FLAGS = @MOZ_OPTIMIZE_FLAGS@
|
MOZ_OPTIMIZE_FLAGS = @MOZ_OPTIMIZE_FLAGS@
|
||||||
MOZ_PGO_OPTIMIZE_FLAGS = @MOZ_PGO_OPTIMIZE_FLAGS@
|
MOZ_PGO_OPTIMIZE_FLAGS = @MOZ_PGO_OPTIMIZE_FLAGS@
|
||||||
MOZ_OPTIMIZE_LDFLAGS = @MOZ_OPTIMIZE_LDFLAGS@
|
MOZ_OPTIMIZE_LDFLAGS = @MOZ_OPTIMIZE_LDFLAGS@
|
||||||
|
|
|
@ -463,6 +463,9 @@ endif # MOZ_OPTIMIZE == 1
|
||||||
endif # MOZ_OPTIMIZE
|
endif # MOZ_OPTIMIZE
|
||||||
endif # CROSS_COMPILE
|
endif # CROSS_COMPILE
|
||||||
|
|
||||||
|
CFLAGS += $(MOZ_FRAMEPTR_FLAGS)
|
||||||
|
CXXFLAGS += $(MOZ_FRAMEPTR_FLAGS)
|
||||||
|
|
||||||
# Check for FAIL_ON_WARNINGS & FAIL_ON_WARNINGS_DEBUG (Shorthand for Makefiles
|
# Check for FAIL_ON_WARNINGS & FAIL_ON_WARNINGS_DEBUG (Shorthand for Makefiles
|
||||||
# to request that we use the 'warnings as errors' compile flags)
|
# to request that we use the 'warnings as errors' compile flags)
|
||||||
|
|
||||||
|
|
34
configure.in
34
configure.in
|
@ -2071,12 +2071,7 @@ case "$target" in
|
||||||
*-darwin*)
|
*-darwin*)
|
||||||
MKSHLIB='$(CXX) $(CXXFLAGS) $(DSO_PIC_CFLAGS) $(DSO_LDOPTS) -o $@'
|
MKSHLIB='$(CXX) $(CXXFLAGS) $(DSO_PIC_CFLAGS) $(DSO_LDOPTS) -o $@'
|
||||||
MKCSHLIB='$(CC) $(CFLAGS) $(DSO_PIC_CFLAGS) $(DSO_LDOPTS) -o $@'
|
MKCSHLIB='$(CC) $(CFLAGS) $(DSO_PIC_CFLAGS) $(DSO_LDOPTS) -o $@'
|
||||||
# If we're building with --enable-profiling, we need a frame pointer.
|
MOZ_OPTIMIZE_FLAGS="-O3"
|
||||||
if test -z "$MOZ_PROFILING"; then
|
|
||||||
MOZ_OPTIMIZE_FLAGS="-O3 -fomit-frame-pointer"
|
|
||||||
else
|
|
||||||
MOZ_OPTIMIZE_FLAGS="-O3 -fno-omit-frame-pointer"
|
|
||||||
fi
|
|
||||||
_PEDANTIC=
|
_PEDANTIC=
|
||||||
CFLAGS="$CFLAGS -fno-common"
|
CFLAGS="$CFLAGS -fno-common"
|
||||||
CXXFLAGS="$CXXFLAGS -fno-common"
|
CXXFLAGS="$CXXFLAGS -fno-common"
|
||||||
|
@ -2188,12 +2183,7 @@ ia64*-hpux*)
|
||||||
TARGET_NSPR_MDCPUCFG='\"md/_linux.cfg\"'
|
TARGET_NSPR_MDCPUCFG='\"md/_linux.cfg\"'
|
||||||
|
|
||||||
MOZ_GFX_OPTIMIZE_MOBILE=1
|
MOZ_GFX_OPTIMIZE_MOBILE=1
|
||||||
# If we're building with --enable-profiling, we need a frame pointer.
|
MOZ_OPTIMIZE_FLAGS="-Os -freorder-blocks -fno-reorder-functions"
|
||||||
if test -z "$MOZ_PROFILING"; then
|
|
||||||
MOZ_OPTIMIZE_FLAGS="-Os -freorder-blocks -fno-reorder-functions -fomit-frame-pointer"
|
|
||||||
else
|
|
||||||
MOZ_OPTIMIZE_FLAGS="-Os -freorder-blocks -fno-reorder-functions -fno-omit-frame-pointer"
|
|
||||||
fi
|
|
||||||
;;
|
;;
|
||||||
|
|
||||||
*-*linux*)
|
*-*linux*)
|
||||||
|
@ -2211,14 +2201,8 @@ ia64*-hpux*)
|
||||||
# -Os is broken on gcc 4.1.x 4.2.x, 4.5.x we need to tweak it to get good results.
|
# -Os is broken on gcc 4.1.x 4.2.x, 4.5.x we need to tweak it to get good results.
|
||||||
MOZ_OPTIMIZE_SIZE_TWEAK="-finline-limit=50"
|
MOZ_OPTIMIZE_SIZE_TWEAK="-finline-limit=50"
|
||||||
esac
|
esac
|
||||||
# If we're building with --enable-profiling, we need a frame pointer.
|
MOZ_PGO_OPTIMIZE_FLAGS="-O3"
|
||||||
if test -z "$MOZ_PROFILING"; then
|
MOZ_OPTIMIZE_FLAGS="-Os -freorder-blocks $MOZ_OPTIMIZE_SIZE_TWEAK"
|
||||||
MOZ_FRAMEPTR_FLAGS="-fomit-frame-pointer"
|
|
||||||
else
|
|
||||||
MOZ_FRAMEPTR_FLAGS="-fno-omit-frame-pointer"
|
|
||||||
fi
|
|
||||||
MOZ_PGO_OPTIMIZE_FLAGS="-O3 $MOZ_FRAMEPTR_FLAGS"
|
|
||||||
MOZ_OPTIMIZE_FLAGS="-Os -freorder-blocks $MOZ_OPTIMIZE_SIZE_TWEAK $MOZ_FRAMEPTR_FLAGS"
|
|
||||||
MOZ_DEBUG_FLAGS="-g"
|
MOZ_DEBUG_FLAGS="-g"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
@ -2315,12 +2299,7 @@ ia64*-hpux*)
|
||||||
MOZ_DEBUG_FLAGS='-Zi'
|
MOZ_DEBUG_FLAGS='-Zi'
|
||||||
MOZ_DEBUG_LDFLAGS='-DEBUG -DEBUGTYPE:CV'
|
MOZ_DEBUG_LDFLAGS='-DEBUG -DEBUGTYPE:CV'
|
||||||
WARNINGS_AS_ERRORS='-WX'
|
WARNINGS_AS_ERRORS='-WX'
|
||||||
# If we're building with --enable-profiling, we need -Oy-, which forces a frame pointer.
|
MOZ_OPTIMIZE_FLAGS='-O1'
|
||||||
if test -z "$MOZ_PROFILING"; then
|
|
||||||
MOZ_OPTIMIZE_FLAGS='-O1'
|
|
||||||
else
|
|
||||||
MOZ_OPTIMIZE_FLAGS='-O1 -Oy-'
|
|
||||||
fi
|
|
||||||
MOZ_FIX_LINK_PATHS=
|
MOZ_FIX_LINK_PATHS=
|
||||||
DYNAMIC_XPCOM_LIBS='$(LIBXUL_DIST)/lib/xpcom.lib $(LIBXUL_DIST)/lib/xpcom_core.lib $(LIBXUL_DIST)/lib/mozalloc.lib'
|
DYNAMIC_XPCOM_LIBS='$(LIBXUL_DIST)/lib/xpcom.lib $(LIBXUL_DIST)/lib/xpcom_core.lib $(LIBXUL_DIST)/lib/mozalloc.lib'
|
||||||
XPCOM_FROZEN_LDOPTS='$(LIBXUL_DIST)/lib/xpcom.lib $(LIBXUL_DIST)/lib/mozalloc.lib'
|
XPCOM_FROZEN_LDOPTS='$(LIBXUL_DIST)/lib/xpcom.lib $(LIBXUL_DIST)/lib/mozalloc.lib'
|
||||||
|
@ -6897,6 +6876,8 @@ else
|
||||||
MOZ_OPTIMIZE=
|
MOZ_OPTIMIZE=
|
||||||
fi ], MOZ_OPTIMIZE=1)
|
fi ], MOZ_OPTIMIZE=1)
|
||||||
|
|
||||||
|
MOZ_SET_FRAMEPTR_FLAGS
|
||||||
|
|
||||||
if test "$COMPILE_ENVIRONMENT"; then
|
if test "$COMPILE_ENVIRONMENT"; then
|
||||||
if test -n "$MOZ_OPTIMIZE"; then
|
if test -n "$MOZ_OPTIMIZE"; then
|
||||||
AC_MSG_CHECKING([for valid optimization flags])
|
AC_MSG_CHECKING([for valid optimization flags])
|
||||||
|
@ -6915,6 +6896,7 @@ fi
|
||||||
fi # COMPILE_ENVIRONMENT
|
fi # COMPILE_ENVIRONMENT
|
||||||
|
|
||||||
AC_SUBST(MOZ_OPTIMIZE)
|
AC_SUBST(MOZ_OPTIMIZE)
|
||||||
|
AC_SUBST(MOZ_FRAMEPTR_FLAGS)
|
||||||
AC_SUBST(MOZ_OPTIMIZE_FLAGS)
|
AC_SUBST(MOZ_OPTIMIZE_FLAGS)
|
||||||
AC_SUBST(MOZ_OPTIMIZE_LDFLAGS)
|
AC_SUBST(MOZ_OPTIMIZE_LDFLAGS)
|
||||||
AC_SUBST(MOZ_OPTIMIZE_SIZE_TWEAK)
|
AC_SUBST(MOZ_OPTIMIZE_SIZE_TWEAK)
|
||||||
|
|
|
@ -1,3 +0,0 @@
|
||||||
<svg xmlns="http://www.w3.org/2000/svg">
|
|
||||||
<animate id="a" end="a.end+6s" />
|
|
||||||
</svg>
|
|
До Ширина: | Высота: | Размер: 82 B |
|
@ -1,11 +0,0 @@
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" class="reftest-wait">
|
|
||||||
<script>
|
|
||||||
window.addEventListener("load", function() {
|
|
||||||
setTimeout(function() {
|
|
||||||
document.documentElement.setCurrentTime(0);
|
|
||||||
document.documentElement.removeAttribute("class");
|
|
||||||
}, 0);
|
|
||||||
}, false);
|
|
||||||
</script>
|
|
||||||
<set id="c"/><set id="b" begin="c.begin; b.begin"/>
|
|
||||||
</svg>
|
|
До Ширина: | Высота: | Размер: 346 B |
|
@ -37,8 +37,6 @@ load 615872-1.svg
|
||||||
load 650732-1.svg
|
load 650732-1.svg
|
||||||
load 665334-1.svg
|
load 665334-1.svg
|
||||||
load 669225-1.svg
|
load 669225-1.svg
|
||||||
load 669225-2.svg
|
|
||||||
load 670313-1.svg
|
load 670313-1.svg
|
||||||
|
load 669225-2.svg
|
||||||
load 678822-1.svg
|
load 678822-1.svg
|
||||||
load 678847-1.svg
|
|
||||||
load 678938-1.svg
|
|
||||||
|
|
|
@ -478,21 +478,6 @@ nsSMILAnimationFunction::InterpolateResult(const nsSMILValueArray& aValues,
|
||||||
if (calcMode == CALC_DISCRETE || NS_FAILED(rv)) {
|
if (calcMode == CALC_DISCRETE || NS_FAILED(rv)) {
|
||||||
double scaledSimpleProgress =
|
double scaledSimpleProgress =
|
||||||
ScaleSimpleProgress(simpleProgress, CALC_DISCRETE);
|
ScaleSimpleProgress(simpleProgress, CALC_DISCRETE);
|
||||||
|
|
||||||
// Floating-point errors can mean that, for example, a sample time of 29s in
|
|
||||||
// a 100s duration animation gives us a simple progress of 0.28999999999
|
|
||||||
// instead of the 0.29 we'd expect. Normally this isn't a noticeable
|
|
||||||
// problem, but when we have sudden jumps in animation values (such as is
|
|
||||||
// the case here with discrete animation) we can get unexpected results.
|
|
||||||
//
|
|
||||||
// To counteract this, before we perform a floor() on the animation
|
|
||||||
// progress, we add a tiny fudge factor to push us into the correct interval
|
|
||||||
// in cases where floating-point errors might cause us to fall short.
|
|
||||||
static const double kFloatingPointFudgeFactor = 1.0e-16;
|
|
||||||
if (scaledSimpleProgress + kFloatingPointFudgeFactor <= 1.0) {
|
|
||||||
scaledSimpleProgress += kFloatingPointFudgeFactor;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (IsToAnimation()) {
|
if (IsToAnimation()) {
|
||||||
// We don't follow SMIL 3, 12.6.4, where discrete to animations
|
// We don't follow SMIL 3, 12.6.4, where discrete to animations
|
||||||
// are the same as <set> animations. Instead, we treat it as a
|
// are the same as <set> animations. Instead, we treat it as a
|
||||||
|
|
|
@ -758,10 +758,10 @@ nsSMILTimedElement::Rewind()
|
||||||
mSeekState == SEEK_BACKWARD_FROM_ACTIVE,
|
mSeekState == SEEK_BACKWARD_FROM_ACTIVE,
|
||||||
"Rewind in the middle of a forwards seek?");
|
"Rewind in the middle of a forwards seek?");
|
||||||
|
|
||||||
// Putting us in the startup state will ensure we skip doing any interval
|
|
||||||
// updates
|
|
||||||
mElementState = STATE_STARTUP;
|
|
||||||
ClearIntervals();
|
ClearIntervals();
|
||||||
|
// ClearIntervals puts us in to the POSTACTIVE state but we're doing a full
|
||||||
|
// rewind so go back to the startup state
|
||||||
|
mElementState = STATE_STARTUP;
|
||||||
|
|
||||||
UnsetBeginSpec(RemoveNonDynamic);
|
UnsetBeginSpec(RemoveNonDynamic);
|
||||||
UnsetEndSpec(RemoveNonDynamic);
|
UnsetEndSpec(RemoveNonDynamic);
|
||||||
|
@ -784,8 +784,6 @@ nsSMILTimedElement::Rewind()
|
||||||
|
|
||||||
mPrevRegisteredMilestone = sMaxMilestone;
|
mPrevRegisteredMilestone = sMaxMilestone;
|
||||||
RegisterMilestone();
|
RegisterMilestone();
|
||||||
NS_ABORT_IF_FALSE(!mCurrentInterval,
|
|
||||||
"Current interval is set at end of rewind");
|
|
||||||
}
|
}
|
||||||
|
|
||||||
namespace
|
namespace
|
||||||
|
@ -1334,9 +1332,7 @@ nsSMILTimedElement::ClearSpecs(TimeValueSpecList& aSpecs,
|
||||||
void
|
void
|
||||||
nsSMILTimedElement::ClearIntervals()
|
nsSMILTimedElement::ClearIntervals()
|
||||||
{
|
{
|
||||||
if (mElementState != STATE_STARTUP) {
|
mElementState = STATE_POSTACTIVE;
|
||||||
mElementState = STATE_POSTACTIVE;
|
|
||||||
}
|
|
||||||
mCurrentRepeatIteration = 0;
|
mCurrentRepeatIteration = 0;
|
||||||
ResetCurrentInterval();
|
ResetCurrentInterval();
|
||||||
|
|
||||||
|
@ -1688,15 +1684,14 @@ nsSMILTimedElement::GetNextInterval(const nsSMILInterval* aPrevInterval,
|
||||||
// a) We never had any end attribute to begin with (and hence we should
|
// a) We never had any end attribute to begin with (and hence we should
|
||||||
// just use the active duration after allowing for the possibility of
|
// just use the active duration after allowing for the possibility of
|
||||||
// an end instance provided by a DOM call), OR
|
// an end instance provided by a DOM call), OR
|
||||||
// b) We have no resolved (not incl. indefinite) end instances
|
// b) We have an end attribute but no end instances--this is a special
|
||||||
// (SMIL only says "if the instance list is empty"--but if we have
|
// case that is needed for syncbase timing so that animations of the
|
||||||
// indefinite/unresolved instance times then there must be a good
|
// following sort: <animate id="a" end="a.begin+1s" ... /> can be
|
||||||
// reason we haven't used them (since they'll be >= tempBegin) such as
|
// resolved (see SVGT 1.2 Test Suite animate-elem-221-t.svg) by first
|
||||||
// avoiding creating a self-referential loop. In any case, the interval
|
// establishing an interval of unresolved duration, OR
|
||||||
// should be allowed to be open.), OR
|
|
||||||
// c) We have end events which leave the interval open-ended.
|
// c) We have end events which leave the interval open-ended.
|
||||||
PRBool openEndedIntervalOk = mEndSpecs.IsEmpty() ||
|
PRBool openEndedIntervalOk = mEndSpecs.IsEmpty() ||
|
||||||
!HaveResolvedEndTimes() ||
|
mEndInstances.IsEmpty() ||
|
||||||
EndHasEventConditions();
|
EndHasEventConditions();
|
||||||
if (!tempEnd && !openEndedIntervalOk)
|
if (!tempEnd && !openEndedIntervalOk)
|
||||||
return PR_FALSE; // Bad interval
|
return PR_FALSE; // Bad interval
|
||||||
|
@ -2253,17 +2248,6 @@ nsSMILTimedElement::GetPreviousInterval() const
|
||||||
: mOldIntervals[mOldIntervals.Length()-1].get();
|
: mOldIntervals[mOldIntervals.Length()-1].get();
|
||||||
}
|
}
|
||||||
|
|
||||||
PRBool
|
|
||||||
nsSMILTimedElement::HaveResolvedEndTimes() const
|
|
||||||
{
|
|
||||||
if (mEndInstances.IsEmpty())
|
|
||||||
return PR_FALSE;
|
|
||||||
|
|
||||||
// mEndInstances is sorted so if the first time is not resolved then none of
|
|
||||||
// them are
|
|
||||||
return mEndInstances[0]->Time().IsResolved();
|
|
||||||
}
|
|
||||||
|
|
||||||
PRBool
|
PRBool
|
||||||
nsSMILTimedElement::EndHasEventConditions() const
|
nsSMILTimedElement::EndHasEventConditions() const
|
||||||
{
|
{
|
||||||
|
|
|
@ -525,7 +525,6 @@ protected:
|
||||||
const nsSMILInstanceTime* GetEffectiveBeginInstance() const;
|
const nsSMILInstanceTime* GetEffectiveBeginInstance() const;
|
||||||
const nsSMILInterval* GetPreviousInterval() const;
|
const nsSMILInterval* GetPreviousInterval() const;
|
||||||
PRBool HasPlayed() const { return !mOldIntervals.IsEmpty(); }
|
PRBool HasPlayed() const { return !mOldIntervals.IsEmpty(); }
|
||||||
PRBool HaveResolvedEndTimes() const;
|
|
||||||
PRBool EndHasEventConditions() const;
|
PRBool EndHasEventConditions() const;
|
||||||
|
|
||||||
// Reset the current interval by first passing ownership to a temporary
|
// Reset the current interval by first passing ownership to a temporary
|
||||||
|
|
|
@ -48,6 +48,7 @@
|
||||||
#include "AccessCheck.h"
|
#include "AccessCheck.h"
|
||||||
|
|
||||||
#include "xpcprivate.h"
|
#include "xpcprivate.h"
|
||||||
|
#include "XPCWrapper.h"
|
||||||
|
|
||||||
#include "nscore.h"
|
#include "nscore.h"
|
||||||
#include "nsDOMClassInfo.h"
|
#include "nsDOMClassInfo.h"
|
||||||
|
@ -516,7 +517,6 @@ static const char kDOMStringBundleURL[] =
|
||||||
|
|
||||||
#define WINDOW_SCRIPTABLE_FLAGS \
|
#define WINDOW_SCRIPTABLE_FLAGS \
|
||||||
(nsIXPCScriptable::WANT_GETPROPERTY | \
|
(nsIXPCScriptable::WANT_GETPROPERTY | \
|
||||||
nsIXPCScriptable::WANT_SETPROPERTY | \
|
|
||||||
nsIXPCScriptable::WANT_PRECREATE | \
|
nsIXPCScriptable::WANT_PRECREATE | \
|
||||||
nsIXPCScriptable::WANT_FINALIZE | \
|
nsIXPCScriptable::WANT_FINALIZE | \
|
||||||
nsIXPCScriptable::WANT_EQUALITY | \
|
nsIXPCScriptable::WANT_EQUALITY | \
|
||||||
|
@ -5269,39 +5269,6 @@ nsWindowSH::GetProperty(nsIXPConnectWrappedNative *wrapper, JSContext *cx,
|
||||||
return NS_OK;
|
return NS_OK;
|
||||||
}
|
}
|
||||||
|
|
||||||
NS_IMETHODIMP
|
|
||||||
nsWindowSH::SetProperty(nsIXPConnectWrappedNative *wrapper, JSContext *cx,
|
|
||||||
JSObject *obj, jsid id, jsval *vp, PRBool *_retval)
|
|
||||||
{
|
|
||||||
if (id == sLocation_id) {
|
|
||||||
JSAutoRequest ar(cx);
|
|
||||||
|
|
||||||
JSString *val = ::JS_ValueToString(cx, *vp);
|
|
||||||
NS_ENSURE_TRUE(val, NS_ERROR_UNEXPECTED);
|
|
||||||
|
|
||||||
nsCOMPtr<nsIDOMWindow> window = do_QueryWrappedNative(wrapper);
|
|
||||||
NS_ENSURE_TRUE(window, NS_ERROR_UNEXPECTED);
|
|
||||||
|
|
||||||
nsCOMPtr<nsIDOMLocation> location;
|
|
||||||
nsresult rv = window->GetLocation(getter_AddRefs(location));
|
|
||||||
NS_ENSURE_TRUE(NS_SUCCEEDED(rv) && location, rv);
|
|
||||||
|
|
||||||
nsCOMPtr<nsIXPConnectJSObjectHolder> holder;
|
|
||||||
rv = WrapNative(cx, obj, location, &NS_GET_IID(nsIDOMLocation), PR_TRUE,
|
|
||||||
vp, getter_AddRefs(holder));
|
|
||||||
NS_ENSURE_SUCCESS(rv, rv);
|
|
||||||
|
|
||||||
nsDependentJSString depStr;
|
|
||||||
NS_ENSURE_TRUE(depStr.init(cx, val), NS_ERROR_UNEXPECTED);
|
|
||||||
|
|
||||||
rv = location->SetHref(depStr);
|
|
||||||
|
|
||||||
return NS_FAILED(rv) ? rv : NS_SUCCESS_I_DID_SOMETHING;
|
|
||||||
}
|
|
||||||
|
|
||||||
return NS_OK;
|
|
||||||
}
|
|
||||||
|
|
||||||
NS_IMETHODIMP
|
NS_IMETHODIMP
|
||||||
nsWindowSH::Enumerate(nsIXPConnectWrappedNative *wrapper, JSContext *cx,
|
nsWindowSH::Enumerate(nsIXPConnectWrappedNative *wrapper, JSContext *cx,
|
||||||
JSObject *obj, PRBool *_retval)
|
JSObject *obj, PRBool *_retval)
|
||||||
|
@ -6392,6 +6359,68 @@ static JSNewResolveOp sOtherResolveFuncs[] = {
|
||||||
mozilla::dom::workers::ResolveWorkerClasses
|
mozilla::dom::workers::ResolveWorkerClasses
|
||||||
};
|
};
|
||||||
|
|
||||||
|
template<class Interface>
|
||||||
|
static nsresult
|
||||||
|
LocationSetterGuts(JSContext *cx, JSObject *obj, jsval *vp)
|
||||||
|
{
|
||||||
|
// This function duplicates some of the logic in XPC_WN_HelperSetProperty
|
||||||
|
XPCWrappedNative *wrapper =
|
||||||
|
XPCWrappedNative::GetWrappedNativeOfJSObject(cx, obj);
|
||||||
|
|
||||||
|
// The error checks duplicate code in THROW_AND_RETURN_IF_BAD_WRAPPER
|
||||||
|
NS_ENSURE_TRUE(wrapper, NS_ERROR_XPC_BAD_OP_ON_WN_PROTO);
|
||||||
|
NS_ENSURE_TRUE(wrapper->IsValid(), NS_ERROR_XPC_HAS_BEEN_SHUTDOWN);
|
||||||
|
|
||||||
|
nsCOMPtr<Interface> xpcomObj = do_QueryWrappedNative(wrapper);
|
||||||
|
NS_ENSURE_TRUE(xpcomObj, NS_ERROR_UNEXPECTED);
|
||||||
|
|
||||||
|
nsCOMPtr<nsIDOMLocation> location;
|
||||||
|
nsresult rv = xpcomObj->GetLocation(getter_AddRefs(location));
|
||||||
|
NS_ENSURE_SUCCESS(rv, rv);
|
||||||
|
|
||||||
|
JSString *val = ::JS_ValueToString(cx, *vp);
|
||||||
|
NS_ENSURE_TRUE(val, NS_ERROR_UNEXPECTED);
|
||||||
|
|
||||||
|
nsDependentJSString depStr;
|
||||||
|
NS_ENSURE_TRUE(depStr.init(cx, val), NS_ERROR_UNEXPECTED);
|
||||||
|
|
||||||
|
rv = location->SetHref(depStr);
|
||||||
|
NS_ENSURE_SUCCESS(rv, rv);
|
||||||
|
|
||||||
|
nsCOMPtr<nsIXPConnectJSObjectHolder> holder;
|
||||||
|
return WrapNative(cx, JS_GetGlobalForScopeChain(cx), location,
|
||||||
|
&NS_GET_IID(nsIDOMLocation), PR_TRUE, vp,
|
||||||
|
getter_AddRefs(holder));
|
||||||
|
}
|
||||||
|
|
||||||
|
template<class Interface>
|
||||||
|
static JSBool
|
||||||
|
LocationSetter(JSContext *cx, JSObject *obj, jsid id, JSBool strict,
|
||||||
|
jsval *vp)
|
||||||
|
{
|
||||||
|
nsresult rv = LocationSetterGuts<Interface>(cx, obj, vp);
|
||||||
|
if (NS_FAILED(rv)) {
|
||||||
|
if (!::JS_IsExceptionPending(cx)) {
|
||||||
|
nsDOMClassInfo::ThrowJSException(cx, rv);
|
||||||
|
}
|
||||||
|
return JS_FALSE;
|
||||||
|
}
|
||||||
|
|
||||||
|
return JS_TRUE;
|
||||||
|
}
|
||||||
|
|
||||||
|
static JSBool
|
||||||
|
LocationSetterUnwrapper(JSContext *cx, JSObject *obj, jsid id, JSBool strict,
|
||||||
|
jsval *vp)
|
||||||
|
{
|
||||||
|
JSObject *wrapped = XPCWrapper::UnsafeUnwrapSecurityWrapper(obj);
|
||||||
|
if (wrapped) {
|
||||||
|
obj = wrapped;
|
||||||
|
}
|
||||||
|
|
||||||
|
return LocationSetter<nsIDOMWindow>(cx, obj, id, strict, vp);
|
||||||
|
}
|
||||||
|
|
||||||
NS_IMETHODIMP
|
NS_IMETHODIMP
|
||||||
nsWindowSH::NewResolve(nsIXPConnectWrappedNative *wrapper, JSContext *cx,
|
nsWindowSH::NewResolve(nsIXPConnectWrappedNative *wrapper, JSContext *cx,
|
||||||
JSObject *obj, jsid id, PRUint32 flags,
|
JSObject *obj, jsid id, PRUint32 flags,
|
||||||
|
@ -6544,7 +6573,8 @@ nsWindowSH::NewResolve(nsIXPConnectWrappedNative *wrapper, JSContext *cx,
|
||||||
NS_ENSURE_SUCCESS(rv, rv);
|
NS_ENSURE_SUCCESS(rv, rv);
|
||||||
|
|
||||||
JSBool ok = JS_WrapValue(cx, &v) &&
|
JSBool ok = JS_WrapValue(cx, &v) &&
|
||||||
JS_DefinePropertyById(cx, obj, id, v, nsnull, nsnull,
|
JS_DefinePropertyById(cx, obj, id, v, nsnull,
|
||||||
|
LocationSetterUnwrapper,
|
||||||
JSPROP_PERMANENT | JSPROP_ENUMERATE);
|
JSPROP_PERMANENT | JSPROP_ENUMERATE);
|
||||||
|
|
||||||
if (!ok) {
|
if (!ok) {
|
||||||
|
@ -8177,7 +8207,8 @@ nsDocumentSH::NewResolve(nsIXPConnectWrappedNative *wrapper, JSContext *cx,
|
||||||
|
|
||||||
JSAutoRequest ar(cx);
|
JSAutoRequest ar(cx);
|
||||||
|
|
||||||
JSBool ok = ::JS_DefinePropertyById(cx, obj, id, v, nsnull, nsnull,
|
JSBool ok = ::JS_DefinePropertyById(cx, obj, id, v, nsnull,
|
||||||
|
LocationSetter<nsIDOMDocument>,
|
||||||
JSPROP_PERMANENT | JSPROP_ENUMERATE);
|
JSPROP_PERMANENT | JSPROP_ENUMERATE);
|
||||||
|
|
||||||
if (!ok) {
|
if (!ok) {
|
||||||
|
@ -8222,34 +8253,6 @@ NS_IMETHODIMP
|
||||||
nsDocumentSH::SetProperty(nsIXPConnectWrappedNative *wrapper, JSContext *cx,
|
nsDocumentSH::SetProperty(nsIXPConnectWrappedNative *wrapper, JSContext *cx,
|
||||||
JSObject *obj, jsid id, jsval *vp, PRBool *_retval)
|
JSObject *obj, jsid id, jsval *vp, PRBool *_retval)
|
||||||
{
|
{
|
||||||
if (id == sLocation_id) {
|
|
||||||
nsCOMPtr<nsIDOMDocument> doc = do_QueryWrappedNative(wrapper);
|
|
||||||
NS_ENSURE_TRUE(doc, NS_ERROR_UNEXPECTED);
|
|
||||||
|
|
||||||
nsCOMPtr<nsIDOMLocation> location;
|
|
||||||
nsresult rv = doc->GetLocation(getter_AddRefs(location));
|
|
||||||
NS_ENSURE_SUCCESS(rv, rv);
|
|
||||||
|
|
||||||
if (location) {
|
|
||||||
JSAutoRequest ar(cx);
|
|
||||||
|
|
||||||
JSString *val = ::JS_ValueToString(cx, *vp);
|
|
||||||
NS_ENSURE_TRUE(val, NS_ERROR_UNEXPECTED);
|
|
||||||
|
|
||||||
nsDependentJSString depStr;
|
|
||||||
NS_ENSURE_TRUE(depStr.init(cx, val), NS_ERROR_UNEXPECTED);
|
|
||||||
|
|
||||||
rv = location->SetHref(depStr);
|
|
||||||
NS_ENSURE_SUCCESS(rv, rv);
|
|
||||||
|
|
||||||
nsCOMPtr<nsIXPConnectJSObjectHolder> holder;
|
|
||||||
rv = WrapNative(cx, JS_GetGlobalForScopeChain(cx), location,
|
|
||||||
&NS_GET_IID(nsIDOMLocation), PR_TRUE, vp,
|
|
||||||
getter_AddRefs(holder));
|
|
||||||
return NS_FAILED(rv) ? rv : NS_SUCCESS_I_DID_SOMETHING;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if (id == sDocumentURIObject_id && IsPrivilegedScript()) {
|
if (id == sDocumentURIObject_id && IsPrivilegedScript()) {
|
||||||
// We don't want privileged script that can read this property to set it,
|
// We don't want privileged script that can read this property to set it,
|
||||||
// but _do_ want to allow everyone else to set a value they can then read.
|
// but _do_ want to allow everyone else to set a value they can then read.
|
||||||
|
|
|
@ -407,8 +407,6 @@ public:
|
||||||
#endif
|
#endif
|
||||||
NS_IMETHOD GetProperty(nsIXPConnectWrappedNative *wrapper, JSContext *cx,
|
NS_IMETHOD GetProperty(nsIXPConnectWrappedNative *wrapper, JSContext *cx,
|
||||||
JSObject *obj, jsid id, jsval *vp, PRBool *_retval);
|
JSObject *obj, jsid id, jsval *vp, PRBool *_retval);
|
||||||
NS_IMETHOD SetProperty(nsIXPConnectWrappedNative *wrapper, JSContext *cx,
|
|
||||||
JSObject *obj, jsid id, jsval *vp, PRBool *_retval);
|
|
||||||
NS_IMETHOD Enumerate(nsIXPConnectWrappedNative *wrapper, JSContext *cx,
|
NS_IMETHOD Enumerate(nsIXPConnectWrappedNative *wrapper, JSContext *cx,
|
||||||
JSObject *obj, PRBool *_retval);
|
JSObject *obj, PRBool *_retval);
|
||||||
NS_IMETHOD NewResolve(nsIXPConnectWrappedNative *wrapper, JSContext *cx,
|
NS_IMETHOD NewResolve(nsIXPConnectWrappedNative *wrapper, JSContext *cx,
|
||||||
|
|
|
@ -55,6 +55,7 @@ _TEST_FILES = \
|
||||||
test_location.html \
|
test_location.html \
|
||||||
test_innerWidthHeight_script.html \
|
test_innerWidthHeight_script.html \
|
||||||
innerWidthHeight_script.html \
|
innerWidthHeight_script.html \
|
||||||
|
test_location_setters.html \
|
||||||
$(NULL)
|
$(NULL)
|
||||||
|
|
||||||
libs:: $(_TEST_FILES)
|
libs:: $(_TEST_FILES)
|
||||||
|
|
|
@ -0,0 +1,78 @@
|
||||||
|
<!DOCTYPE HTML>
|
||||||
|
<html>
|
||||||
|
<!--
|
||||||
|
https://bugzilla.mozilla.org/show_bug.cgi?id=639720
|
||||||
|
-->
|
||||||
|
<head>
|
||||||
|
<title>Test for Bug 639720</title>
|
||||||
|
<script type="application/javascript" src="/tests/SimpleTest/SimpleTest.js"></script>
|
||||||
|
<link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css"/>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<a target="_blank" href="https://bugzilla.mozilla.org/show_bug.cgi?id=639720">Mozilla Bug 639720</a>
|
||||||
|
<p id="display">
|
||||||
|
<iframe id="f"></iframe>
|
||||||
|
</p>
|
||||||
|
<div id="content" style="display: none">
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<pre id="test">
|
||||||
|
<script type="application/javascript">
|
||||||
|
|
||||||
|
/** Test for Bug 639720 **/
|
||||||
|
SimpleTest.waitForExplicitFinish();
|
||||||
|
|
||||||
|
var tests = [
|
||||||
|
{ url: "data:text/plain,1" },
|
||||||
|
{ url: "data:text/plain,2",
|
||||||
|
useDocument: true },
|
||||||
|
{ prepURL: "http://www.example.com",
|
||||||
|
url: "data:text/plain,3" }
|
||||||
|
];
|
||||||
|
|
||||||
|
var currentTest = 0;
|
||||||
|
|
||||||
|
function checkTest() {
|
||||||
|
is($("f").contentWindow.location.href, tests[currentTest].url,
|
||||||
|
"href of content window's location should match url of current test");
|
||||||
|
++currentTest;
|
||||||
|
runNextTest();
|
||||||
|
}
|
||||||
|
|
||||||
|
function runCurrentTest() {
|
||||||
|
var test = tests[currentTest];
|
||||||
|
$("f").onload = checkTest;
|
||||||
|
if (test.useDocument) {
|
||||||
|
$("f").contentDocument.location = test.url;
|
||||||
|
} else {
|
||||||
|
$("f").contentWindow.location = test.url;
|
||||||
|
}
|
||||||
|
is(typeof($("f").contentWindow.location), "object",
|
||||||
|
"Location should not have become string");
|
||||||
|
}
|
||||||
|
|
||||||
|
function prepComplete() {
|
||||||
|
runCurrentTest();
|
||||||
|
}
|
||||||
|
|
||||||
|
function runNextTest() {
|
||||||
|
if (currentTest == tests.length) {
|
||||||
|
SimpleTest.finish();
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
var test = tests[currentTest];
|
||||||
|
if ("prepURL" in test) {
|
||||||
|
$("f").onload = prepComplete;
|
||||||
|
$("f").src = test.prepURL;
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
runCurrentTest();
|
||||||
|
}
|
||||||
|
|
||||||
|
addLoadEvent(runNextTest);
|
||||||
|
</script>
|
||||||
|
</pre>
|
||||||
|
</body>
|
||||||
|
</html>
|
|
@ -729,8 +729,9 @@ nsEditorSpellCheck::UpdateCurrentDictionary()
|
||||||
}
|
}
|
||||||
|
|
||||||
// otherwise, get language from preferences
|
// otherwise, get language from preferences
|
||||||
|
nsAutoString preferedDict(Preferences::GetLocalizedString("spellchecker.dictionary"));
|
||||||
if (dictName.IsEmpty()) {
|
if (dictName.IsEmpty()) {
|
||||||
dictName.Assign(Preferences::GetLocalizedString("spellchecker.dictionary"));
|
dictName.Assign(preferedDict);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (dictName.IsEmpty())
|
if (dictName.IsEmpty())
|
||||||
|
@ -755,27 +756,50 @@ nsEditorSpellCheck::UpdateCurrentDictionary()
|
||||||
rv = SetCurrentDictionary(dictName);
|
rv = SetCurrentDictionary(dictName);
|
||||||
if (NS_FAILED(rv)) {
|
if (NS_FAILED(rv)) {
|
||||||
// required dictionary was not available. Try to get a dictionary
|
// required dictionary was not available. Try to get a dictionary
|
||||||
// matching at least language part of dictName: If required dictionary is
|
// matching at least language part of dictName:
|
||||||
// "aa-bb", we try "aa", then we try any available dictionary aa-XX
|
|
||||||
nsAutoString langCode;
|
nsAutoString langCode;
|
||||||
PRInt32 dashIdx = dictName.FindChar('-');
|
PRInt32 dashIdx = dictName.FindChar('-');
|
||||||
if (dashIdx != -1) {
|
if (dashIdx != -1) {
|
||||||
langCode.Assign(Substring(dictName, 0, dashIdx));
|
langCode.Assign(Substring(dictName, 0, dashIdx));
|
||||||
// try to use langCode
|
|
||||||
rv = SetCurrentDictionary(langCode);
|
|
||||||
} else {
|
} else {
|
||||||
langCode.Assign(dictName);
|
langCode.Assign(dictName);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
nsDefaultStringComparator comparator;
|
||||||
|
|
||||||
|
// try dictionary.spellchecker preference if it starts with langCode (and
|
||||||
|
// if we haven't tried it already)
|
||||||
|
if (!preferedDict.IsEmpty() && !dictName.Equals(preferedDict) &&
|
||||||
|
nsStyleUtil::DashMatchCompare(preferedDict, langCode, comparator)) {
|
||||||
|
rv = SetCurrentDictionary(preferedDict);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Otherwise, try langCode (if we haven't tried it already)
|
||||||
|
if (NS_FAILED(rv)) {
|
||||||
|
if (!dictName.Equals(langCode) && !preferedDict.Equals(langCode)) {
|
||||||
|
rv = SetCurrentDictionary(preferedDict);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Otherwise, try any available dictionary aa-XX
|
||||||
if (NS_FAILED(rv)) {
|
if (NS_FAILED(rv)) {
|
||||||
// loop over avaible dictionaries; if we find one with required
|
// loop over avaible dictionaries; if we find one with required
|
||||||
// language, use it
|
// language, use it
|
||||||
nsTArray<nsString> dictList;
|
nsTArray<nsString> dictList;
|
||||||
rv = mSpellChecker->GetDictionaryList(&dictList);
|
rv = mSpellChecker->GetDictionaryList(&dictList);
|
||||||
NS_ENSURE_SUCCESS(rv, rv);
|
NS_ENSURE_SUCCESS(rv, rv);
|
||||||
nsDefaultStringComparator comparator;
|
|
||||||
PRInt32 i, count = dictList.Length();
|
PRInt32 i, count = dictList.Length();
|
||||||
for (i = 0; i < count; i++) {
|
for (i = 0; i < count; i++) {
|
||||||
nsAutoString dictStr(dictList.ElementAt(i));
|
nsAutoString dictStr(dictList.ElementAt(i));
|
||||||
|
|
||||||
|
if (dictStr.Equals(dictName) ||
|
||||||
|
dictStr.Equals(preferedDict) ||
|
||||||
|
dictStr.Equals(langCode)) {
|
||||||
|
// We have already tried it
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
if (nsStyleUtil::DashMatchCompare(dictStr, langCode, comparator) &&
|
if (nsStyleUtil::DashMatchCompare(dictStr, langCode, comparator) &&
|
||||||
NS_SUCCEEDED(SetCurrentDictionary(dictStr))) {
|
NS_SUCCEEDED(SetCurrentDictionary(dictStr))) {
|
||||||
break;
|
break;
|
||||||
|
|
|
@ -172,8 +172,6 @@ fixup-unbounded.patch: Hack to work around bad assumption.
|
||||||
|
|
||||||
quartz-get-image-performance: Make cairo_quartz_get_image faster in the failure case by not flushing unless we are going to succeed.
|
quartz-get-image-performance: Make cairo_quartz_get_image faster in the failure case by not flushing unless we are going to succeed.
|
||||||
|
|
||||||
lround-c99-only.patch: Only use lround in C99 programs.
|
|
||||||
|
|
||||||
==== pixman patches ====
|
==== pixman patches ====
|
||||||
|
|
||||||
pixman-android-cpu-detect.patch: Add CPU detection support for Android, where we can't reliably access /proc/self/auxv.
|
pixman-android-cpu-detect.patch: Add CPU detection support for Android, where we can't reliably access /proc/self/auxv.
|
||||||
|
|
|
@ -483,7 +483,7 @@ _cairo_operator_bounded_by_either (cairo_operator_t op)
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#if DISABLE_SOME_FLOATING_POINT || __STDC_VERSION__ < 199901L
|
#if DISABLE_SOME_FLOATING_POINT
|
||||||
/* This function is identical to the C99 function lround(), except that it
|
/* This function is identical to the C99 function lround(), except that it
|
||||||
* performs arithmetic rounding (floor(d + .5) instead of away-from-zero rounding) and
|
* performs arithmetic rounding (floor(d + .5) instead of away-from-zero rounding) and
|
||||||
* has a valid input range of (INT_MIN, INT_MAX] instead of
|
* has a valid input range of (INT_MIN, INT_MAX] instead of
|
||||||
|
|
|
@ -974,7 +974,7 @@ _cairo_round (double r)
|
||||||
return floor (r + .5);
|
return floor (r + .5);
|
||||||
}
|
}
|
||||||
|
|
||||||
#if DISABLE_SOME_FLOATING_POINT || __STDC_VERSION__ < 199901L
|
#if DISABLE_SOME_FLOATING_POINT
|
||||||
cairo_private int
|
cairo_private int
|
||||||
_cairo_lround (double d) cairo_const;
|
_cairo_lround (double d) cairo_const;
|
||||||
#else
|
#else
|
||||||
|
|
|
@ -1,46 +0,0 @@
|
||||||
Only use lround in C99 programs.
|
|
||||||
|
|
||||||
diff --git a/gfx/cairo/cairo/src/cairo-misc.c b/gfx/cairo/cairo/src/cairo-misc.c
|
|
||||||
--- a/gfx/cairo/cairo/src/cairo-misc.c
|
|
||||||
+++ b/gfx/cairo/cairo/src/cairo-misc.c
|
|
||||||
@@ -478,17 +478,17 @@ _cairo_operator_bounded_by_either (cairo
|
|
||||||
case CAIRO_OPERATOR_IN:
|
|
||||||
case CAIRO_OPERATOR_DEST_IN:
|
|
||||||
case CAIRO_OPERATOR_DEST_ATOP:
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
-#if DISABLE_SOME_FLOATING_POINT
|
|
||||||
+#if DISABLE_SOME_FLOATING_POINT || __STDC_VERSION__ < 199901L
|
|
||||||
/* This function is identical to the C99 function lround(), except that it
|
|
||||||
* performs arithmetic rounding (floor(d + .5) instead of away-from-zero rounding) and
|
|
||||||
* has a valid input range of (INT_MIN, INT_MAX] instead of
|
|
||||||
* [INT_MIN, INT_MAX]. It is much faster on both x86 and FPU-less systems
|
|
||||||
* than other commonly used methods for rounding (lround, round, rint, lrint
|
|
||||||
* or float (d + 0.5)).
|
|
||||||
*
|
|
||||||
* The reason why this function is much faster on x86 than other
|
|
||||||
diff --git a/gfx/cairo/cairo/src/cairoint.h b/gfx/cairo/cairo/src/cairoint.h
|
|
||||||
--- a/gfx/cairo/cairo/src/cairoint.h
|
|
||||||
+++ b/gfx/cairo/cairo/src/cairoint.h
|
|
||||||
@@ -969,17 +969,17 @@ _cairo_restrict_value (double value, dou
|
|
||||||
* away from 0. _cairo_round rounds halfway cases toward negative infinity.
|
|
||||||
* This matches the rounding behaviour of _cairo_lround. */
|
|
||||||
static inline double cairo_const
|
|
||||||
_cairo_round (double r)
|
|
||||||
{
|
|
||||||
return floor (r + .5);
|
|
||||||
}
|
|
||||||
|
|
||||||
-#if DISABLE_SOME_FLOATING_POINT
|
|
||||||
+#if DISABLE_SOME_FLOATING_POINT || __STDC_VERSION__ < 199901L
|
|
||||||
cairo_private int
|
|
||||||
_cairo_lround (double d) cairo_const;
|
|
||||||
#else
|
|
||||||
#define _cairo_lround lround
|
|
||||||
#endif
|
|
||||||
|
|
||||||
cairo_private uint16_t
|
|
||||||
_cairo_half_from_float (float f) cairo_const;
|
|
|
@ -11,5 +11,6 @@ builtin(include, build/autoconf/mozprog.m4)dnl
|
||||||
builtin(include, build/autoconf/acwinpaths.m4)dnl
|
builtin(include, build/autoconf/acwinpaths.m4)dnl
|
||||||
builtin(include, build/autoconf/lto.m4)dnl
|
builtin(include, build/autoconf/lto.m4)dnl
|
||||||
builtin(include, build/autoconf/gcc-pr49911.m4)dnl
|
builtin(include, build/autoconf/gcc-pr49911.m4)dnl
|
||||||
|
builtin(include, build/autoconf/frameptr.m4)dnl
|
||||||
|
|
||||||
MOZ_PROG_CHECKMSYS()
|
MOZ_PROG_CHECKMSYS()
|
||||||
|
|
|
@ -0,0 +1,25 @@
|
||||||
|
dnl Set MOZ_FRAMEPTR_FLAGS to the flags that should be used for enabling or
|
||||||
|
dnl disabling frame pointers in this architecture based on the configure
|
||||||
|
dnl options
|
||||||
|
|
||||||
|
AC_DEFUN([MOZ_SET_FRAMEPTR_FLAGS], [
|
||||||
|
if test "$GNU_CC"; then
|
||||||
|
MOZ_ENABLE_FRAME_PTR="-fno-omit-frame-pointer"
|
||||||
|
MOZ_DISABLE_FRAME_PTR="-fomit-frame-pointer"
|
||||||
|
else
|
||||||
|
case "$target" in
|
||||||
|
*-mingw*)
|
||||||
|
MOZ_ENABLE_FRAME_PTR="-Oy-"
|
||||||
|
MOZ_DISABLE_FRAME_PTR="-Oy"
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
fi
|
||||||
|
|
||||||
|
# if we are debugging or profiling, we want a frame pointer.
|
||||||
|
if test -z "$MOZ_OPTIMIZE" -o \
|
||||||
|
-n "$MOZ_PROFILING" -o -n "$MOZ_DEBUG"; then
|
||||||
|
MOZ_FRAMEPTR_FLAGS="$MOZ_ENABLE_FRAME_PTR"
|
||||||
|
else
|
||||||
|
MOZ_FRAMEPTR_FLAGS="$MOZ_DISABLE_FRAME_PTR"
|
||||||
|
fi
|
||||||
|
])
|
|
@ -143,6 +143,7 @@ WARNINGS_AS_ERRORS = @WARNINGS_AS_ERRORS@
|
||||||
FAIL_ON_WARNINGS = @FAIL_ON_WARNINGS@
|
FAIL_ON_WARNINGS = @FAIL_ON_WARNINGS@
|
||||||
|
|
||||||
MOZ_OPTIMIZE = @MOZ_OPTIMIZE@
|
MOZ_OPTIMIZE = @MOZ_OPTIMIZE@
|
||||||
|
MOZ_FRAMEPTR_FLAGS = @MOZ_FRAMEPTR_FLAGS@
|
||||||
MOZ_OPTIMIZE_FLAGS = @MOZ_OPTIMIZE_FLAGS@
|
MOZ_OPTIMIZE_FLAGS = @MOZ_OPTIMIZE_FLAGS@
|
||||||
MOZ_PGO_OPTIMIZE_FLAGS = @MOZ_PGO_OPTIMIZE_FLAGS@
|
MOZ_PGO_OPTIMIZE_FLAGS = @MOZ_PGO_OPTIMIZE_FLAGS@
|
||||||
MOZ_OPTIMIZE_LDFLAGS = @MOZ_OPTIMIZE_LDFLAGS@
|
MOZ_OPTIMIZE_LDFLAGS = @MOZ_OPTIMIZE_LDFLAGS@
|
||||||
|
|
|
@ -463,6 +463,9 @@ endif # MOZ_OPTIMIZE == 1
|
||||||
endif # MOZ_OPTIMIZE
|
endif # MOZ_OPTIMIZE
|
||||||
endif # CROSS_COMPILE
|
endif # CROSS_COMPILE
|
||||||
|
|
||||||
|
CFLAGS += $(MOZ_FRAMEPTR_FLAGS)
|
||||||
|
CXXFLAGS += $(MOZ_FRAMEPTR_FLAGS)
|
||||||
|
|
||||||
# Check for FAIL_ON_WARNINGS & FAIL_ON_WARNINGS_DEBUG (Shorthand for Makefiles
|
# Check for FAIL_ON_WARNINGS & FAIL_ON_WARNINGS_DEBUG (Shorthand for Makefiles
|
||||||
# to request that we use the 'warnings as errors' compile flags)
|
# to request that we use the 'warnings as errors' compile flags)
|
||||||
|
|
||||||
|
|
|
@ -1972,13 +1972,7 @@ case "$target" in
|
||||||
*-darwin*)
|
*-darwin*)
|
||||||
MKSHLIB='$(CXX) $(CXXFLAGS) $(DSO_PIC_CFLAGS) $(DSO_LDOPTS) -o $@'
|
MKSHLIB='$(CXX) $(CXXFLAGS) $(DSO_PIC_CFLAGS) $(DSO_LDOPTS) -o $@'
|
||||||
MKCSHLIB='$(CC) $(CFLAGS) $(DSO_PIC_CFLAGS) $(DSO_LDOPTS) -o $@'
|
MKCSHLIB='$(CC) $(CFLAGS) $(DSO_PIC_CFLAGS) $(DSO_LDOPTS) -o $@'
|
||||||
# If we're building with --enable-profiling, we need a frame pointer.
|
MOZ_OPTIMIZE_FLAGS="-O3 -fno-stack-protector"
|
||||||
if test -z "$MOZ_PROFILING"; then
|
|
||||||
MOZ_FRAMEPTR_FLAGS="-fomit-frame-pointer"
|
|
||||||
else
|
|
||||||
MOZ_FRAMEPTR_FLAGS="-fno-omit-frame-pointer"
|
|
||||||
fi
|
|
||||||
MOZ_OPTIMIZE_FLAGS="-O3 $MOZ_FRAMEPTR_FLAGS -fno-stack-protector"
|
|
||||||
_PEDANTIC=
|
_PEDANTIC=
|
||||||
CFLAGS="$CFLAGS -fpascal-strings -fno-common"
|
CFLAGS="$CFLAGS -fpascal-strings -fno-common"
|
||||||
CXXFLAGS="$CXXFLAGS -fpascal-strings -fno-common"
|
CXXFLAGS="$CXXFLAGS -fpascal-strings -fno-common"
|
||||||
|
@ -2083,13 +2077,7 @@ ia64*-hpux*)
|
||||||
TARGET_NSPR_MDCPUCFG='\"md/_linux.cfg\"'
|
TARGET_NSPR_MDCPUCFG='\"md/_linux.cfg\"'
|
||||||
|
|
||||||
MOZ_GFX_OPTIMIZE_MOBILE=1
|
MOZ_GFX_OPTIMIZE_MOBILE=1
|
||||||
# If we're building with --enable-profiling, we need a frame pointer.
|
MOZ_OPTIMIZE_FLAGS="-O3 -freorder-blocks -fno-reorder-functions"
|
||||||
if test -z "$MOZ_PROFILING"; then
|
|
||||||
MOZ_FRAMEPTR_FLAGS="-fomit-frame-pointer"
|
|
||||||
else
|
|
||||||
MOZ_FRAMEPTR_FLAGS="-fno-omit-frame-pointer"
|
|
||||||
fi
|
|
||||||
MOZ_OPTIMIZE_FLAGS="-O3 -freorder-blocks -fno-reorder-functions $MOZ_FRAMEPTR_FLAGS"
|
|
||||||
# The Maemo builders don't know about this flag
|
# The Maemo builders don't know about this flag
|
||||||
MOZ_ARM_VFP_FLAGS="-mfpu=vfp"
|
MOZ_ARM_VFP_FLAGS="-mfpu=vfp"
|
||||||
;;
|
;;
|
||||||
|
@ -2109,14 +2097,8 @@ ia64*-hpux*)
|
||||||
# -Os is broken on gcc 4.1.x 4.2.x, 4.5.x we need to tweak it to get good results.
|
# -Os is broken on gcc 4.1.x 4.2.x, 4.5.x we need to tweak it to get good results.
|
||||||
MOZ_OPTIMIZE_SIZE_TWEAK="-finline-limit=50"
|
MOZ_OPTIMIZE_SIZE_TWEAK="-finline-limit=50"
|
||||||
esac
|
esac
|
||||||
# If we're building with --enable-profiling, we need a frame pointer.
|
MOZ_PGO_OPTIMIZE_FLAGS="-O3"
|
||||||
if test -z "$MOZ_PROFILING"; then
|
MOZ_OPTIMIZE_FLAGS="-O3 -freorder-blocks $MOZ_OPTIMIZE_SIZE_TWEAK"
|
||||||
MOZ_FRAMEPTR_FLAGS="-fomit-frame-pointer"
|
|
||||||
else
|
|
||||||
MOZ_FRAMEPTR_FLAGS="-fno-omit-frame-pointer"
|
|
||||||
fi
|
|
||||||
MOZ_PGO_OPTIMIZE_FLAGS="-O3 $MOZ_FRAMEPTR_FLAGS"
|
|
||||||
MOZ_OPTIMIZE_FLAGS="-O3 -freorder-blocks $MOZ_OPTIMIZE_SIZE_TWEAK $MOZ_FRAMEPTR_FLAGS"
|
|
||||||
MOZ_DEBUG_FLAGS="-g"
|
MOZ_DEBUG_FLAGS="-g"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
@ -2236,13 +2218,7 @@ ia64*-hpux*)
|
||||||
MOZ_DEBUG_FLAGS='-Zi'
|
MOZ_DEBUG_FLAGS='-Zi'
|
||||||
MOZ_DEBUG_LDFLAGS='-DEBUG -DEBUGTYPE:CV'
|
MOZ_DEBUG_LDFLAGS='-DEBUG -DEBUGTYPE:CV'
|
||||||
WARNINGS_AS_ERRORS='-WX'
|
WARNINGS_AS_ERRORS='-WX'
|
||||||
# If we're building with --enable-profiling, we need -Oy-, which forces a frame pointer.
|
MOZ_OPTIMIZE_FLAGS="-O2"
|
||||||
if test -z "$MOZ_PROFILING"; then
|
|
||||||
MOZ_FRAMEPTR_FLAGS=
|
|
||||||
else
|
|
||||||
MOZ_FRAMEPTR_FLAGS='-Oy-'
|
|
||||||
fi
|
|
||||||
MOZ_OPTIMIZE_FLAGS="-O2 $MOZ_FRAMEPTR_FLAGS"
|
|
||||||
MOZ_JS_LIBS='$(libdir)/mozjs.lib'
|
MOZ_JS_LIBS='$(libdir)/mozjs.lib'
|
||||||
MOZ_FIX_LINK_PATHS=
|
MOZ_FIX_LINK_PATHS=
|
||||||
DYNAMIC_XPCOM_LIBS='$(LIBXUL_DIST)/lib/xpcom.lib $(LIBXUL_DIST)/lib/xpcom_core.lib $(LIBXUL_DIST)/lib/mozalloc.lib'
|
DYNAMIC_XPCOM_LIBS='$(LIBXUL_DIST)/lib/xpcom.lib $(LIBXUL_DIST)/lib/xpcom_core.lib $(LIBXUL_DIST)/lib/mozalloc.lib'
|
||||||
|
@ -4393,6 +4369,8 @@ else
|
||||||
MOZ_OPTIMIZE=
|
MOZ_OPTIMIZE=
|
||||||
fi ], MOZ_OPTIMIZE=1)
|
fi ], MOZ_OPTIMIZE=1)
|
||||||
|
|
||||||
|
MOZ_SET_FRAMEPTR_FLAGS
|
||||||
|
|
||||||
if test "$COMPILE_ENVIRONMENT"; then
|
if test "$COMPILE_ENVIRONMENT"; then
|
||||||
if test -n "$MOZ_OPTIMIZE"; then
|
if test -n "$MOZ_OPTIMIZE"; then
|
||||||
AC_MSG_CHECKING([for valid optimization flags])
|
AC_MSG_CHECKING([for valid optimization flags])
|
||||||
|
@ -4411,6 +4389,7 @@ fi
|
||||||
fi # COMPILE_ENVIRONMENT
|
fi # COMPILE_ENVIRONMENT
|
||||||
|
|
||||||
AC_SUBST(MOZ_OPTIMIZE)
|
AC_SUBST(MOZ_OPTIMIZE)
|
||||||
|
AC_SUBST(MOZ_FRAMEPTR_FLAGS)
|
||||||
AC_SUBST(MOZ_OPTIMIZE_FLAGS)
|
AC_SUBST(MOZ_OPTIMIZE_FLAGS)
|
||||||
AC_SUBST(MOZ_OPTIMIZE_LDFLAGS)
|
AC_SUBST(MOZ_OPTIMIZE_LDFLAGS)
|
||||||
AC_SUBST(MOZ_OPTIMIZE_SIZE_TWEAK)
|
AC_SUBST(MOZ_OPTIMIZE_SIZE_TWEAK)
|
||||||
|
|
|
@ -17171,6 +17171,7 @@ LoopProfile::profileOperation(JSContext* cx, JSOp op)
|
||||||
stackPush(StackValue(v1.isConst && v2.isConst));
|
stackPush(StackValue(v1.isConst && v2.isConst));
|
||||||
} else if (op == JSOP_AND) {
|
} else if (op == JSOP_AND) {
|
||||||
bool b = !!js_ValueToBoolean(cx->regs().sp[-1]);
|
bool b = !!js_ValueToBoolean(cx->regs().sp[-1]);
|
||||||
|
StackValue v = stackAt(-1);
|
||||||
if (b)
|
if (b)
|
||||||
stackPop();
|
stackPop();
|
||||||
} else {
|
} else {
|
||||||
|
|
|
@ -1,31 +0,0 @@
|
||||||
<svg xmlns="http://www.w3.org/2000/svg"
|
|
||||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
|
||||||
class="reftest-wait"
|
|
||||||
onload="setTimeAndSnapshot(29, true)">
|
|
||||||
<script xlink:href="smil-util.js" type="text/javascript"/>
|
|
||||||
<title>Test discrete keyTimes are scaled correctly (Bug 681645)</title>
|
|
||||||
<rect x="15" y="15" width="200" height="200" fill="blue">
|
|
||||||
<animate attributeName="fill" begin="0" dur="100s"
|
|
||||||
calcMode="discrete"
|
|
||||||
values="red;red;red;red;red;red;red;red;red;red;
|
|
||||||
red;red;red;red;red;red;red;red;red;red;
|
|
||||||
red;red;red;red;red;red;red;red;red;blue;
|
|
||||||
red;red;red;red;red;red;red;red;red;red;
|
|
||||||
red;red;red;red;red;red;red;red;red;red;
|
|
||||||
red;red;red;red;red;red;red;red;red;red;
|
|
||||||
red;red;red;red;red;red;red;red;red;red;
|
|
||||||
red;red;red;red;red;red;red;red;red;red;
|
|
||||||
red;red;red;red;red;red;red;red;red;red;
|
|
||||||
red;red;red;red;red;red;red;red;red;red"
|
|
||||||
keyTimes="0.00;0.01;0.02;0.03;0.04;0.05;0.06;0.07;0.08;0.09;
|
|
||||||
0.10;0.11;0.12;0.13;0.14;0.15;0.16;0.17;0.18;0.19;
|
|
||||||
0.20;0.21;0.22;0.23;0.24;0.25;0.26;0.27;0.28;0.29;
|
|
||||||
0.30;0.31;0.32;0.33;0.34;0.35;0.36;0.37;0.38;0.39;
|
|
||||||
0.40;0.41;0.42;0.43;0.44;0.45;0.46;0.47;0.48;0.49;
|
|
||||||
0.50;0.51;0.52;0.53;0.54;0.55;0.56;0.57;0.58;0.59;
|
|
||||||
0.60;0.61;0.62;0.63;0.64;0.65;0.66;0.67;0.68;0.69;
|
|
||||||
0.70;0.71;0.72;0.73;0.74;0.75;0.76;0.77;0.78;0.79;
|
|
||||||
0.80;0.81;0.82;0.83;0.84;0.85;0.86;0.87;0.88;0.89;
|
|
||||||
0.90;0.91;0.92;0.93;0.94;0.95;0.96;0.97;0.98;0.99"/>
|
|
||||||
</rect>
|
|
||||||
</svg>
|
|
До Ширина: | Высота: | Размер: 1.8 KiB |
|
@ -1,21 +0,0 @@
|
||||||
<svg xmlns="http://www.w3.org/2000/svg"
|
|
||||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
|
||||||
class="reftest-wait"
|
|
||||||
onload="setTimeAndSnapshot(29, true)">
|
|
||||||
<script xlink:href="smil-util.js" type="text/javascript"/>
|
|
||||||
<title>Test discrete keyTimes are scaled correctly (Bug 681645)</title>
|
|
||||||
<rect x="15" y="15" width="200" height="200" fill="blue">
|
|
||||||
<animate attributeName="fill" begin="0" dur="100s"
|
|
||||||
calcMode="discrete"
|
|
||||||
values="red;red;red;red;red;red;red;red;red;red;
|
|
||||||
red;red;red;red;red;red;red;red;red;red;
|
|
||||||
red;red;red;red;red;red;red;red;red;blue;
|
|
||||||
red;red;red;red;red;red;red;red;red;red;
|
|
||||||
red;red;red;red;red;red;red;red;red;red;
|
|
||||||
red;red;red;red;red;red;red;red;red;red;
|
|
||||||
red;red;red;red;red;red;red;red;red;red;
|
|
||||||
red;red;red;red;red;red;red;red;red;red;
|
|
||||||
red;red;red;red;red;red;red;red;red;red;
|
|
||||||
red;red;red;red;red;red;red;red;red;red"/>
|
|
||||||
</rect>
|
|
||||||
</svg>
|
|
До Ширина: | Высота: | Размер: 1.1 KiB |
|
@ -55,8 +55,6 @@ include event/reftest.list
|
||||||
|
|
||||||
# General tests
|
# General tests
|
||||||
== anim-discrete-values-1.svg anim-standard-ref.svg
|
== anim-discrete-values-1.svg anim-standard-ref.svg
|
||||||
== anim-discrete-values-2.svg anim-standard-ref.svg
|
|
||||||
== anim-discrete-values-3.svg anim-standard-ref.svg
|
|
||||||
== anim-discrete-replace-sum-1.svg anim-standard-ref.svg
|
== anim-discrete-replace-sum-1.svg anim-standard-ref.svg
|
||||||
== anim-discrete-sum-none-1.svg anim-standard-ref.svg
|
== anim-discrete-sum-none-1.svg anim-standard-ref.svg
|
||||||
== anim-discrete-sum-sum-1.svg anim-standard-ref.svg
|
== anim-discrete-sum-sum-1.svg anim-standard-ref.svg
|
||||||
|
|
|
@ -76,8 +76,6 @@ nsresult nsDeflateConverter::Init()
|
||||||
case WRAP_GZIP:
|
case WRAP_GZIP:
|
||||||
window += 16;
|
window += 16;
|
||||||
break;
|
break;
|
||||||
default:
|
|
||||||
break;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
zerr = deflateInit2(&mZstream, mLevel, Z_DEFLATED, window, 8,
|
zerr = deflateInit2(&mZstream, mLevel, Z_DEFLATED, window, 8,
|
||||||
|
|
|
@ -52,7 +52,7 @@ ifdef MOZ_THUMB2 #{
|
||||||
# work around it by telling gcc that the THUMB frame pointer is a
|
# work around it by telling gcc that the THUMB frame pointer is a
|
||||||
# vanilla callee-save register.
|
# vanilla callee-save register.
|
||||||
OS_CXXFLAGS += -fomit-frame-pointer
|
OS_CXXFLAGS += -fomit-frame-pointer
|
||||||
MOZ_OPTIMIZE_FLAGS := $(filter-out -fno-omit-frame-pointer,$(MOZ_OPTIMIZE_FLAGS))
|
MOZ_FRAMEPTR_FLAGS := -fomit-frame-pointer
|
||||||
endif #}
|
endif #}
|
||||||
|
|
||||||
MODULE = handler
|
MODULE = handler
|
||||||
|
|
|
@ -397,8 +397,18 @@ endif
|
||||||
|
|
||||||
ifdef MOZ_OMNIJAR
|
ifdef MOZ_OMNIJAR
|
||||||
|
|
||||||
|
# Set MOZ_CAN_RUN_PROGRAMS for trivial cases.
|
||||||
|
ifndef MOZ_CAN_RUN_PROGRAMS
|
||||||
|
ifdef UNIVERSAL_BINARY
|
||||||
|
MOZ_CAN_RUN_PROGRAMS=1
|
||||||
|
endif
|
||||||
|
ifndef CROSS_COMPILE
|
||||||
|
MOZ_CAN_RUN_PROGRAMS=1
|
||||||
|
endif
|
||||||
|
endif # MOZ_CAN_RUN_PROGRAMS
|
||||||
|
|
||||||
ifdef GENERATE_CACHE
|
ifdef GENERATE_CACHE
|
||||||
ifneq (1_,$(if $(CROSS_COMPILE),1,0)_$(UNIVERSAL_BINARY))
|
ifdef MOZ_CAN_RUN_PROGRAMS
|
||||||
ifdef RUN_TEST_PROGRAM
|
ifdef RUN_TEST_PROGRAM
|
||||||
_ABS_RUN_TEST_PROGRAM = $(call core_abspath,$(RUN_TEST_PROGRAM))
|
_ABS_RUN_TEST_PROGRAM = $(call core_abspath,$(RUN_TEST_PROGRAM))
|
||||||
endif
|
endif
|
||||||
|
@ -477,7 +487,7 @@ endif
|
||||||
|
|
||||||
# dummy macro if we don't have PSM built
|
# dummy macro if we don't have PSM built
|
||||||
SIGN_NSS =
|
SIGN_NSS =
|
||||||
ifneq (1_,$(if $(CROSS_COMPILE),1,0)_$(UNIVERSAL_BINARY))
|
ifdef MOZ_CAN_RUN_PROGRAMS
|
||||||
ifdef MOZ_PSM
|
ifdef MOZ_PSM
|
||||||
SIGN_NSS = @echo signing nss libraries;
|
SIGN_NSS = @echo signing nss libraries;
|
||||||
|
|
||||||
|
|
|
@ -171,11 +171,12 @@ Java_org_mozilla_gecko_GeckoAppShell_onChangeNetworkLinkStatus(JNIEnv *jenv, jcl
|
||||||
}
|
}
|
||||||
|
|
||||||
NS_EXPORT void JNICALL
|
NS_EXPORT void JNICALL
|
||||||
Java_org_mozilla_gecko_GeckoAppShell_reportJavaCrash(JNIEnv *jenv, jclass, jstring stack)
|
Java_org_mozilla_gecko_GeckoAppShell_reportJavaCrash(JNIEnv *, jclass, jstring stack)
|
||||||
{
|
{
|
||||||
#ifdef MOZ_CRASHREPORTER
|
#ifdef MOZ_CRASHREPORTER
|
||||||
nsJNIString javaStack(stack, jenv);
|
nsJNIString javaStack(stack);
|
||||||
CrashReporter::AppendAppNotesToCrashReport(NS_ConvertUTF16toUTF8(javaStack));
|
CrashReporter::AppendAppNotesToCrashReport(
|
||||||
|
NS_ConvertUTF16toUTF8(javaStack));
|
||||||
#endif
|
#endif
|
||||||
abort();
|
abort();
|
||||||
}
|
}
|
||||||
|
|
|
@ -69,10 +69,14 @@ ifeq (Darwin,$(OS_ARCH))
|
||||||
ifeq (86,$(findstring 86,$(OS_TEST)))
|
ifeq (86,$(findstring 86,$(OS_TEST)))
|
||||||
ifneq (x86_64,$(OS_TEST))
|
ifneq (x86_64,$(OS_TEST))
|
||||||
# If we compile xptcinvoke_unixish_x86.cpp with -fomit-frame-pointer
|
# If we compile xptcinvoke_unixish_x86.cpp with -fomit-frame-pointer
|
||||||
# we end up crashing on startup, presumably because of the %esp munging we do
|
# we end up crashing on startup. This is because
|
||||||
# when KEEP_STACK_16_BYTE_ALIGNED. So let's not use that flag here.
|
# "movl %5, %%eax\n\t" /* function index */
|
||||||
# NOTE: MODULE_OPTIMIZE_FLAGS must be set before including config.mk
|
# becomes
|
||||||
MODULE_OPTIMIZE_FLAGS=-O3
|
# mov 0x1c(%esp),%eax
|
||||||
|
# but we have modified esp.
|
||||||
|
# NOTE: MOZ_FRAMEPTR_FLAGS must be set before including config.mk
|
||||||
|
# FIXME: change the file instead of using this hack.
|
||||||
|
MOZ_FRAMEPTR_FLAGS=-fno-omit-frame-pointer
|
||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
|
|
Загрузка…
Ссылка в новой задаче