Merge m-i to m-c, a=merge

This commit is contained in:
Phil Ringnalda 2014-12-20 12:17:31 -08:00
commit aa978f397e
11 changed files with 40 additions and 23 deletions

View File

@ -1396,17 +1396,12 @@ nsHTMLCopyEncoder::SetSelection(nsISelection* aSelection)
nullptr, nullptr);
if (styleContext) {
const nsStyleText* textStyle = styleContext->StyleText();
switch (textStyle->mWhiteSpace) {
case NS_STYLE_WHITESPACE_PRE:
case NS_STYLE_WHITESPACE_PRE_WRAP:
case NS_STYLE_WHITESPACE_PRE_LINE:
case NS_STYLE_WHITESPACE_PRE_SPACE:
if (textStyle->WhiteSpaceOrNewlineIsSignificant()) {
// Copy as plaintext for all preformatted elements
mIsTextWidget = true;
break;
}
break;
}
break;
}
}

View File

@ -90,6 +90,7 @@ extern const Class DebuggerSource_class;
enum {
JSSLOT_DEBUGSOURCE_OWNER,
JSSLOT_DEBUGSOURCE_TEXT,
JSSLOT_DEBUGSOURCE_COUNT
};
@ -4848,7 +4849,7 @@ DebuggerSource_construct(JSContext *cx, unsigned argc, Value *vp)
return false;
}
static JSObject *
static NativeObject *
DebuggerSource_checkThis(JSContext *cx, const CallArgs &args, const char *fnname)
{
if (!args.thisv().isObject()) {
@ -4863,18 +4864,20 @@ DebuggerSource_checkThis(JSContext *cx, const CallArgs &args, const char *fnname
return nullptr;
}
NativeObject *nthisobj = &thisobj->as<NativeObject>();
if (!GetSourceReferent(thisobj)) {
JS_ReportErrorNumber(cx, js_GetErrorMessage, nullptr, JSMSG_INCOMPATIBLE_PROTO,
"Debugger.Frame", fnname, "prototype object");
return nullptr;
}
return thisobj;
return nthisobj;
}
#define THIS_DEBUGSOURCE_REFERENT(cx, argc, vp, fnname, args, obj, sourceObject) \
CallArgs args = CallArgsFromVp(argc, vp); \
RootedObject obj(cx, DebuggerSource_checkThis(cx, args, fnname)); \
RootedNativeObject obj(cx, DebuggerSource_checkThis(cx, args, fnname)); \
if (!obj) \
return false; \
RootedScriptSource sourceObject(cx, GetSourceReferent(obj)); \
@ -4885,6 +4888,12 @@ static bool
DebuggerSource_getText(JSContext *cx, unsigned argc, Value *vp)
{
THIS_DEBUGSOURCE_REFERENT(cx, argc, vp, "(get text)", args, obj, sourceObject);
Value textv = obj->getReservedSlot(JSSLOT_DEBUGSOURCE_TEXT);
if (!textv.isUndefined()) {
MOZ_ASSERT(textv.isString());
args.rval().set(textv);
return true;
}
ScriptSource *ss = sourceObject->source();
bool hasSourceData = ss->hasSourceData();
@ -4897,6 +4906,7 @@ DebuggerSource_getText(JSContext *cx, unsigned argc, Value *vp)
return false;
args.rval().setString(str);
obj->setReservedSlot(JSSLOT_DEBUGSOURCE_TEXT, args.rval());
return true;
}

View File

@ -149,3 +149,5 @@ if CONFIG['OS_TARGET'] in ('Linux', 'DragonFly', 'FreeBSD', 'NetBSD',
if CONFIG['OS_TARGET'] == 'Darwin':
OS_LIBS += CONFIG['TK_LIBS']
FAIL_ON_WARNINGS = True

View File

@ -1513,7 +1513,7 @@ TEST_P(NewSdpTest, CheckFormatParameters) {
video_format_params[0].parameters.get()));
ASSERT_EQ((uint32_t)0x42a01e, h264_parameters->profile_level_id);
ASSERT_EQ(0U, h264_parameters->packetization_mode);
ASSERT_EQ(false, h264_parameters->level_asymmetry_allowed);
ASSERT_FALSE(static_cast<bool>(h264_parameters->level_asymmetry_allowed));
ASSERT_EQ(0U, h264_parameters->max_mbps);
ASSERT_EQ(0U, h264_parameters->max_fs);
ASSERT_EQ(0U, h264_parameters->max_cpb);
@ -1529,7 +1529,7 @@ TEST_P(NewSdpTest, CheckFormatParameters) {
video_format_params[1].parameters.get());
ASSERT_EQ((uint32_t)0x42a00d, h264_parameters->profile_level_id);
ASSERT_EQ(1U, h264_parameters->packetization_mode);
ASSERT_EQ(true, h264_parameters->level_asymmetry_allowed);
ASSERT_TRUE(static_cast<bool>(h264_parameters->level_asymmetry_allowed));
ASSERT_EQ(42000U, h264_parameters->max_mbps);
ASSERT_EQ(1400U, h264_parameters->max_fs);
ASSERT_EQ(1000U, h264_parameters->max_cpb);

View File

@ -14,15 +14,15 @@ public class testBackButtonInEditMode extends UITest {
// Verify back button behavior for edit mode.
mToolbar.enterEditingMode()
.assertIsUrlEditTextSelected();
testBackPressInEditMode();
testExitUsingBackButton();
checkBackPressInEditMode();
checkExitUsingBackButton();
// Verify back button behavior in edit mode after input.
mToolbar.enterEditingMode()
.enterUrl("dummy")
.assertIsUrlEditTextSelected();
testBackPressInEditMode();
testExitUsingBackButton();
checkBackPressInEditMode();
checkExitUsingBackButton();
// Verify the swipe behavior in edit mode.
mToolbar.enterEditingMode()
@ -30,17 +30,17 @@ public class testBackButtonInEditMode extends UITest {
mAboutHome.swipeToPanelOnLeft();
mToolbar.assertIsUrlEditTextNotSelected()
.assertIsEditing();
testExitUsingBackButton();
checkExitUsingBackButton();
}
public void testBackPressInEditMode() {
private void checkBackPressInEditMode() {
// Press back button and verify URLEditText is not selected.
getSolo().goBack();
mToolbar.assertIsUrlEditTextNotSelected()
.assertIsEditing();
}
public void testExitUsingBackButton() {
private void checkExitUsingBackButton() {
getSolo().goBack();
mToolbar.assertIsNotEditing();
}

View File

@ -170,5 +170,5 @@ CXXFLAGS += CONFIG['MOZ_DBUS_GLIB_CFLAGS']
if CONFIG['MOZ_WIDGET_GTK']:
CXXFLAGS += CONFIG['MOZ_PANGO_CFLAGS']
if CONFIG['OS_TARGET'] != 'Darwin':
if CONFIG['_MSC_VER']:
FAIL_ON_WARNINGS = True

View File

@ -4,5 +4,4 @@ tail =
[test_encoding.js]
# Bug 676995: test hangs consistently on Android
# Bug 984194: broken on comm-central
skip-if = (os == "android" || buildapp == '../mail')
skip-if = (os == "android")

View File

@ -0,0 +1,5 @@
<form method=post enctype=multipart/form-data action="data:text/html,"><textarea name='file"; filename="filename.ext
'></textarea>
<script>
document.forms[0].submit();
</script>

View File

@ -0,0 +1,2 @@
<!DOCTYPE html>
<iframe src="1113005-frame.html"></iframe>

View File

@ -1,2 +1,3 @@
load 394275-1.html
load 395651-1.html
load 1113005.html

View File

@ -499,13 +499,16 @@ nsTString_CharT::ReplaceSubstring( const self_type& aTarget, const self_type& aN
}
// Make sure that we can mutate our buffer.
// Note that we always allocate at least an mLength sized buffer, because the
// rest of the algorithm relies on having access to all of the original
// string. In other words, we over-allocate in the shrinking case.
char_type* oldData;
uint32_t oldFlags;
if (!MutatePrep(XPCOM_MAX(mLength, newLength), &oldData, &oldFlags))
return;
if (oldData) {
// Copy all of the old data to the new buffer.
char_traits::copy(mData, oldData, XPCOM_MAX(mLength, newLength));
char_traits::copy(mData, oldData, mLength);
::ReleaseData(oldData, oldFlags);
}