mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-11-25 05:41:12 +00:00
Revert to changeset e6fc4594c22e which was the last one to get a green Win7 tp run
This commit is contained in:
parent
92f6958e72
commit
44916171a8
1
aclocal.m4
vendored
1
aclocal.m4
vendored
@ -16,6 +16,7 @@ builtin(include, build/autoconf/mozheader.m4)dnl
|
||||
builtin(include, build/autoconf/acwinpaths.m4)dnl
|
||||
builtin(include, build/autoconf/lto.m4)dnl
|
||||
builtin(include, build/autoconf/gcc-pr49911.m4)dnl
|
||||
builtin(include, build/autoconf/frameptr.m4)dnl
|
||||
|
||||
MOZ_PROG_CHECKMSYS()
|
||||
|
||||
|
@ -1,7 +1,8 @@
|
||||
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/");
|
||||
// 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
|
||||
// background (in seconds)
|
||||
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_welcome_url","http://www.mozilla.org/projects/%APP%/%VERSION%/firstrun/");
|
||||
// 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
|
||||
// background (in seconds)
|
||||
pref("app.update.download.backgroundInterval", 60);
|
||||
|
@ -2,5 +2,6 @@ amazondotcom
|
||||
bing
|
||||
eBay
|
||||
google
|
||||
twitter
|
||||
wikipedia
|
||||
yahoo
|
||||
|
11
browser/locales/en-US/searchplugins/twitter.xml
Normal file
11
browser/locales/en-US/searchplugins/twitter.xml
Normal file
@ -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>
|
25
build/autoconf/frameptr.m4
Normal file
25
build/autoconf/frameptr.m4
Normal file
@ -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@
|
||||
|
||||
MOZ_OPTIMIZE = @MOZ_OPTIMIZE@
|
||||
MOZ_FRAMEPTR_FLAGS = @MOZ_FRAMEPTR_FLAGS@
|
||||
MOZ_OPTIMIZE_FLAGS = @MOZ_OPTIMIZE_FLAGS@
|
||||
MOZ_PGO_OPTIMIZE_FLAGS = @MOZ_PGO_OPTIMIZE_FLAGS@
|
||||
MOZ_OPTIMIZE_LDFLAGS = @MOZ_OPTIMIZE_LDFLAGS@
|
||||
|
@ -463,6 +463,9 @@ endif # MOZ_OPTIMIZE == 1
|
||||
endif # MOZ_OPTIMIZE
|
||||
endif # CROSS_COMPILE
|
||||
|
||||
CFLAGS += $(MOZ_FRAMEPTR_FLAGS)
|
||||
CXXFLAGS += $(MOZ_FRAMEPTR_FLAGS)
|
||||
|
||||
# Check for FAIL_ON_WARNINGS & FAIL_ON_WARNINGS_DEBUG (Shorthand for Makefiles
|
||||
# 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*)
|
||||
MKSHLIB='$(CXX) $(CXXFLAGS) $(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.
|
||||
if test -z "$MOZ_PROFILING"; then
|
||||
MOZ_OPTIMIZE_FLAGS="-O3 -fomit-frame-pointer"
|
||||
else
|
||||
MOZ_OPTIMIZE_FLAGS="-O3 -fno-omit-frame-pointer"
|
||||
fi
|
||||
MOZ_OPTIMIZE_FLAGS="-O3"
|
||||
_PEDANTIC=
|
||||
CFLAGS="$CFLAGS -fno-common"
|
||||
CXXFLAGS="$CXXFLAGS -fno-common"
|
||||
@ -2188,12 +2183,7 @@ ia64*-hpux*)
|
||||
TARGET_NSPR_MDCPUCFG='\"md/_linux.cfg\"'
|
||||
|
||||
MOZ_GFX_OPTIMIZE_MOBILE=1
|
||||
# If we're building with --enable-profiling, we need a frame pointer.
|
||||
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
|
||||
MOZ_OPTIMIZE_FLAGS="-Os -freorder-blocks -fno-reorder-functions"
|
||||
;;
|
||||
|
||||
*-*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.
|
||||
MOZ_OPTIMIZE_SIZE_TWEAK="-finline-limit=50"
|
||||
esac
|
||||
# If we're building with --enable-profiling, we need a frame pointer.
|
||||
if test -z "$MOZ_PROFILING"; then
|
||||
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_PGO_OPTIMIZE_FLAGS="-O3"
|
||||
MOZ_OPTIMIZE_FLAGS="-Os -freorder-blocks $MOZ_OPTIMIZE_SIZE_TWEAK"
|
||||
MOZ_DEBUG_FLAGS="-g"
|
||||
fi
|
||||
|
||||
@ -2315,12 +2299,7 @@ ia64*-hpux*)
|
||||
MOZ_DEBUG_FLAGS='-Zi'
|
||||
MOZ_DEBUG_LDFLAGS='-DEBUG -DEBUGTYPE:CV'
|
||||
WARNINGS_AS_ERRORS='-WX'
|
||||
# If we're building with --enable-profiling, we need -Oy-, which forces a frame pointer.
|
||||
if test -z "$MOZ_PROFILING"; then
|
||||
MOZ_OPTIMIZE_FLAGS='-O1'
|
||||
else
|
||||
MOZ_OPTIMIZE_FLAGS='-O1 -Oy-'
|
||||
fi
|
||||
MOZ_OPTIMIZE_FLAGS='-O1'
|
||||
MOZ_FIX_LINK_PATHS=
|
||||
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'
|
||||
@ -6897,6 +6876,8 @@ else
|
||||
MOZ_OPTIMIZE=
|
||||
fi ], MOZ_OPTIMIZE=1)
|
||||
|
||||
MOZ_SET_FRAMEPTR_FLAGS
|
||||
|
||||
if test "$COMPILE_ENVIRONMENT"; then
|
||||
if test -n "$MOZ_OPTIMIZE"; then
|
||||
AC_MSG_CHECKING([for valid optimization flags])
|
||||
@ -6915,6 +6896,7 @@ fi
|
||||
fi # COMPILE_ENVIRONMENT
|
||||
|
||||
AC_SUBST(MOZ_OPTIMIZE)
|
||||
AC_SUBST(MOZ_FRAMEPTR_FLAGS)
|
||||
AC_SUBST(MOZ_OPTIMIZE_FLAGS)
|
||||
AC_SUBST(MOZ_OPTIMIZE_LDFLAGS)
|
||||
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>
|
Before Width: | Height: | Size: 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>
|
Before Width: | Height: | Size: 346 B |
@ -37,8 +37,6 @@ load 615872-1.svg
|
||||
load 650732-1.svg
|
||||
load 665334-1.svg
|
||||
load 669225-1.svg
|
||||
load 669225-2.svg
|
||||
load 670313-1.svg
|
||||
load 669225-2.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)) {
|
||||
double scaledSimpleProgress =
|
||||
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()) {
|
||||
// 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
|
||||
|
@ -758,10 +758,10 @@ nsSMILTimedElement::Rewind()
|
||||
mSeekState == SEEK_BACKWARD_FROM_ACTIVE,
|
||||
"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 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);
|
||||
UnsetEndSpec(RemoveNonDynamic);
|
||||
@ -784,8 +784,6 @@ nsSMILTimedElement::Rewind()
|
||||
|
||||
mPrevRegisteredMilestone = sMaxMilestone;
|
||||
RegisterMilestone();
|
||||
NS_ABORT_IF_FALSE(!mCurrentInterval,
|
||||
"Current interval is set at end of rewind");
|
||||
}
|
||||
|
||||
namespace
|
||||
@ -1334,9 +1332,7 @@ nsSMILTimedElement::ClearSpecs(TimeValueSpecList& aSpecs,
|
||||
void
|
||||
nsSMILTimedElement::ClearIntervals()
|
||||
{
|
||||
if (mElementState != STATE_STARTUP) {
|
||||
mElementState = STATE_POSTACTIVE;
|
||||
}
|
||||
mElementState = STATE_POSTACTIVE;
|
||||
mCurrentRepeatIteration = 0;
|
||||
ResetCurrentInterval();
|
||||
|
||||
@ -1688,15 +1684,14 @@ nsSMILTimedElement::GetNextInterval(const nsSMILInterval* aPrevInterval,
|
||||
// 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
|
||||
// an end instance provided by a DOM call), OR
|
||||
// b) We have no resolved (not incl. indefinite) end instances
|
||||
// (SMIL only says "if the instance list is empty"--but if we have
|
||||
// indefinite/unresolved instance times then there must be a good
|
||||
// reason we haven't used them (since they'll be >= tempBegin) such as
|
||||
// avoiding creating a self-referential loop. In any case, the interval
|
||||
// should be allowed to be open.), OR
|
||||
// b) We have an end attribute but no end instances--this is a special
|
||||
// case that is needed for syncbase timing so that animations of the
|
||||
// following sort: <animate id="a" end="a.begin+1s" ... /> can be
|
||||
// resolved (see SVGT 1.2 Test Suite animate-elem-221-t.svg) by first
|
||||
// establishing an interval of unresolved duration, OR
|
||||
// c) We have end events which leave the interval open-ended.
|
||||
PRBool openEndedIntervalOk = mEndSpecs.IsEmpty() ||
|
||||
!HaveResolvedEndTimes() ||
|
||||
mEndInstances.IsEmpty() ||
|
||||
EndHasEventConditions();
|
||||
if (!tempEnd && !openEndedIntervalOk)
|
||||
return PR_FALSE; // Bad interval
|
||||
@ -2253,17 +2248,6 @@ nsSMILTimedElement::GetPreviousInterval() const
|
||||
: 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
|
||||
nsSMILTimedElement::EndHasEventConditions() const
|
||||
{
|
||||
|
@ -525,7 +525,6 @@ protected:
|
||||
const nsSMILInstanceTime* GetEffectiveBeginInstance() const;
|
||||
const nsSMILInterval* GetPreviousInterval() const;
|
||||
PRBool HasPlayed() const { return !mOldIntervals.IsEmpty(); }
|
||||
PRBool HaveResolvedEndTimes() const;
|
||||
PRBool EndHasEventConditions() const;
|
||||
|
||||
// Reset the current interval by first passing ownership to a temporary
|
||||
|
@ -48,6 +48,7 @@
|
||||
#include "AccessCheck.h"
|
||||
|
||||
#include "xpcprivate.h"
|
||||
#include "XPCWrapper.h"
|
||||
|
||||
#include "nscore.h"
|
||||
#include "nsDOMClassInfo.h"
|
||||
@ -516,7 +517,6 @@ static const char kDOMStringBundleURL[] =
|
||||
|
||||
#define WINDOW_SCRIPTABLE_FLAGS \
|
||||
(nsIXPCScriptable::WANT_GETPROPERTY | \
|
||||
nsIXPCScriptable::WANT_SETPROPERTY | \
|
||||
nsIXPCScriptable::WANT_PRECREATE | \
|
||||
nsIXPCScriptable::WANT_FINALIZE | \
|
||||
nsIXPCScriptable::WANT_EQUALITY | \
|
||||
@ -5269,39 +5269,6 @@ nsWindowSH::GetProperty(nsIXPConnectWrappedNative *wrapper, JSContext *cx,
|
||||
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
|
||||
nsWindowSH::Enumerate(nsIXPConnectWrappedNative *wrapper, JSContext *cx,
|
||||
JSObject *obj, PRBool *_retval)
|
||||
@ -6392,6 +6359,68 @@ static JSNewResolveOp sOtherResolveFuncs[] = {
|
||||
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
|
||||
nsWindowSH::NewResolve(nsIXPConnectWrappedNative *wrapper, JSContext *cx,
|
||||
JSObject *obj, jsid id, PRUint32 flags,
|
||||
@ -6544,7 +6573,8 @@ nsWindowSH::NewResolve(nsIXPConnectWrappedNative *wrapper, JSContext *cx,
|
||||
NS_ENSURE_SUCCESS(rv, rv);
|
||||
|
||||
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);
|
||||
|
||||
if (!ok) {
|
||||
@ -8177,7 +8207,8 @@ nsDocumentSH::NewResolve(nsIXPConnectWrappedNative *wrapper, JSContext *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);
|
||||
|
||||
if (!ok) {
|
||||
@ -8222,34 +8253,6 @@ NS_IMETHODIMP
|
||||
nsDocumentSH::SetProperty(nsIXPConnectWrappedNative *wrapper, JSContext *cx,
|
||||
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()) {
|
||||
// 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.
|
||||
|
@ -407,8 +407,6 @@ public:
|
||||
#endif
|
||||
NS_IMETHOD GetProperty(nsIXPConnectWrappedNative *wrapper, JSContext *cx,
|
||||
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,
|
||||
JSObject *obj, PRBool *_retval);
|
||||
NS_IMETHOD NewResolve(nsIXPConnectWrappedNative *wrapper, JSContext *cx,
|
||||
|
@ -55,6 +55,7 @@ _TEST_FILES = \
|
||||
test_location.html \
|
||||
test_innerWidthHeight_script.html \
|
||||
innerWidthHeight_script.html \
|
||||
test_location_setters.html \
|
||||
$(NULL)
|
||||
|
||||
libs:: $(_TEST_FILES)
|
||||
|
78
dom/tests/mochitest/dom-level0/test_location_setters.html
Normal file
78
dom/tests/mochitest/dom-level0/test_location_setters.html
Normal file
@ -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
|
||||
nsAutoString preferedDict(Preferences::GetLocalizedString("spellchecker.dictionary"));
|
||||
if (dictName.IsEmpty()) {
|
||||
dictName.Assign(Preferences::GetLocalizedString("spellchecker.dictionary"));
|
||||
dictName.Assign(preferedDict);
|
||||
}
|
||||
|
||||
if (dictName.IsEmpty())
|
||||
@ -755,27 +756,50 @@ nsEditorSpellCheck::UpdateCurrentDictionary()
|
||||
rv = SetCurrentDictionary(dictName);
|
||||
if (NS_FAILED(rv)) {
|
||||
// required dictionary was not available. Try to get a dictionary
|
||||
// matching at least language part of dictName: If required dictionary is
|
||||
// "aa-bb", we try "aa", then we try any available dictionary aa-XX
|
||||
// matching at least language part of dictName:
|
||||
|
||||
nsAutoString langCode;
|
||||
PRInt32 dashIdx = dictName.FindChar('-');
|
||||
if (dashIdx != -1) {
|
||||
langCode.Assign(Substring(dictName, 0, dashIdx));
|
||||
// try to use langCode
|
||||
rv = SetCurrentDictionary(langCode);
|
||||
} else {
|
||||
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)) {
|
||||
// loop over avaible dictionaries; if we find one with required
|
||||
// language, use it
|
||||
nsTArray<nsString> dictList;
|
||||
rv = mSpellChecker->GetDictionaryList(&dictList);
|
||||
NS_ENSURE_SUCCESS(rv, rv);
|
||||
nsDefaultStringComparator comparator;
|
||||
PRInt32 i, count = dictList.Length();
|
||||
for (i = 0; i < count; 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) &&
|
||||
NS_SUCCEEDED(SetCurrentDictionary(dictStr))) {
|
||||
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.
|
||||
|
||||
lround-c99-only.patch: Only use lround in C99 programs.
|
||||
|
||||
==== pixman patches ====
|
||||
|
||||
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
|
||||
* 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
|
||||
|
@ -974,7 +974,7 @@ _cairo_round (double r)
|
||||
return floor (r + .5);
|
||||
}
|
||||
|
||||
#if DISABLE_SOME_FLOATING_POINT || __STDC_VERSION__ < 199901L
|
||||
#if DISABLE_SOME_FLOATING_POINT
|
||||
cairo_private int
|
||||
_cairo_lround (double d) cairo_const;
|
||||
#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;
|
1
js/src/aclocal.m4
vendored
1
js/src/aclocal.m4
vendored
@ -11,5 +11,6 @@ builtin(include, build/autoconf/mozprog.m4)dnl
|
||||
builtin(include, build/autoconf/acwinpaths.m4)dnl
|
||||
builtin(include, build/autoconf/lto.m4)dnl
|
||||
builtin(include, build/autoconf/gcc-pr49911.m4)dnl
|
||||
builtin(include, build/autoconf/frameptr.m4)dnl
|
||||
|
||||
MOZ_PROG_CHECKMSYS()
|
||||
|
25
js/src/build/autoconf/frameptr.m4
Normal file
25
js/src/build/autoconf/frameptr.m4
Normal file
@ -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@
|
||||
|
||||
MOZ_OPTIMIZE = @MOZ_OPTIMIZE@
|
||||
MOZ_FRAMEPTR_FLAGS = @MOZ_FRAMEPTR_FLAGS@
|
||||
MOZ_OPTIMIZE_FLAGS = @MOZ_OPTIMIZE_FLAGS@
|
||||
MOZ_PGO_OPTIMIZE_FLAGS = @MOZ_PGO_OPTIMIZE_FLAGS@
|
||||
MOZ_OPTIMIZE_LDFLAGS = @MOZ_OPTIMIZE_LDFLAGS@
|
||||
|
@ -463,6 +463,9 @@ endif # MOZ_OPTIMIZE == 1
|
||||
endif # MOZ_OPTIMIZE
|
||||
endif # CROSS_COMPILE
|
||||
|
||||
CFLAGS += $(MOZ_FRAMEPTR_FLAGS)
|
||||
CXXFLAGS += $(MOZ_FRAMEPTR_FLAGS)
|
||||
|
||||
# Check for FAIL_ON_WARNINGS & FAIL_ON_WARNINGS_DEBUG (Shorthand for Makefiles
|
||||
# to request that we use the 'warnings as errors' compile flags)
|
||||
|
||||
|
@ -1972,13 +1972,7 @@ case "$target" in
|
||||
*-darwin*)
|
||||
MKSHLIB='$(CXX) $(CXXFLAGS) $(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.
|
||||
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"
|
||||
MOZ_OPTIMIZE_FLAGS="-O3 -fno-stack-protector"
|
||||
_PEDANTIC=
|
||||
CFLAGS="$CFLAGS -fpascal-strings -fno-common"
|
||||
CXXFLAGS="$CXXFLAGS -fpascal-strings -fno-common"
|
||||
@ -2083,13 +2077,7 @@ ia64*-hpux*)
|
||||
TARGET_NSPR_MDCPUCFG='\"md/_linux.cfg\"'
|
||||
|
||||
MOZ_GFX_OPTIMIZE_MOBILE=1
|
||||
# If we're building with --enable-profiling, we need a frame pointer.
|
||||
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"
|
||||
MOZ_OPTIMIZE_FLAGS="-O3 -freorder-blocks -fno-reorder-functions"
|
||||
# The Maemo builders don't know about this flag
|
||||
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.
|
||||
MOZ_OPTIMIZE_SIZE_TWEAK="-finline-limit=50"
|
||||
esac
|
||||
# If we're building with --enable-profiling, we need a frame pointer.
|
||||
if test -z "$MOZ_PROFILING"; then
|
||||
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_PGO_OPTIMIZE_FLAGS="-O3"
|
||||
MOZ_OPTIMIZE_FLAGS="-O3 -freorder-blocks $MOZ_OPTIMIZE_SIZE_TWEAK"
|
||||
MOZ_DEBUG_FLAGS="-g"
|
||||
fi
|
||||
|
||||
@ -2236,13 +2218,7 @@ ia64*-hpux*)
|
||||
MOZ_DEBUG_FLAGS='-Zi'
|
||||
MOZ_DEBUG_LDFLAGS='-DEBUG -DEBUGTYPE:CV'
|
||||
WARNINGS_AS_ERRORS='-WX'
|
||||
# If we're building with --enable-profiling, we need -Oy-, which forces a frame pointer.
|
||||
if test -z "$MOZ_PROFILING"; then
|
||||
MOZ_FRAMEPTR_FLAGS=
|
||||
else
|
||||
MOZ_FRAMEPTR_FLAGS='-Oy-'
|
||||
fi
|
||||
MOZ_OPTIMIZE_FLAGS="-O2 $MOZ_FRAMEPTR_FLAGS"
|
||||
MOZ_OPTIMIZE_FLAGS="-O2"
|
||||
MOZ_JS_LIBS='$(libdir)/mozjs.lib'
|
||||
MOZ_FIX_LINK_PATHS=
|
||||
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=
|
||||
fi ], MOZ_OPTIMIZE=1)
|
||||
|
||||
MOZ_SET_FRAMEPTR_FLAGS
|
||||
|
||||
if test "$COMPILE_ENVIRONMENT"; then
|
||||
if test -n "$MOZ_OPTIMIZE"; then
|
||||
AC_MSG_CHECKING([for valid optimization flags])
|
||||
@ -4411,6 +4389,7 @@ fi
|
||||
fi # COMPILE_ENVIRONMENT
|
||||
|
||||
AC_SUBST(MOZ_OPTIMIZE)
|
||||
AC_SUBST(MOZ_FRAMEPTR_FLAGS)
|
||||
AC_SUBST(MOZ_OPTIMIZE_FLAGS)
|
||||
AC_SUBST(MOZ_OPTIMIZE_LDFLAGS)
|
||||
AC_SUBST(MOZ_OPTIMIZE_SIZE_TWEAK)
|
||||
|
@ -17171,6 +17171,7 @@ LoopProfile::profileOperation(JSContext* cx, JSOp op)
|
||||
stackPush(StackValue(v1.isConst && v2.isConst));
|
||||
} else if (op == JSOP_AND) {
|
||||
bool b = !!js_ValueToBoolean(cx->regs().sp[-1]);
|
||||
StackValue v = stackAt(-1);
|
||||
if (b)
|
||||
stackPop();
|
||||
} 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>
|
Before Width: | Height: | Size: 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>
|
Before Width: | Height: | Size: 1.1 KiB |
@ -55,8 +55,6 @@ include event/reftest.list
|
||||
|
||||
# General tests
|
||||
== 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-sum-none-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:
|
||||
window += 16;
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
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
|
||||
# vanilla callee-save register.
|
||||
OS_CXXFLAGS += -fomit-frame-pointer
|
||||
MOZ_OPTIMIZE_FLAGS := $(filter-out -fno-omit-frame-pointer,$(MOZ_OPTIMIZE_FLAGS))
|
||||
MOZ_FRAMEPTR_FLAGS := -fomit-frame-pointer
|
||||
endif #}
|
||||
|
||||
MODULE = handler
|
||||
|
@ -397,8 +397,18 @@ endif
|
||||
|
||||
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
|
||||
ifneq (1_,$(if $(CROSS_COMPILE),1,0)_$(UNIVERSAL_BINARY))
|
||||
ifdef MOZ_CAN_RUN_PROGRAMS
|
||||
ifdef RUN_TEST_PROGRAM
|
||||
_ABS_RUN_TEST_PROGRAM = $(call core_abspath,$(RUN_TEST_PROGRAM))
|
||||
endif
|
||||
@ -477,7 +487,7 @@ endif
|
||||
|
||||
# dummy macro if we don't have PSM built
|
||||
SIGN_NSS =
|
||||
ifneq (1_,$(if $(CROSS_COMPILE),1,0)_$(UNIVERSAL_BINARY))
|
||||
ifdef MOZ_CAN_RUN_PROGRAMS
|
||||
ifdef MOZ_PSM
|
||||
SIGN_NSS = @echo signing nss libraries;
|
||||
|
||||
|
@ -171,11 +171,12 @@ Java_org_mozilla_gecko_GeckoAppShell_onChangeNetworkLinkStatus(JNIEnv *jenv, jcl
|
||||
}
|
||||
|
||||
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
|
||||
nsJNIString javaStack(stack, jenv);
|
||||
CrashReporter::AppendAppNotesToCrashReport(NS_ConvertUTF16toUTF8(javaStack));
|
||||
nsJNIString javaStack(stack);
|
||||
CrashReporter::AppendAppNotesToCrashReport(
|
||||
NS_ConvertUTF16toUTF8(javaStack));
|
||||
#endif
|
||||
abort();
|
||||
}
|
||||
|
@ -69,10 +69,14 @@ ifeq (Darwin,$(OS_ARCH))
|
||||
ifeq (86,$(findstring 86,$(OS_TEST)))
|
||||
ifneq (x86_64,$(OS_TEST))
|
||||
# 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
|
||||
# when KEEP_STACK_16_BYTE_ALIGNED. So let's not use that flag here.
|
||||
# NOTE: MODULE_OPTIMIZE_FLAGS must be set before including config.mk
|
||||
MODULE_OPTIMIZE_FLAGS=-O3
|
||||
# we end up crashing on startup. This is because
|
||||
# "movl %5, %%eax\n\t" /* function index */
|
||||
# becomes
|
||||
# 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
|
||||
|
Loading…
Reference in New Issue
Block a user