[webkit-changes] [210131] trunk/Source/WebCore
Title: [210131] trunk/Source/WebCore Revision 210131 Author rn...@webkit.org Date 2016-12-23 01:11:32 -0800 (Fri, 23 Dec 2016) Log Message Eliminate the use of lastChild in TextIterator https://bugs.webkit.org/show_bug.cgi?id=166456 Reviewed by Antti Koivisto. Just use the node we just existed in TextIterator::exitNode and in emitting additional new line to eliminate the use of Node::lastChild. Also initialize member variables in the declaration instead of the constructor to modernize the code. * editing/TextIterator.cpp: (WebCore::TextIterator::TextIterator): (WebCore::TextIterator::advance): (WebCore::TextIterator::exitNode): * editing/TextIterator.h: Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/editing/TextIterator.cpp trunk/Source/WebCore/editing/TextIterator.h Diff Modified: trunk/Source/WebCore/ChangeLog (210130 => 210131) --- trunk/Source/WebCore/ChangeLog 2016-12-23 04:41:52 UTC (rev 210130) +++ trunk/Source/WebCore/ChangeLog 2016-12-23 09:11:32 UTC (rev 210131) @@ -1,3 +1,21 @@ +2016-12-23 Ryosuke Niwa + +Eliminate the use of lastChild in TextIterator +https://bugs.webkit.org/show_bug.cgi?id=166456 + +Reviewed by Antti Koivisto. + +Just use the node we just existed in TextIterator::exitNode and in emitting additional new line +to eliminate the use of Node::lastChild. + +Also initialize member variables in the declaration instead of the constructor to modernize the code. + +* editing/TextIterator.cpp: +(WebCore::TextIterator::TextIterator): +(WebCore::TextIterator::advance): +(WebCore::TextIterator::exitNode): +* editing/TextIterator.h: + 2016-12-22 Andy Estes Reduce QuickLook.h include overhead Modified: trunk/Source/WebCore/editing/TextIterator.cpp (210130 => 210131) --- trunk/Source/WebCore/editing/TextIterator.cpp 2016-12-23 04:41:52 UTC (rev 210130) +++ trunk/Source/WebCore/editing/TextIterator.cpp 2016-12-23 09:11:32 UTC (rev 210131) @@ -39,6 +39,7 @@ #include "HTMLNames.h" #include "HTMLParagraphElement.h" #include "HTMLProgressElement.h" +#include "HTMLSlotElement.h" #include "HTMLTextAreaElement.h" #include "HTMLTextFormControlElement.h" #include "InlineTextBox.h" @@ -340,23 +341,6 @@ TextIterator::TextIterator(const Range* range, TextIteratorBehavior behavior) : m_behavior(behavior) -, m_handledNode(false) -, m_handledChildren(false) -, m_startContainer(nullptr) -, m_startOffset(0) -, m_endContainer(nullptr) -, m_endOffset(0) -, m_positionNode(nullptr) -, m_needsAnotherNewline(false) -, m_textBox(nullptr) -, m_remainingTextBox(nullptr) -, m_firstLetterText(nullptr) -, m_lastTextNode(nullptr) -, m_lastTextNodeEndedWithCollapsedSpace(false) -, m_lastCharacter(0) -, m_sortedTextBoxesPosition(0) -, m_hasEmitted(false) -, m_handledFirstLetter(false) { // FIXME: Only m_positionNode above needs to be initialized if range is null. if (!range) @@ -407,7 +391,7 @@ m_text = StringView(); // handle remembered node that needed a newline after the text node's newline -if (m_needsAnotherNewline) { +if (m_nodeForAdditionalNewline) { // Emit the extra newline, and position it *inside* m_node, after m_node's // contents, in case it's a block, in the same way that we position the first // newline. The range for the emitted newline should start where the line @@ -414,9 +398,8 @@ // break begins. // FIXME: It would be cleaner if we emitted two newlines during the last // iteration, instead of using m_needsAnotherNewline. -Node& baseNode = m_node->lastChild() ? *m_node->lastChild() : *m_node; -emitCharacter('\n', *baseNode.parentNode(), &baseNode, 1, 1); -m_needsAnotherNewline = false; +emitCharacter('\n', *m_nodeForAdditionalNewline->parentNode(), m_nodeForAdditionalNewline, 1, 1); +m_nodeForAdditionalNewline = nullptr; return; } @@ -475,11 +458,12 @@ if ((pastEnd && parentNode == m_endContainer) || m_endContainer->isDescendantOf(*parentNode)) return; bool haveRenderer = m_node->renderer(); +Node* exitedNode = m_node; m_node = parentNode; m_fullyClippedStack.pop(); parentNode = m_node->parentOrShadowHostNode(); if (haveRenderer) -exitNode(); +exitNode(exitedNode); if (m_positionNode) { m_handledNode = true; m_handledChildren = true; @@ -1096,7 +1080,7 @@ return true; } -void TextIterator::exitNode() +void TextIterator::exitNode(Node* exitedNode) { // prevent emitting a newline when exiting a collapsed block at beginning of the range /
[webkit-changes] [210132] trunk/Source/WebCore
Title: [210132] trunk/Source/WebCore Revision 210132 Author zandober...@gmail.com Date 2016-12-23 01:15:07 -0800 (Fri, 23 Dec 2016) Log Message [EME][GStreamer] Enable various code paths for ENCRYPTED_MEDIA https://bugs.webkit.org/show_bug.cgi?id=166054 Reviewed by Xabier Rodriguez-Calvar. Add ENABLE_ENCRYPTED_MEDIA build guards in various places in GStreamer code to enable decryption-related GStreamer elements and the proper decryptor handling in AppendPipeline. * platform/GStreamer.cmake: * platform/graphics/gstreamer/GStreamerUtilities.cpp: * platform/graphics/gstreamer/GStreamerUtilities.h: * platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp: (WebCore::registerWebKitGStreamerElements): (WebCore::MediaPlayerPrivateGStreamerBase::handleSyncMessage): Only call needKey() if LEGACY_ENCRYPTED_MEDIA is enabled, since this is the way the legacy EME system expects to be notified of key necessity. It's very likely ENCRYPTED_MEDIA will do this differently. * platform/graphics/gstreamer/eme/WebKitClearKeyDecryptorGStreamer.cpp: * platform/graphics/gstreamer/eme/WebKitClearKeyDecryptorGStreamer.h: * platform/graphics/gstreamer/eme/WebKitCommonEncryptionDecryptorGStreamer.cpp: * platform/graphics/gstreamer/eme/WebKitCommonEncryptionDecryptorGStreamer.h: * platform/graphics/gstreamer/mse/AppendPipeline.cpp: (WebCore::AppendPipeline::parseDemuxerSrcPadCaps): (WebCore::AppendPipeline::connectDemuxerSrcPadToAppsinkFromAnyThread): (WebCore::AppendPipeline::disconnectDemuxerSrcPadFromAppsinkFromAnyThread): * platform/graphics/gstreamer/mse/AppendPipeline.h: Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/GStreamer.cmake trunk/Source/WebCore/platform/graphics/gstreamer/GStreamerUtilities.cpp trunk/Source/WebCore/platform/graphics/gstreamer/GStreamerUtilities.h trunk/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp trunk/Source/WebCore/platform/graphics/gstreamer/eme/WebKitClearKeyDecryptorGStreamer.cpp trunk/Source/WebCore/platform/graphics/gstreamer/eme/WebKitClearKeyDecryptorGStreamer.h trunk/Source/WebCore/platform/graphics/gstreamer/eme/WebKitCommonEncryptionDecryptorGStreamer.cpp trunk/Source/WebCore/platform/graphics/gstreamer/eme/WebKitCommonEncryptionDecryptorGStreamer.h trunk/Source/WebCore/platform/graphics/gstreamer/mse/AppendPipeline.cpp trunk/Source/WebCore/platform/graphics/gstreamer/mse/AppendPipeline.h Diff Modified: trunk/Source/WebCore/ChangeLog (210131 => 210132) --- trunk/Source/WebCore/ChangeLog 2016-12-23 09:11:32 UTC (rev 210131) +++ trunk/Source/WebCore/ChangeLog 2016-12-23 09:15:07 UTC (rev 210132) @@ -1,3 +1,33 @@ +2016-12-23 Zan Dobersek + +[EME][GStreamer] Enable various code paths for ENCRYPTED_MEDIA +https://bugs.webkit.org/show_bug.cgi?id=166054 + +Reviewed by Xabier Rodriguez-Calvar. + +Add ENABLE_ENCRYPTED_MEDIA build guards in various places in GStreamer +code to enable decryption-related GStreamer elements and the proper +decryptor handling in AppendPipeline. + +* platform/GStreamer.cmake: +* platform/graphics/gstreamer/GStreamerUtilities.cpp: +* platform/graphics/gstreamer/GStreamerUtilities.h: +* platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp: +(WebCore::registerWebKitGStreamerElements): +(WebCore::MediaPlayerPrivateGStreamerBase::handleSyncMessage): +Only call needKey() if LEGACY_ENCRYPTED_MEDIA is enabled, since this is +the way the legacy EME system expects to be notified of key necessity. +It's very likely ENCRYPTED_MEDIA will do this differently. +* platform/graphics/gstreamer/eme/WebKitClearKeyDecryptorGStreamer.cpp: +* platform/graphics/gstreamer/eme/WebKitClearKeyDecryptorGStreamer.h: +* platform/graphics/gstreamer/eme/WebKitCommonEncryptionDecryptorGStreamer.cpp: +* platform/graphics/gstreamer/eme/WebKitCommonEncryptionDecryptorGStreamer.h: +* platform/graphics/gstreamer/mse/AppendPipeline.cpp: +(WebCore::AppendPipeline::parseDemuxerSrcPadCaps): +(WebCore::AppendPipeline::connectDemuxerSrcPadToAppsinkFromAnyThread): +(WebCore::AppendPipeline::disconnectDemuxerSrcPadFromAppsinkFromAnyThread): +* platform/graphics/gstreamer/mse/AppendPipeline.h: + 2016-12-23 Ryosuke Niwa Eliminate the use of lastChild in TextIterator Modified: trunk/Source/WebCore/platform/GStreamer.cmake (210131 => 210132) --- trunk/Source/WebCore/platform/GStreamer.cmake 2016-12-23 09:11:32 UTC (rev 210131) +++ trunk/Source/WebCore/platform/GStreamer.cmake 2016-12-23 09:15:07 UTC (rev 210132) @@ -130,7 +130,7 @@ ) endif () -if (ENABLE_LEGACY_ENCRYPTED_MEDIA) +if (ENABLE_LEGACY_ENCRYPTED_MEDIA OR ENABLE_ENCRYPTED_MEDIA) list(APPEND WebCore_INCLUDE_DIRECTORIES ${LIBGCRYPT_INCLUDE_DIRS} ) Modified: trunk/Source/WebCore/platform/graphics/gstreamer/GStreamerUtilities.cpp
[webkit-changes] [210133] trunk/Source/WebCore
Title: [210133] trunk/Source/WebCore Revision 210133 Author mcatanz...@igalia.com Date 2016-12-23 06:36:50 -0800 (Fri, 23 Dec 2016) Log Message [GTK] GLES build broken since r208997 https://bugs.webkit.org/show_bug.cgi?id=166455 Unreviewed. Fix the preprocessor guards here; this code is incompatible with GLES2. Looks like it's been broken for a month. Typical! * platform/graphics/opengl/Extensions3DOpenGLCommon.cpp: (WebCore::Extensions3DOpenGLCommon::initializeAvailableExtensions): Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/platform/graphics/opengl/Extensions3DOpenGLCommon.cpp Diff Modified: trunk/Source/WebCore/ChangeLog (210132 => 210133) --- trunk/Source/WebCore/ChangeLog 2016-12-23 09:15:07 UTC (rev 210132) +++ trunk/Source/WebCore/ChangeLog 2016-12-23 14:36:50 UTC (rev 210133) @@ -1,3 +1,15 @@ +2016-12-22 Michael Catanzaro + +[GTK] GLES build broken since r208997 +https://bugs.webkit.org/show_bug.cgi?id=166455 + +Unreviewed. Fix the preprocessor guards here; this code is incompatible with GLES2. + +Looks like it's been broken for a month. Typical! + +* platform/graphics/opengl/Extensions3DOpenGLCommon.cpp: +(WebCore::Extensions3DOpenGLCommon::initializeAvailableExtensions): + 2016-12-23 Zan Dobersek [EME][GStreamer] Enable various code paths for ENCRYPTED_MEDIA Modified: trunk/Source/WebCore/platform/graphics/opengl/Extensions3DOpenGLCommon.cpp (210132 => 210133) --- trunk/Source/WebCore/platform/graphics/opengl/Extensions3DOpenGLCommon.cpp 2016-12-23 09:15:07 UTC (rev 210132) +++ trunk/Source/WebCore/platform/graphics/opengl/Extensions3DOpenGLCommon.cpp 2016-12-23 14:36:50 UTC (rev 210133) @@ -209,7 +209,7 @@ void Extensions3DOpenGLCommon::initializeAvailableExtensions() { -#if PLATFORM(MAC) || PLATFORM(GTK) +#if PLATFORM(MAC) || (PLATFORM(GTK) && !USE(OPENGL_ES_2)) if (m_useIndexedGetString) { GLint numExtensions = 0; ::glGetIntegerv(GL_NUM_EXTENSIONS, &numExtensions); ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [210134] trunk
Title: [210134] trunk Revision 210134 Author wei...@apple.com Date 2016-12-23 09:09:04 -0800 (Fri, 23 Dec 2016) Log Message [WebIDL] Remove custom bindings for WebSQL code https://bugs.webkit.org/show_bug.cgi?id=166441 Reviewed by Darin Adler. Source/WebCore: - Replace custom variant type SQLValue with a type alias of a Variant. - Use the newly representable SQLValue to remove custom bindings for SQLResultSetRowList::item and SQLTransaction::executeSql. * CMakeLists.txt: * WebCore.xcodeproj/project.pbxproj: * bindings/js/JSBindingsAllInOne.cpp: * bindings/js/JSSQLResultSetRowListCustom.cpp: Removed. * bindings/js/JSSQLTransactionCustom.cpp: Removed. * platform/sql/SQLValue.cpp: Removed. Remove files. * Modules/webdatabase/SQLResultSetRowList.cpp: (WebCore::SQLResultSetRowList::length): (WebCore::SQLResultSetRowList::item): * Modules/webdatabase/SQLResultSetRowList.h: * Modules/webdatabase/SQLResultSetRowList.idl: Sink the implementation of item() into the implementation. Use a record type to bridge to _javascript_. * Modules/webdatabase/SQLStatement.cpp: (WebCore::SQLStatement::SQLStatement): * Modules/webdatabase/SQLStatement.h: Update to take arguments by rvalue reference. * Modules/webdatabase/SQLTransaction.cpp: (WebCore::SQLTransaction::executeSql): * Modules/webdatabase/SQLTransaction.h: * Modules/webdatabase/SQLTransaction.idl: Remove custom annotation, and update signature to match the IDL. * Modules/webdatabase/SQLTransactionBackend.cpp: * Modules/webdatabase/SQLTransactionBackend.h: Remove unneeded #includes of SQLValue.h * bindings/js/JSDOMConvert.h: (WebCore::Converter::convert): (WebCore::JSConverter::convert): Implement conversion for the null type so it can be used in the SQLValue union. * inspector/InspectorDatabaseAgent.cpp: * platform/sql/SQLiteStatement.cpp: (WebCore::SQLiteStatement::bindValue): (WebCore::SQLiteStatement::getColumnValue): * platform/sql/SQLiteStatement.h: Replace old switch with a WTF::switchOn that operates on the new variant. * platform/sql/SQLValue.h: (WebCore::SQLValue::SQLValue): Deleted. (WebCore::SQLValue::type): Deleted. Replace implementation with a Variant. LayoutTests: * storage/websql/execute-sql-args-expected.txt: * storage/websql/execute-sql-args.js: Update test and result to be slightly more strict about functions taking sequences. Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/storage/websql/execute-sql-args-expected.txt trunk/LayoutTests/storage/websql/execute-sql-args.js trunk/Source/WebCore/CMakeLists.txt trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/Modules/webdatabase/SQLResultSetRowList.cpp trunk/Source/WebCore/Modules/webdatabase/SQLResultSetRowList.h trunk/Source/WebCore/Modules/webdatabase/SQLResultSetRowList.idl trunk/Source/WebCore/Modules/webdatabase/SQLStatement.cpp trunk/Source/WebCore/Modules/webdatabase/SQLStatement.h trunk/Source/WebCore/Modules/webdatabase/SQLTransaction.cpp trunk/Source/WebCore/Modules/webdatabase/SQLTransaction.h trunk/Source/WebCore/Modules/webdatabase/SQLTransaction.idl trunk/Source/WebCore/Modules/webdatabase/SQLTransactionBackend.cpp trunk/Source/WebCore/Modules/webdatabase/SQLTransactionBackend.h trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj trunk/Source/WebCore/bindings/js/JSBindingsAllInOne.cpp trunk/Source/WebCore/bindings/js/JSDOMConvert.h trunk/Source/WebCore/inspector/InspectorDatabaseAgent.cpp trunk/Source/WebCore/platform/sql/SQLValue.h trunk/Source/WebCore/platform/sql/SQLiteStatement.cpp trunk/Source/WebCore/platform/sql/SQLiteStatement.h Removed Paths trunk/Source/WebCore/bindings/js/JSSQLResultSetRowListCustom.cpp trunk/Source/WebCore/bindings/js/JSSQLTransactionCustom.cpp trunk/Source/WebCore/platform/sql/SQLValue.cpp Diff Modified: trunk/LayoutTests/ChangeLog (210133 => 210134) --- trunk/LayoutTests/ChangeLog 2016-12-23 14:36:50 UTC (rev 210133) +++ trunk/LayoutTests/ChangeLog 2016-12-23 17:09:04 UTC (rev 210134) @@ -1,3 +1,14 @@ +2016-12-22 Sam Weinig + +[WebIDL] Remove custom bindings for WebSQL code +https://bugs.webkit.org/show_bug.cgi?id=166441 + +Reviewed by Darin Adler. + +* storage/websql/execute-sql-args-expected.txt: +* storage/websql/execute-sql-args.js: +Update test and result to be slightly more strict about functions taking sequences. + 2016-12-22 Brent Fulgham Nested calls to setDocument can omit firing 'unload' events Modified: trunk/LayoutTests/storage/websql/execute-sql-args-expected.txt (210133 => 210134) --- trunk/LayoutTests/storage/websql/execute-sql-args-expected.txt 2016-12-23 14:36:50 UTC (rev 210133) +++ trunk/LayoutTests/storage/websql/execute-sql-args-expected.txt 2016-12-23 17:09:04 UTC (rev 210134) @@ -6,15 +6,10 @@ PASS. executeSql("", undefined) did not throw an exception PASS. executeSql("", []) did not throw an exception PASS. executeSql("", [ "arg0" ]) did not throw an exception -PASS. executeSql("", { }) did not throw an excepti
[webkit-changes] [210135] trunk/Source/WebCore/platform/network/mac/ WebCoreResourceHandleAsDelegate.mm
Title: [210135] trunk/Source/WebCore/platform/network/mac/WebCoreResourceHandleAsDelegate.mm Revision 210135 Author aes...@apple.com Date 2016-12-23 10:16:42 -0800 (Fri, 23 Dec 2016) Log Message Try to fix the Mac CMake build after r210130. * platform/network/mac/WebCoreResourceHandleAsDelegate.mm: Modified Paths trunk/Source/WebCore/platform/network/mac/WebCoreResourceHandleAsDelegate.mm Diff Modified: trunk/Source/WebCore/platform/network/mac/WebCoreResourceHandleAsDelegate.mm (210134 => 210135) --- trunk/Source/WebCore/platform/network/mac/WebCoreResourceHandleAsDelegate.mm 2016-12-23 17:09:04 UTC (rev 210134) +++ trunk/Source/WebCore/platform/network/mac/WebCoreResourceHandleAsDelegate.mm 2016-12-23 18:16:42 UTC (rev 210135) @@ -32,7 +32,6 @@ #import "AuthenticationMac.h" #import "Logging.h" #import "NSURLRequestSPI.h" -#import "QuickLook.h" #import "ResourceHandle.h" #import "ResourceHandleClient.h" #import "ResourceRequest.h" @@ -40,6 +39,10 @@ #import "SharedBuffer.h" #import "WebCoreURLResponse.h" +#if USE(QUICK_LOOK) +#import "QuickLook.h" +#endif + using namespace WebCore; @implementation WebCoreResourceHandleAsDelegate ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [210136] trunk/Source/JavaScriptCore
Title: [210136] trunk/Source/_javascript_Core Revision 210136 Author mark@apple.com Date 2016-12-23 11:01:32 -0800 (Fri, 23 Dec 2016) Log Message Fix broken LLINT_SLOW_PATH_TRACING build. https://bugs.webkit.org/show_bug.cgi?id=166463 Reviewed by Keith Miller. * llint/LLIntExceptions.cpp: (JSC::LLInt::returnToThrow): (JSC::LLInt::callToThrow): * runtime/CommonSlowPathsExceptions.cpp: (JSC::CommonSlowPaths::interpreterThrowInCaller): Modified Paths trunk/Source/_javascript_Core/ChangeLog trunk/Source/_javascript_Core/llint/LLIntExceptions.cpp trunk/Source/_javascript_Core/runtime/CommonSlowPathsExceptions.cpp Diff Modified: trunk/Source/_javascript_Core/ChangeLog (210135 => 210136) --- trunk/Source/_javascript_Core/ChangeLog 2016-12-23 18:16:42 UTC (rev 210135) +++ trunk/Source/_javascript_Core/ChangeLog 2016-12-23 19:01:32 UTC (rev 210136) @@ -1,3 +1,16 @@ +2016-12-23 Mark Lam + +Fix broken LLINT_SLOW_PATH_TRACING build. +https://bugs.webkit.org/show_bug.cgi?id=166463 + +Reviewed by Keith Miller. + +* llint/LLIntExceptions.cpp: +(JSC::LLInt::returnToThrow): +(JSC::LLInt::callToThrow): +* runtime/CommonSlowPathsExceptions.cpp: +(JSC::CommonSlowPaths::interpreterThrowInCaller): + 2016-12-22 Keith Miller WebAssembly: Make spec-tests/f32.wast.js and spec-tests/f64.wast.js pass Modified: trunk/Source/_javascript_Core/llint/LLIntExceptions.cpp (210135 => 210136) --- trunk/Source/_javascript_Core/llint/LLIntExceptions.cpp 2016-12-23 18:16:42 UTC (rev 210135) +++ trunk/Source/_javascript_Core/llint/LLIntExceptions.cpp 2016-12-23 19:01:32 UTC (rev 210136) @@ -1,5 +1,5 @@ /* - * Copyright (C) 2011 Apple Inc. All rights reserved. + * Copyright (C) 2011, 2016 Apple Inc. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions @@ -33,6 +33,10 @@ #include "LowLevelInterpreter.h" #include "JSCInlines.h" +#if LLINT_SLOW_PATH_TRACING +#include "Exception.h" +#endif + namespace JSC { namespace LLInt { Instruction* returnToThrowForThrownException(ExecState* exec) @@ -47,7 +51,7 @@ #if LLINT_SLOW_PATH_TRACING VM* vm = &exec->vm(); auto scope = DECLARE_THROW_SCOPE(*vm); -dataLog("Throwing exception ", scope.exception(), " (returnToThrow).\n"); +dataLog("Throwing exception ", JSValue(scope.exception()), " (returnToThrow).\n"); #endif return LLInt::exceptionInstructions(); } @@ -58,7 +62,7 @@ #if LLINT_SLOW_PATH_TRACING VM* vm = &exec->vm(); auto scope = DECLARE_THROW_SCOPE(*vm); -dataLog("Throwing exception ", scope.exception(), " (callToThrow).\n"); +dataLog("Throwing exception ", JSValue(scope.exception()), " (callToThrow).\n"); #endif return LLInt::getCodePtr(llint_throw_during_call_trampoline); } Modified: trunk/Source/_javascript_Core/runtime/CommonSlowPathsExceptions.cpp (210135 => 210136) --- trunk/Source/_javascript_Core/runtime/CommonSlowPathsExceptions.cpp 2016-12-23 18:16:42 UTC (rev 210135) +++ trunk/Source/_javascript_Core/runtime/CommonSlowPathsExceptions.cpp 2016-12-23 19:01:32 UTC (rev 210136) @@ -33,6 +33,10 @@ #include "LLIntCommon.h" #include "JSCInlines.h" +#if LLINT_SLOW_PATH_TRACING +#include "Exception.h" +#endif + namespace JSC { namespace CommonSlowPaths { void interpreterThrowInCaller(ExecState* exec, JSObject* error) @@ -43,7 +47,7 @@ throwException(exec, scope, error); #if LLINT_SLOW_PATH_TRACING -dataLog("Throwing exception ", scope.exception(), ".\n"); +dataLog("Throwing exception ", JSValue(scope.exception()), ".\n"); #endif } ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [210137] trunk
Title: [210137] trunk Revision 210137 Author keith_mil...@apple.com Date 2016-12-23 11:08:43 -0800 (Fri, 23 Dec 2016) Log Message WebAssembly: trap on bad division. https://bugs.webkit.org/show_bug.cgi?id=164786 Reviewed by Mark Lam. JSTests: Also, mark conversions as passing. * wasm.yaml: * wasm/wasm.json: Source/_javascript_Core: This patch adds traps for division / modulo by zero and for division by int_min / -1. * wasm/WasmB3IRGenerator.cpp: (JSC::Wasm::B3IRGenerator::emitChecksForModOrDiv): * wasm/WasmExceptionType.h: * wasm/WasmPlan.cpp: (JSC::Wasm::Plan::run): * wasm/wasm.json: Modified Paths trunk/JSTests/ChangeLog trunk/JSTests/wasm/wasm.json trunk/JSTests/wasm.yaml trunk/Source/_javascript_Core/ChangeLog trunk/Source/_javascript_Core/wasm/WasmB3IRGenerator.cpp trunk/Source/_javascript_Core/wasm/WasmExceptionType.h trunk/Source/_javascript_Core/wasm/WasmPlan.cpp trunk/Source/_javascript_Core/wasm/wasm.json Diff Modified: trunk/JSTests/ChangeLog (210136 => 210137) --- trunk/JSTests/ChangeLog 2016-12-23 19:01:32 UTC (rev 210136) +++ trunk/JSTests/ChangeLog 2016-12-23 19:08:43 UTC (rev 210137) @@ -1,3 +1,15 @@ +2016-12-23 Keith Miller + +WebAssembly: trap on bad division. +https://bugs.webkit.org/show_bug.cgi?id=164786 + +Reviewed by Mark Lam. + +Also, mark conversions as passing. + +* wasm.yaml: +* wasm/wasm.json: + 2016-12-22 Keith Miller WebAssembly: Make spec-tests/f32.wast.js and spec-tests/f64.wast.js pass Modified: trunk/JSTests/wasm/wasm.json (210136 => 210137) --- trunk/JSTests/wasm/wasm.json 2016-12-23 19:01:32 UTC (rev 210136) +++ trunk/JSTests/wasm/wasm.json 2016-12-23 19:08:43 UTC (rev 210137) @@ -93,10 +93,10 @@ "i32.add": { "category": "arithmetic", "value": 106, "return": ["i32"], "parameter": ["i32", "i32"], "immediate": [], "b3op": "Add" }, "i32.sub": { "category": "arithmetic", "value": 107, "return": ["i32"], "parameter": ["i32", "i32"], "immediate": [], "b3op": "Sub" }, "i32.mul": { "category": "arithmetic", "value": 108, "return": ["i32"], "parameter": ["i32", "i32"], "immediate": [], "b3op": "Mul" }, -"i32.div_s": { "category": "arithmetic", "value": 109, "return": ["i32"], "parameter": ["i32", "i32"], "immediate": [], "b3op": "Div" }, -"i32.div_u": { "category": "arithmetic", "value": 110, "return": ["i32"], "parameter": ["i32", "i32"], "immediate": [], "b3op": "UDiv" }, -"i32.rem_s": { "category": "arithmetic", "value": 111, "return": ["i32"], "parameter": ["i32", "i32"], "immediate": [], "b3op": "Mod" }, -"i32.rem_u": { "category": "arithmetic", "value": 112, "return": ["i32"], "parameter": ["i32", "i32"], "immediate": [], "b3op": "UMod" }, +"i32.div_s": { "category": "arithmetic", "value": 109, "return": ["i32"], "parameter": ["i32", "i32"], "immediate": [] }, +"i32.div_u": { "category": "arithmetic", "value": 110, "return": ["i32"], "parameter": ["i32", "i32"], "immediate": [] }, +"i32.rem_s": { "category": "arithmetic", "value": 111, "return": ["i32"], "parameter": ["i32", "i32"], "immediate": [] }, +"i32.rem_u": { "category": "arithmetic", "value": 112, "return": ["i32"], "parameter": ["i32", "i32"], "immediate": [] }, "i32.and": { "category": "arithmetic", "value": 113, "return": ["i32"], "parameter": ["i32", "i32"], "immediate": [], "b3op": "BitAnd" }, "i32.or": { "category": "arithmetic", "value": 114, "return": ["i32"], "parameter": ["i32", "i32"], "immediate": [], "b3op": "BitOr"}, "i32.xor": { "category": "arithmetic", "value": 115, "return": ["i32"], "parameter": ["i32", "i32"], "immediate": [], "b3op": "BitXor" }, @@ -122,10 +122,10 @@ "i64.add": { "category": "arithmetic", "value": 124, "return": ["i64"], "parameter": ["i64", "i64"], "immediate": [], "b3op": "Add" }, "i64.sub": { "category": "arithmetic", "value": 125, "return": ["i64"], "parameter": ["i64", "i64"], "immediate": [], "b3op": "Sub" }, "i64.mul": { "category": "arithmetic", "value": 126, "return": ["i64"], "parameter": ["i64", "i64"], "immediate": [], "b3op": "Mul" }, -"i64.div_s": { "category": "arithmetic", "value": 127, "return": ["i64"], "parameter": ["i64", "i64"], "immediate": [], "b3op": "
[webkit-changes] [210138] trunk/Source/JavaScriptCore
Title: [210138] trunk/Source/_javascript_Core Revision 210138 Author mark@apple.com Date 2016-12-23 11:26:21 -0800 (Fri, 23 Dec 2016) Log Message Enhance LLInt tracing to dump the codeBlock signature instead of just a pointer where appropriate. https://bugs.webkit.org/show_bug.cgi?id=166465 Reviewed by Keith Miller. * llint/LLIntSlowPaths.cpp: (JSC::LLInt::LLINT_SLOW_PATH_DECL): (JSC::LLInt::traceFunctionPrologue): Modified Paths trunk/Source/_javascript_Core/ChangeLog trunk/Source/_javascript_Core/llint/LLIntSlowPaths.cpp Diff Modified: trunk/Source/_javascript_Core/ChangeLog (210137 => 210138) --- trunk/Source/_javascript_Core/ChangeLog 2016-12-23 19:08:43 UTC (rev 210137) +++ trunk/Source/_javascript_Core/ChangeLog 2016-12-23 19:26:21 UTC (rev 210138) @@ -1,3 +1,14 @@ +2016-12-23 Mark Lam + +Enhance LLInt tracing to dump the codeBlock signature instead of just a pointer where appropriate. +https://bugs.webkit.org/show_bug.cgi?id=166465 + +Reviewed by Keith Miller. + +* llint/LLIntSlowPaths.cpp: +(JSC::LLInt::LLINT_SLOW_PATH_DECL): +(JSC::LLInt::traceFunctionPrologue): + 2016-12-23 Keith Miller WebAssembly: trap on bad division. Modified: trunk/Source/_javascript_Core/llint/LLIntSlowPaths.cpp (210137 => 210138) --- trunk/Source/_javascript_Core/llint/LLIntSlowPaths.cpp 2016-12-23 19:08:43 UTC (rev 210137) +++ trunk/Source/_javascript_Core/llint/LLIntSlowPaths.cpp 2016-12-23 19:26:21 UTC (rev 210138) @@ -228,7 +228,8 @@ LLINT_SLOW_PATH_DECL(trace_prologue) { -dataLogF("%p / %p: in prologue.\n", exec->codeBlock(), exec); +dataLogF("%p / %p: in prologue of ", exec->codeBlock(), exec); +dataLog(*exec->codeBlock(), "\n"); LLINT_END_IMPL(); } @@ -237,10 +238,10 @@ JSFunction* callee = jsCast(exec->jsCallee()); FunctionExecutable* executable = callee->jsExecutable(); CodeBlock* codeBlock = executable->codeBlockFor(kind); -dataLogF("%p / %p: in %s of function %p, executable %p; numVars = %u, numParameters = %u, numCalleeLocals = %u, caller = %p.\n", -codeBlock, exec, comment, callee, executable, -codeBlock->m_numVars, codeBlock->numParameters(), codeBlock->m_numCalleeLocals, -exec->callerFrame()); +dataLogF("%p / %p: in %s of ", codeBlock, exec, comment); +dataLog(*codeBlock); +dataLogF(" function %p, executable %p; numVars = %u, numParameters = %u, numCalleeLocals = %u, caller = %p.\n", +callee, executable, codeBlock->m_numVars, codeBlock->numParameters(), codeBlock->m_numCalleeLocals, exec->callerFrame()); } LLINT_SLOW_PATH_DECL(trace_prologue_function_for_call) @@ -489,7 +490,7 @@ #if LLINT_SLOW_PATH_TRACING dataLogF("Checking stack height with exec = %p.\n", exec); -dataLogF("CodeBlock = %p.\n", exec->codeBlock()); +dataLog("CodeBlock = ", *exec->codeBlock(), "\n"); dataLogF("Num callee registers = %u.\n", exec->codeBlock()->m_numCalleeLocals); dataLogF("Num vars = %u.\n", exec->codeBlock()->m_numVars); ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [210139] trunk/Source/JavaScriptCore
Title: [210139] trunk/Source/_javascript_Core Revision 210139 Author mark@apple.com Date 2016-12-23 11:45:46 -0800 (Fri, 23 Dec 2016) Log Message Using Option::breakOnThrow() shouldn't crash while printing a null CodeBlock. https://bugs.webkit.org/show_bug.cgi?id=166466 Reviewed by Keith Miller. * runtime/VM.cpp: (JSC::VM::throwException): Modified Paths trunk/Source/_javascript_Core/ChangeLog trunk/Source/_javascript_Core/runtime/VM.cpp Diff Modified: trunk/Source/_javascript_Core/ChangeLog (210138 => 210139) --- trunk/Source/_javascript_Core/ChangeLog 2016-12-23 19:26:21 UTC (rev 210138) +++ trunk/Source/_javascript_Core/ChangeLog 2016-12-23 19:45:46 UTC (rev 210139) @@ -1,5 +1,15 @@ 2016-12-23 Mark Lam +Using Option::breakOnThrow() shouldn't crash while printing a null CodeBlock. +https://bugs.webkit.org/show_bug.cgi?id=166466 + +Reviewed by Keith Miller. + +* runtime/VM.cpp: +(JSC::VM::throwException): + +2016-12-23 Mark Lam + Enhance LLInt tracing to dump the codeBlock signature instead of just a pointer where appropriate. https://bugs.webkit.org/show_bug.cgi?id=166465 Modified: trunk/Source/_javascript_Core/runtime/VM.cpp (210138 => 210139) --- trunk/Source/_javascript_Core/runtime/VM.cpp 2016-12-23 19:26:21 UTC (rev 210138) +++ trunk/Source/_javascript_Core/runtime/VM.cpp 2016-12-23 19:45:46 UTC (rev 210139) @@ -595,7 +595,12 @@ void VM::throwException(ExecState* exec, Exception* exception) { if (Options::breakOnThrow()) { -dataLog("In call frame ", RawPointer(exec), " for code block ", *exec->codeBlock(), "\n"); +CodeBlock* codeBlock = exec->codeBlock(); +dataLog("Throwing exception in call frame ", RawPointer(exec), " for code block "); +if (codeBlock) +dataLog(*codeBlock, "\n"); +else +dataLog("\n"); CRASH(); } ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [210140] trunk/Source/WebCore
Title: [210140] trunk/Source/WebCore Revision 210140 Author commit-qu...@webkit.org Date 2016-12-23 14:01:12 -0800 (Fri, 23 Dec 2016) Log Message Add missing std::optional to ApplePayPaymentRequest.lineItems https://bugs.webkit.org/show_bug.cgi?id=166468 Patch by Sam Weinig on 2016-12-23 Reviewed by Alexey Proskuryakov. No functional change, but is more consistent. * Modules/applepay/ApplePayPaymentRequest.h: Remove unnecessary #include of , add std::optional to lineItems. * Modules/applepay/ApplePaySession.cpp: (WebCore::convertAndValidate): Update to deal with optional line items, remove unnecessary comment. * Modules/applepay/ApplePaySession.h: Remove unneeded forward declarations. Modified Paths trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/Modules/applepay/ApplePayPaymentRequest.h trunk/Source/WebCore/Modules/applepay/ApplePaySession.cpp trunk/Source/WebCore/Modules/applepay/ApplePaySession.h Diff Modified: trunk/Source/WebCore/ChangeLog (210139 => 210140) --- trunk/Source/WebCore/ChangeLog 2016-12-23 19:45:46 UTC (rev 210139) +++ trunk/Source/WebCore/ChangeLog 2016-12-23 22:01:12 UTC (rev 210140) @@ -1,3 +1,22 @@ +2016-12-23 Sam Weinig + +Add missing std::optional to ApplePayPaymentRequest.lineItems +https://bugs.webkit.org/show_bug.cgi?id=166468 + +Reviewed by Alexey Proskuryakov. + +No functional change, but is more consistent. + +* Modules/applepay/ApplePayPaymentRequest.h: +Remove unnecessary #include of , add std::optional to lineItems. + +* Modules/applepay/ApplePaySession.cpp: +(WebCore::convertAndValidate): +Update to deal with optional line items, remove unnecessary comment. + +* Modules/applepay/ApplePaySession.h: +Remove unneeded forward declarations. + 2016-12-22 Sam Weinig [WebIDL] Remove custom bindings for WebSQL code Modified: trunk/Source/WebCore/Modules/applepay/ApplePayPaymentRequest.h (210139 => 210140) --- trunk/Source/WebCore/Modules/applepay/ApplePayPaymentRequest.h 2016-12-23 19:45:46 UTC (rev 210139) +++ trunk/Source/WebCore/Modules/applepay/ApplePayPaymentRequest.h 2016-12-23 22:01:12 UTC (rev 210140) @@ -31,7 +31,6 @@ #include "ApplePayPaymentContact.h" #include "ApplePayShippingMethod.h" #include "PaymentRequest.h" -#include namespace WebCore { @@ -56,7 +55,7 @@ std::optional> shippingMethods; ApplePayLineItem total; -Vector lineItems; +std::optional> lineItems; String applicationData; }; Modified: trunk/Source/WebCore/Modules/applepay/ApplePaySession.cpp (210139 => 210140) --- trunk/Source/WebCore/Modules/applepay/ApplePaySession.cpp 2016-12-23 19:45:46 UTC (rev 210139) +++ trunk/Source/WebCore/Modules/applepay/ApplePaySession.cpp 2016-12-23 22:01:12 UTC (rev 210140) @@ -176,12 +176,15 @@ return WTFMove(result); } -static ExceptionOr> convertAndValidate(Vector&& lineItems) +static ExceptionOr> convertAndValidate(std::optional>&& lineItems) { Vector result; -result.reserveInitialCapacity(lineItems.size()); +if (!lineItems) +return WTFMove(result); + +result.reserveInitialCapacity(lineItems->size()); -for (auto lineItem : lineItems) { +for (auto lineItem : lineItems.value()) { auto convertedLineItem = convertAndValidate(WTFMove(lineItem)); if (convertedLineItem.hasException()) return convertedLineItem.releaseException(); @@ -300,7 +303,6 @@ return total.releaseException(); result.setTotal(total.releaseReturnValue()); -// FIXME: Should this swallow exceptions like the old code seemed to do? auto lineItems = convertAndValidate(WTFMove(paymentRequest.lineItems)); if (lineItems.hasException()) return lineItems.releaseException(); Modified: trunk/Source/WebCore/Modules/applepay/ApplePaySession.h (210139 => 210140) --- trunk/Source/WebCore/Modules/applepay/ApplePaySession.h 2016-12-23 19:45:46 UTC (rev 210139) +++ trunk/Source/WebCore/Modules/applepay/ApplePaySession.h 2016-12-23 22:01:12 UTC (rev 210140) @@ -34,6 +34,11 @@ #include #include +namespace JSC { +class ExecState; +class JSValue; +} + namespace WebCore { class DeferredPromise; ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [210141] trunk/Source/WebKit2/UIProcess/ApplePay/cocoa/ WebPaymentCoordinatorProxyCocoa.mm
Title: [210141] trunk/Source/WebKit2/UIProcess/ApplePay/cocoa/WebPaymentCoordinatorProxyCocoa.mm Revision 210141 Author aes...@apple.com Date 2016-12-23 14:13:29 -0800 (Fri, 23 Dec 2016) Log Message Fix iOS engineering builds. Modified Paths trunk/Source/WebKit2/UIProcess/ApplePay/cocoa/WebPaymentCoordinatorProxyCocoa.mm Diff Modified: trunk/Source/WebKit2/UIProcess/ApplePay/cocoa/WebPaymentCoordinatorProxyCocoa.mm (210140 => 210141) --- trunk/Source/WebKit2/UIProcess/ApplePay/cocoa/WebPaymentCoordinatorProxyCocoa.mm 2016-12-23 22:01:12 UTC (rev 210140) +++ trunk/Source/WebKit2/UIProcess/ApplePay/cocoa/WebPaymentCoordinatorProxyCocoa.mm 2016-12-23 22:13:29 UTC (rev 210141) @@ -245,6 +245,8 @@ { PKAddressField result = 0; +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wdeprecated-declarations" if (contactFields.postalAddress) result |= PKAddressFieldPostalAddress; if (contactFields.phone) @@ -253,6 +255,7 @@ result |= PKAddressFieldEmail; if (contactFields.name) result |= PKAddressFieldName; +#pragma clang diagnostic pop return result; } @@ -377,10 +380,13 @@ [result setCountryCode:paymentRequest.countryCode()]; [result setCurrencyCode:paymentRequest.currencyCode()]; +[result setBillingContact:paymentRequest.billingContact().pkContact()]; +[result setShippingContact:paymentRequest.shippingContact().pkContact()]; +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wdeprecated-declarations" [result setRequiredBillingAddressFields:toPKAddressField(paymentRequest.requiredBillingContactFields())]; -[result setBillingContact:paymentRequest.billingContact().pkContact()]; [result setRequiredShippingAddressFields:toPKAddressField(paymentRequest.requiredShippingContactFields())]; -[result setShippingContact:paymentRequest.shippingContact().pkContact()]; +#pragma clang diagnostic pop [result setSupportedNetworks:toSupportedNetworks(paymentRequest.supportedNetworks()).get()]; [result setMerchantCapabilities:toPKMerchantCapabilities(paymentRequest.merchantCapabilities())]; ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes
[webkit-changes] [210142] trunk
Title: [210142] trunk Revision 210142 Author akl...@apple.com Date 2016-12-23 16:23:37 -0800 (Fri, 23 Dec 2016) Log Message REGRESSION(r209865): Crash when navigating back to some pages with compositing layers. Reviewed by Darin Adler. Source/WebCore: Remove the old WK1-era clear/restoreBackingStores optimization from the page cache. When enabling it on non-iOS platforms, we started hitting lots of assertions, and none of our memory tests showed any significant improvement anyway. Test: compositing/page-cache-back-crash.html * history/CachedFrame.cpp: (WebCore::CachedFrameBase::CachedFrameBase): (WebCore::CachedFrameBase::restore): (WebCore::CachedFrame::CachedFrame): * history/CachedFrame.h: * page/FrameView.cpp: (WebCore::FrameView::restoreBackingStores): Deleted. * page/FrameView.h: LayoutTests: Add a smoke test for the crashes we were seeing. Thanks to Zalán for the reduction. * compositing/page-cache-back-crash-expected.txt: Added. * compositing/page-cache-back-crash.html: Added. Modified Paths trunk/LayoutTests/ChangeLog trunk/Source/WebCore/ChangeLog trunk/Source/WebCore/history/CachedFrame.cpp trunk/Source/WebCore/history/CachedFrame.h trunk/Source/WebCore/page/FrameView.cpp trunk/Source/WebCore/page/FrameView.h Added Paths trunk/LayoutTests/compositing/page-cache-back-crash-expected.txt trunk/LayoutTests/compositing/page-cache-back-crash.html Diff Modified: trunk/LayoutTests/ChangeLog (210141 => 210142) --- trunk/LayoutTests/ChangeLog 2016-12-23 22:13:29 UTC (rev 210141) +++ trunk/LayoutTests/ChangeLog 2016-12-24 00:23:37 UTC (rev 210142) @@ -1,3 +1,16 @@ +2016-12-23 Andreas Kling + +REGRESSION(r209865): Crash when navigating back to some pages with compositing layers. + + + +Reviewed by Darin Adler. + +Add a smoke test for the crashes we were seeing. Thanks to Zalán for the reduction. + +* compositing/page-cache-back-crash-expected.txt: Added. +* compositing/page-cache-back-crash.html: Added. + 2016-12-22 Sam Weinig [WebIDL] Remove custom bindings for WebSQL code Added: trunk/LayoutTests/compositing/page-cache-back-crash-expected.txt (0 => 210142) --- trunk/LayoutTests/compositing/page-cache-back-crash-expected.txt (rev 0) +++ trunk/LayoutTests/compositing/page-cache-back-crash-expected.txt 2016-12-24 00:23:37 UTC (rev 210142) @@ -0,0 +1 @@ +- Test passes if it doesn't crash. Added: trunk/LayoutTests/compositing/page-cache-back-crash.html (0 => 210142) --- trunk/LayoutTests/compositing/page-cache-back-crash.html (rev 0) +++ trunk/LayoutTests/compositing/page-cache-back-crash.html 2016-12-24 00:23:37 UTC (rev 210142) @@ -0,0 +1,25 @@ + +.outer { position: fixed; } +.inner { position: absolute; } + +- +Test passes if it doesn't crash. + +if (window.testRunner) { +window.testRunner.dumpAsText(); +window.testRunner.waitUntilDone(); +window.testRunner.overridePreference("WebKitUsesPageCachePreferenceKey", 1); +} + +window.addEventListener("pageshow", function(event) { +if (event.persisted) +testRunner.notifyDone(); +}, false); + +window.addEventListener("load", function() { +setTimeout(function() { +// Navigate to a helper page that will immediately navigate back here after loading. +window.location.href = "" +}, 0); +}); + Modified: trunk/Source/WebCore/ChangeLog (210141 => 210142) --- trunk/Source/WebCore/ChangeLog 2016-12-23 22:13:29 UTC (rev 210141) +++ trunk/Source/WebCore/ChangeLog 2016-12-24 00:23:37 UTC (rev 210142) @@ -1,3 +1,26 @@ +2016-12-23 Andreas Kling + +REGRESSION(r209865): Crash when navigating back to some pages with compositing layers. + + + +Reviewed by Darin Adler. + +Remove the old WK1-era clear/restoreBackingStores optimization from the page cache. +When enabling it on non-iOS platforms, we started hitting lots of assertions, +and none of our memory tests showed any significant improvement anyway. + +Test: compositing/page-cache-back-crash.html + +* history/CachedFrame.cpp: +(WebCore::CachedFrameBase::CachedFrameBase): +(WebCore::CachedFrameBase::restore): +(WebCore::CachedFrame::CachedFrame): +* history/CachedFrame.h: +* page/FrameView.cpp: +(WebCore::FrameView::restoreBackingStores): Deleted. +* page/FrameView.h: + 2016-12-23 Sam Weinig Add missing std::optional to ApplePayPaymentRequest.lineItems Modified: trunk/Source/WebCore/history/CachedFrame.cpp (210141 => 210142) --- trunk/Source/WebCore/history/CachedFrame.cpp 2016-12-23 22:13:29 UTC (rev 210141) +++ trunk/Source/WebCore/history/CachedFrame.cpp 2016-12-24 00:23:37 UTC (rev 210142) @@ -63,7 +63,6 @@ , m_view(frame.view()) , m_url(frame.document()->url()) , m_isMainFrame(!frame.tree().parent()) -, m_isComposited(frame.view()->hasCompositedContent())
[webkit-changes] [210143] trunk
Title: [210143] trunk Revision 210143 Author aes...@apple.com Date 2016-12-23 17:14:59 -0800 (Fri, 23 Dec 2016) Log Message [iOS] Fix some crashing webarchive tests https://bugs.webkit.org/show_bug.cgi?id=166470 Reviewed by Andreas Kling. Tools: Tests that use TestRunner.dumpDOMAsWebArchive() crashed on iOS due to a stub implementation of WebArchiveDumpSupport in WebKitTestRunner. The Mac implementation works fine on iOS too, so this change uses that on both platforms. * WebKitTestRunner/Configurations/InjectedBundle.xcconfig: Removed WebArchiveDumpSupportMac.mm from EXCLUDED_SOURCE_FILE_NAMES. * WebKitTestRunner/InjectedBundle/cocoa/WebArchiveDumpSupportCocoa.mm: Renamed from Tools/WebKitTestRunner/mac/WebArchiveDumpSupportMac.mm. * WebKitTestRunner/PlatformMac.cmake: * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj: * WebKitTestRunner/ios/WebArchiveDumpSupportIOS.mm: Removed. LayoutTests: Removed entries for previously crashing/failing tests. * platform/ios-simulator-wk2/TestExpectations: * platform/ios-simulator/TestExpectations: Modified Paths trunk/LayoutTests/ChangeLog trunk/LayoutTests/platform/ios-simulator/TestExpectations trunk/LayoutTests/platform/ios-simulator-wk2/TestExpectations trunk/Tools/ChangeLog trunk/Tools/WebKitTestRunner/Configurations/InjectedBundle.xcconfig trunk/Tools/WebKitTestRunner/PlatformMac.cmake trunk/Tools/WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj Added Paths trunk/Tools/WebKitTestRunner/InjectedBundle/cocoa/WebArchiveDumpSupportCocoa.mm Removed Paths trunk/Tools/WebKitTestRunner/ios/WebArchiveDumpSupportIOS.mm trunk/Tools/WebKitTestRunner/mac/WebArchiveDumpSupportMac.mm Diff Modified: trunk/LayoutTests/ChangeLog (210142 => 210143) --- trunk/LayoutTests/ChangeLog 2016-12-24 00:23:37 UTC (rev 210142) +++ trunk/LayoutTests/ChangeLog 2016-12-24 01:14:59 UTC (rev 210143) @@ -1,3 +1,15 @@ +2016-12-23 Andy Estes + +[iOS] Fix some crashing webarchive tests +https://bugs.webkit.org/show_bug.cgi?id=166470 + +Reviewed by Andreas Kling. + +Removed entries for previously crashing/failing tests. + +* platform/ios-simulator-wk2/TestExpectations: +* platform/ios-simulator/TestExpectations: + 2016-12-23 Andreas Kling REGRESSION(r209865): Crash when navigating back to some pages with compositing layers. Modified: trunk/LayoutTests/platform/ios-simulator/TestExpectations (210142 => 210143) --- trunk/LayoutTests/platform/ios-simulator/TestExpectations 2016-12-24 00:23:37 UTC (rev 210142) +++ trunk/LayoutTests/platform/ios-simulator/TestExpectations 2016-12-24 01:14:59 UTC (rev 210143) @@ -1003,7 +1003,6 @@ userscripts/user-script-plugin-document.html [ Failure ] # Webarchive tests that fail: -webarchive/loading/video-in-webarchive.html [ Failure ] webarchive/test-css-url-resources-in-stylesheets.html [ Failure ] webarchive/test-css-url-resources-inline-styles.html [ Failure ] webarchive/test-link-rel-icon.html [ Failure ] Modified: trunk/LayoutTests/platform/ios-simulator-wk2/TestExpectations (210142 => 210143) --- trunk/LayoutTests/platform/ios-simulator-wk2/TestExpectations 2016-12-24 00:23:37 UTC (rev 210142) +++ trunk/LayoutTests/platform/ios-simulator-wk2/TestExpectations 2016-12-24 01:14:59 UTC (rev 210143) @@ -323,29 +323,9 @@ # ASSERT(animatedTypes[0].properties.size() == 1) failed in SVGAnimatedTypeAnimator::constructFromBaseValue() svg/animations/unsupported-animate-element-attributes.svg -# Webarchive tests that fail with stderr: -webarchive/adopt-attribute-styled-body-webarchive.html -webarchive/adopt-attribute-styled-node-webarchive.html -webarchive/adopt-inline-styled-node-webarchive.html -webarchive/archive-with-unencoded-url.html -webarchive/test-body-background.html -webarchive/test-css-url-resources-in-stylesheets.html -webarchive/test-css-url-resources-inline-styles.html -webarchive/test-duplicate-resources.html -webarchive/test-frameset.html -webarchive/test-img-src.html -webarchive/test-input-src.html -webarchive/test-object-data.html -webarchive/test-table-background.html -webarchive/test-td-background.html -webarchive/test-xml-stylesheet.xml - # Webarchive tests that fail: webarchive/archive-empty-frame-source.html [ Failure ] webarchive/doctype.html [ Failure ] -webarchive/test-css-import.html [ Failure ] -webarchive/test-link-href.html [ Failure ] -webarchive/test-script-src.html [ Failure ] # HTTP tests that fail: http/tests/appcache/load-from-appcache-defer-resume-crash.html [ Failure ] Modified: trunk/Tools/ChangeLog (210142 => 210143) --- trunk/Tools/ChangeLog 2016-12-24 00:23:37 UTC (rev 210142) +++ trunk/Tools/ChangeLog 2016-12-24 01:14:59 UTC (rev 210143) @@ -1,3 +1,22 @@ +2016-12-23 Andy Estes + +[iOS] Fix some crashing webarchive tests +https://bugs.webkit.org/show_bug.cgi?id=166470 + +Reviewed by Andreas Kling. + +Tests that use TestRunner.dumpDOMAsWebArchive() crashed o
[webkit-changes] [210144] trunk/Source/WebKit/mac
Title: [210144] trunk/Source/WebKit/mac Revision 210144 Author aes...@apple.com Date 2016-12-23 20:39:52 -0800 (Fri, 23 Dec 2016) Log Message [iOS] DumpRenderTree triggers an assertion failure when calling +[WebPreferences _switchNetworkLoaderToNewTestingSession] https://bugs.webkit.org/show_bug.cgi?id=166471 Reviewed by Andreas Kling. When DumpRenderTree starts up, it calls +[WebPreferences _switchNetworkLoaderToNewTestingSession] from the main thread. In Debug builds, this triggers the ASSERT(isMainThread()) in NetworkStorageSession::defaultNetworkStorageSession() because the Web thread has already started, we are on the main thread, and we are not holding the Web thread lock. This is causing all layout tests to crash in the iOS WK1 Debug configuration. * WebView/WebPreferences.mm: (+[WebPreferences _switchNetworkLoaderToNewTestingSession]): Take the Web thread lock before calling NetworkStorageSession::switchToNewTestingSession(). Modified Paths trunk/Source/WebKit/mac/ChangeLog trunk/Source/WebKit/mac/WebView/WebPreferences.mm Diff Modified: trunk/Source/WebKit/mac/ChangeLog (210143 => 210144) --- trunk/Source/WebKit/mac/ChangeLog 2016-12-24 01:14:59 UTC (rev 210143) +++ trunk/Source/WebKit/mac/ChangeLog 2016-12-24 04:39:52 UTC (rev 210144) @@ -1,3 +1,20 @@ +2016-12-23 Andy Estes + +[iOS] DumpRenderTree triggers an assertion failure when calling +[WebPreferences _switchNetworkLoaderToNewTestingSession] +https://bugs.webkit.org/show_bug.cgi?id=166471 + +Reviewed by Andreas Kling. + +When DumpRenderTree starts up, it calls ++[WebPreferences _switchNetworkLoaderToNewTestingSession] from the main thread. In Debug +builds, this triggers the ASSERT(isMainThread()) in +NetworkStorageSession::defaultNetworkStorageSession() because the Web thread has already +started, we are on the main thread, and we are not holding the Web thread lock. This is +causing all layout tests to crash in the iOS WK1 Debug configuration. + +* WebView/WebPreferences.mm: (+[WebPreferences _switchNetworkLoaderToNewTestingSession]): +Take the Web thread lock before calling NetworkStorageSession::switchToNewTestingSession(). + 2016-12-22 Andy Estes Make WebCore::EditorInsertAction an enum class Modified: trunk/Source/WebKit/mac/WebView/WebPreferences.mm (210143 => 210144) --- trunk/Source/WebKit/mac/WebView/WebPreferences.mm 2016-12-24 01:14:59 UTC (rev 210143) +++ trunk/Source/WebKit/mac/WebView/WebPreferences.mm 2016-12-24 04:39:52 UTC (rev 210144) @@ -1820,6 +1820,9 @@ + (void)_switchNetworkLoaderToNewTestingSession { +#if PLATFORM(IOS) +WebThreadLock(); +#endif NetworkStorageSession::switchToNewTestingSession(); } ___ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes