WebKit-https.git
8 years ago[Qt] One test runs out of time after r95091
reni@webkit.org [Fri, 16 Sep 2011 08:21:47 +0000 (08:21 +0000)]
[Qt] One test runs out of time after r95091
https://bugs.webkit.org/show_bug.cgi?id=68232

Unreviewed gardening.

* platform/qt/Skipped:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95277 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years ago[Qt] Two tests fail after r95201
reni@webkit.org [Fri, 16 Sep 2011 08:16:30 +0000 (08:16 +0000)]
[Qt] Two tests fail after r95201
https://bugs.webkit.org/show_bug.cgi?id=68230

Unreviewed gardening.

* platform/qt/Skipped:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95276 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years ago[Qt] Crash when dragging google maps.
leo.yang@torchmobile.com.cn [Fri, 16 Sep 2011 07:15:57 +0000 (07:15 +0000)]
[Qt] Crash when dragging google maps.
https://bugs.webkit.org/show_bug.cgi?id=68223

Source/WebCore:

The custom image for a cursor might not be ready when WebKit trying
to use it to construct the cursor in Qt porting. This patch is using
arrow image to substitute the unready custom image.

Reviewed by Adam Barth.

Test: fast/css/crash-on-custom-cursor-when-loading.html

* platform/qt/CursorQt.cpp:
(WebCore::createCustomCursor):
(WebCore::Cursor::ensurePlatformCursor):

LayoutTests:

Test case to use an unready custom cursor.

Reviewed by Adam Barth.

* fast/css/crash-on-custom-cursor-when-loading-expected.txt: Added.
* fast/css/crash-on-custom-cursor-when-loading.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95275 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years ago[chromium] Add slow to calculate-percentage.html
keishi@webkit.org [Fri, 16 Sep 2011 06:52:00 +0000 (06:52 +0000)]
[chromium] Add slow to calculate-percentage.html

* platform/chromium/test_expectations.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95274 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoDFG JIT does not optimize method_check
fpizlo@apple.com [Fri, 16 Sep 2011 06:33:55 +0000 (06:33 +0000)]
DFG JIT does not optimize method_check
https://bugs.webkit.org/show_bug.cgi?id=68215

Reviewed by Oliver Hunt.

MethodCallLinkInfo and StructureStubInfo are now searchable by
bytecodeIndex, so that DFG::ByteCodeParser can use that information
to determine how to optimize GetMethod.

A new node op has been added to DFG: CheckMethod. This is a variant
of GetMethod that has been optimized for the case that GetMethod
always takes the fast path. CheckMethod results in only a very
small amount of code (two loads and two branches in the worst case,
one load and one branch in the best case). CheckMethod behaves as
if it were a constant.

Introduced the notion that a DFG node that is not JSConstant
behaves as a constant. CheckMethod uses this functionality.

This is a 3% speed-up on Kraken, and a small speed-up on V8.
Appears to be neutral on SunSpider.

* bytecode/CodeBlock.h:
(JSC::getStructureStubInfoBytecodeIndex):
(JSC::getMethodCallLinkInfoBytecodeIndex):
* bytecode/PredictedType.cpp:
(JSC::predictionFromCell):
(JSC::predictionFromValue):
* bytecode/PredictedType.h:
* bytecode/StructureStubInfo.h:
* dfg/DFGAliasTracker.h:
(JSC::DFG::AliasTracker::recordGetMethod):
* dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::parseBlock):
* dfg/DFGGraph.cpp:
(JSC::DFG::Graph::dump):
* dfg/DFGGraph.h:
(JSC::DFG::Graph::getMethodCheckPrediction):
(JSC::DFG::Graph::getPrediction):
(JSC::DFG::Graph::isConstant):
(JSC::DFG::Graph::isJSConstant):
(JSC::DFG::Graph::valueOfJSConstant):
(JSC::DFG::Graph::valueOfInt32Constant):
(JSC::DFG::Graph::valueOfNumberConstant):
(JSC::DFG::Graph::valueOfBooleanConstant):
(JSC::DFG::Graph::valueOfJSConstantNode):
* dfg/DFGJITCodeGenerator.cpp:
(JSC::DFG::JITCodeGenerator::fillInteger):
(JSC::DFG::JITCodeGenerator::fillDouble):
(JSC::DFG::JITCodeGenerator::fillJSValue):
(JSC::DFG::JITCodeGenerator::isKnownNotInteger):
(JSC::DFG::JITCodeGenerator::isKnownNotNumber):
* dfg/DFGJITCodeGenerator.h:
(JSC::DFG::JITCodeGenerator::silentSpillFPR):
(JSC::DFG::JITCodeGenerator::silentFillGPR):
(JSC::DFG::JITCodeGenerator::silentFillFPR):
* dfg/DFGJITCompiler.cpp:
(JSC::DFG::JITCompiler::fillNumericToDouble):
(JSC::DFG::JITCompiler::fillInt32ToInteger):
(JSC::DFG::JITCompiler::fillToJS):
* dfg/DFGNode.h:
(JSC::DFG::Node::hasConstant):
(JSC::DFG::Node::hasIdentifier):
(JSC::DFG::Node::hasMethodCheckData):
(JSC::DFG::Node::methodCheckDataIndex):
(JSC::DFG::Node::valueOfJSConstant):
* dfg/DFGPropagator.cpp:
(JSC::DFG::Propagator::propagateNode):
* dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::fillSpeculateIntInternal):
(JSC::DFG::SpeculativeJIT::fillSpeculateDouble):
(JSC::DFG::SpeculativeJIT::fillSpeculateCell):
(JSC::DFG::SpeculativeJIT::fillSpeculateBoolean):
(JSC::DFG::SpeculativeJIT::compile):
* jit/JIT.cpp:
(JSC::JIT::privateCompile):
* jit/JIT.h:
(JSC::PropertyStubCompilationInfo::PropertyStubCompilationInfo):
(JSC::MethodCallCompilationInfo::MethodCallCompilationInfo):
* jit/JITPropertyAccess.cpp:
(JSC::JIT::emit_op_method_check):
(JSC::JIT::compileGetByIdHotPath):
(JSC::JIT::emit_op_put_by_id):
* jit/JITPropertyAccess32_64.cpp:
(JSC::JIT::emit_op_method_check):
(JSC::JIT::compileGetByIdHotPath):
(JSC::JIT::emit_op_put_by_id):
* runtime/JSCell.h:
(JSC::JSCell::JSCell::structureAddress):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95273 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoSigh. Missed this one.
abarth@webkit.org [Fri, 16 Sep 2011 05:43:11 +0000 (05:43 +0000)]
Sigh.  Missed this one.

* features.gypi:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95272 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoRename ENABLE(DATABASE) to ENABLE(SQL_DATABASE)
abarth@webkit.org [Fri, 16 Sep 2011 05:41:19 +0000 (05:41 +0000)]
Rename ENABLE(DATABASE) to ENABLE(SQL_DATABASE)
https://bugs.webkit.org/show_bug.cgi?id=68205

Reviewed by Eric Seidel.

.:

* Source/cmake/OptionsEfl.cmake:
* Source/cmake/OptionsWinCE.cmake:
* Source/cmakeconfig.h.cmake:
* configure.ac:

Source/JavaScriptCore:

* Configurations/FeatureDefines.xcconfig:
* wtf/Platform.h:

Source/WebCore:

As discussed on webkit-dev.

* CMakeLists.txt:
* Configurations/FeatureDefines.xcconfig:
* GNUmakefile.am:
* GNUmakefile.list.am:
* UseJSC.cmake:
* bindings/generic/RuntimeEnabledFeatures.cpp:
* bindings/generic/RuntimeEnabledFeatures.h:
* bindings/js/JSCustomSQLStatementErrorCallback.cpp:
* bindings/js/JSDOMBinding.cpp:
(WebCore::setDOMException):
* bindings/js/JSExceptionBase.cpp:
(WebCore::toExceptionBase):
* bindings/js/JSInjectedScriptHostCustom.cpp:
(WebCore::JSInjectedScriptHost::databaseId):
* bindings/js/JSSQLResultSetRowListCustom.cpp:
* bindings/js/JSSQLTransactionCustom.cpp:
* bindings/js/JSSQLTransactionSyncCustom.cpp:
* bindings/scripts/test/CPP/WebDOMTestCallback.cpp:
* bindings/scripts/test/CPP/WebDOMTestCallback.h:
* bindings/scripts/test/GObject/WebKitDOMTestCallback.cpp:
* bindings/scripts/test/JS/JSTestCallback.cpp:
* bindings/scripts/test/JS/JSTestCallback.h:
* bindings/scripts/test/ObjC/DOMTestCallback.mm:
* bindings/scripts/test/TestCallback.idl:
* bindings/scripts/test/V8/V8TestCallback.cpp:
* bindings/scripts/test/V8/V8TestCallback.h:
* bindings/v8/V8Proxy.cpp:
(WebCore::V8Proxy::setDOMException):
* bindings/v8/V8Proxy.h:
* bindings/v8/custom/V8CustomSQLStatementErrorCallback.cpp:
* bindings/v8/custom/V8InjectedScriptHostCustom.cpp:
(WebCore::V8InjectedScriptHost::databaseIdCallback):
* bindings/v8/custom/V8SQLResultSetRowListCustom.cpp:
* bindings/v8/custom/V8SQLTransactionCustom.cpp:
* bindings/v8/custom/V8SQLTransactionSyncCustom.cpp:
* dom/Document.cpp:
* dom/Document.h:
* dom/ExceptionCode.cpp:
(WebCore::getExceptionCodeDescription):
* dom/ExceptionCode.h:
* dom/ScriptExecutionContext.cpp:
(WebCore::ScriptExecutionContext::ScriptExecutionContext):
(WebCore::ScriptExecutionContext::~ScriptExecutionContext):
* dom/ScriptExecutionContext.h:
* features.pri:
* history/PageCache.cpp:
(WebCore::logCanCacheFrameDecision):
(WebCore::PageCache::canCachePageContainingThisFrame):
* inspector/InjectedScriptHost.cpp:
(WebCore::InjectedScriptHost::InjectedScriptHost):
(WebCore::InjectedScriptHost::disconnect):
* inspector/InjectedScriptHost.h:
(WebCore::InjectedScriptHost::init):
* inspector/InspectorController.cpp:
(WebCore::InspectorController::InspectorController):
(WebCore::InspectorController::connectFrontend):
(WebCore::InspectorController::disconnectFrontend):
(WebCore::InspectorController::restoreInspectorStateFromCookie):
* inspector/InspectorController.h:
* inspector/InspectorDatabaseAgent.cpp:
* inspector/InspectorDatabaseInstrumentation.h:
* inspector/InspectorDatabaseResource.cpp:
* inspector/InspectorDatabaseResource.h:
* inspector/InspectorInstrumentation.cpp:
(WebCore::InspectorInstrumentation::didCommitLoadImpl):
* inspector/InspectorInstrumentation.h:
* inspector/InstrumentingAgents.h:
(WebCore::InstrumentingAgents::InstrumentingAgents):
* inspector/WorkerInspectorController.cpp:
(WebCore::WorkerInspectorController::WorkerInspectorController):
(WebCore::WorkerInspectorController::connectFrontend):
* loader/EmptyClients.h:
* loader/FrameLoader.cpp:
(WebCore::FrameLoader::stopLoading):
* page/ChromeClient.h:
* page/DOMWindow.cpp:
* page/DOMWindow.h:
* page/DOMWindow.idl:
* platform/sql/SQLiteAuthorizer.cpp:
* platform/sql/SQLiteDatabase.cpp:
* platform/sql/SQLiteFileSystem.cpp:
* platform/sql/SQLiteStatement.cpp:
* platform/sql/SQLiteTransaction.cpp:
* storage/AbstractDatabase.cpp:
* storage/AbstractDatabase.h:
* storage/ChangeVersionWrapper.cpp:
* storage/ChangeVersionWrapper.h:
* storage/Database.cpp:
* storage/Database.h:
* storage/Database.idl:
* storage/DatabaseAuthorizer.cpp:
* storage/DatabaseCallback.h:
* storage/DatabaseCallback.idl:
* storage/DatabaseDetails.h:
* storage/DatabaseSync.cpp:
* storage/DatabaseSync.h:
* storage/DatabaseSync.idl:
* storage/DatabaseTask.cpp:
* storage/DatabaseTask.h:
* storage/DatabaseThread.cpp:
* storage/DatabaseThread.h:
* storage/DatabaseTracker.cpp:
* storage/DatabaseTracker.h:
* storage/DatabaseTrackerClient.h:
* storage/OriginQuotaManager.cpp:
* storage/OriginQuotaManager.h:
* storage/OriginUsageRecord.cpp:
* storage/OriginUsageRecord.h:
* storage/SQLCallbackWrapper.h:
* storage/SQLError.h:
* storage/SQLError.idl:
* storage/SQLException.h:
* storage/SQLException.idl:
* storage/SQLResultSet.cpp:
* storage/SQLResultSet.h:
* storage/SQLResultSet.idl:
* storage/SQLResultSetRowList.cpp:
* storage/SQLResultSetRowList.h:
* storage/SQLResultSetRowList.idl:
* storage/SQLStatement.cpp:
* storage/SQLStatement.h:
* storage/SQLStatementCallback.h:
* storage/SQLStatementCallback.idl:
* storage/SQLStatementErrorCallback.h:
* storage/SQLStatementErrorCallback.idl:
* storage/SQLStatementSync.cpp:
* storage/SQLStatementSync.h:
* storage/SQLTransaction.cpp:
* storage/SQLTransaction.h:
* storage/SQLTransaction.idl:
* storage/SQLTransactionCallback.h:
* storage/SQLTransactionCallback.idl:
* storage/SQLTransactionClient.cpp:
* storage/SQLTransactionClient.h:
* storage/SQLTransactionCoordinator.cpp:
* storage/SQLTransactionCoordinator.h:
* storage/SQLTransactionErrorCallback.h:
* storage/SQLTransactionErrorCallback.idl:
* storage/SQLTransactionSync.cpp:
* storage/SQLTransactionSync.h:
* storage/SQLTransactionSync.idl:
* storage/SQLTransactionSyncCallback.h:
* storage/SQLTransactionSyncCallback.idl:
* storage/chromium/DatabaseObserver.h:
* storage/chromium/DatabaseTrackerChromium.cpp:
* storage/chromium/QuotaTracker.cpp:
* storage/chromium/QuotaTracker.h:
* storage/chromium/SQLTransactionClientChromium.cpp:
* workers/WorkerContext.cpp:
* workers/WorkerContext.h:
* workers/WorkerContext.idl:
* workers/WorkerThread.cpp:
(WebCore::WorkerThreadShutdownStartTask::performTask):
(WebCore::WorkerThread::stop):

Source/WebKit/chromium:

* src/DatabaseObserver.cpp:
* src/WebDatabase.cpp:
(WebKit::WebDatabase::updateDatabaseSize):
(WebKit::WebDatabase::updateSpaceAvailable):
(WebKit::WebDatabase::resetSpaceAvailable):
(WebKit::WebDatabase::closeDatabaseImmediately):
* src/WebRuntimeFeatures.cpp:
(WebKit::WebRuntimeFeatures::enableDatabase):
(WebKit::WebRuntimeFeatures::isDatabaseEnabled):

Source/WebKit/efl:

* WebCoreSupport/ChromeClientEfl.cpp:
* WebCoreSupport/ChromeClientEfl.h:
* ewk/ewk_settings.cpp:
(ewk_settings_web_database_default_quota_get):
(ewk_settings_web_database_path_set):
(ewk_settings_web_database_path_get):

Source/WebKit/gtk:

* WebCoreSupport/ChromeClientGtk.cpp:
* WebCoreSupport/ChromeClientGtk.h:
* webkit/webkitsecurityorigin.cpp:
(webkit_security_origin_get_web_database_usage):
(webkit_security_origin_get_web_database_quota):
(webkit_security_origin_set_web_database_quota):
(webkit_security_origin_get_all_web_databases):
* webkit/webkitwebdatabase.cpp:
(webkit_web_database_get_display_name):
(webkit_web_database_get_expected_size):
(webkit_web_database_get_size):
(webkit_web_database_get_filename):
(webkit_web_database_remove):
(webkit_remove_all_web_databases):
(webkit_get_web_database_directory_path):
(webkit_set_web_database_directory_path):
* webkit/webkitwebview.cpp:
(webkit_web_view_update_settings):
(webkit_web_view_settings_notify):

Source/WebKit/haiku:

* WebCoreSupport/ChromeClientHaiku.h:

Source/WebKit/mac:

* Storage/WebDatabaseManager.mm:
* Storage/WebDatabaseManagerInternal.h:
* Storage/WebDatabaseManagerPrivate.h:
* Storage/WebDatabaseQuotaManager.mm:
(-[WebDatabaseQuotaManager usage]):
(-[WebDatabaseQuotaManager quota]):
(-[WebDatabaseQuotaManager setQuota:]):
* Storage/WebDatabaseTrackerClient.h:
* Storage/WebDatabaseTrackerClient.mm:
* WebCoreSupport/WebChromeClient.h:
* WebCoreSupport/WebChromeClient.mm:
* WebCoreSupport/WebSecurityOrigin.mm:
(-[WebSecurityOrigin usage]):
(-[WebSecurityOrigin quota]):
(-[WebSecurityOrigin setQuota:]):
* WebView/WebFrame.mm:
(-[WebFrame _cacheabilityDictionary]):
* WebView/WebView.mm:
(-[WebView _commonInitializationWithFrameName:groupName:usesDocumentViews:]):
(-[WebView _preferencesChanged:]):

Source/WebKit/qt:

* Api/qwebdatabase.cpp:
(QWebDatabase::displayName):
(QWebDatabase::expectedSize):
(QWebDatabase::size):
(QWebDatabase::fileName):
(QWebDatabase::removeDatabase):
(QWebDatabase::removeAllDatabases):
* Api/qwebsecurityorigin.cpp:
(QWebSecurityOrigin::databaseUsage):
(QWebSecurityOrigin::databaseQuota):
(QWebSecurityOrigin::setDatabaseQuota):
(QWebSecurityOrigin::allOrigins):
(QWebSecurityOrigin::databases):
* Api/qwebsettings.cpp:
(QWebSettingsPrivate::apply):
(QWebSettings::setOfflineStoragePath):
(QWebSettings::offlineStoragePath):
* WebCoreSupport/ChromeClientQt.cpp:
* WebCoreSupport/ChromeClientQt.h:

Source/WebKit/win:

* ForEachCoClass.h:
* WebCoreSupport/WebChromeClient.cpp:
* WebCoreSupport/WebChromeClient.h:
* WebDatabaseManager.cpp:
* WebDatabaseManager.h:
* WebSecurityOrigin.cpp:
(WebSecurityOrigin::usage):
(WebSecurityOrigin::quota):
(WebSecurityOrigin::setQuota):
* WebView.cpp:
(WebView::initWithFrame):
(WebView::notifyPreferencesChanged):

Source/WebKit/wince:

* WebCoreSupport/ChromeClientWinCE.cpp:
* WebCoreSupport/ChromeClientWinCE.h:

Source/WebKit/wx:

* WebKitSupport/ChromeClientWx.cpp:
* WebKitSupport/ChromeClientWx.h:
* WebView.cpp:
(wxWebView::Create):
(wxWebView::SetDatabaseDirectory):
(wxWebView::GetDatabaseDirectory):
(wxWebView::SetDatabasesEnabled):
(wxWebView::AreDatabasesEnabled):

Source/WebKit2:

* WebProcess/WebCoreSupport/WebChromeClient.cpp:
* WebProcess/WebCoreSupport/WebChromeClient.h:
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::updatePreferences):
* WebProcess/WebProcess.cpp:
(WebKit::WebProcess::initializeWebProcess):

WebKitLibraries:

* win/tools/vsprops/FeatureDefines.vsprops:
* win/tools/vsprops/FeatureDefinesCairo.vsprops:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95271 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years ago[chromium] add timeout to test expectation of styles-source-lines.html
keishi@webkit.org [Fri, 16 Sep 2011 04:07:13 +0000 (04:07 +0000)]
[chromium] add timeout to test expectation of styles-source-lines.html

* platform/chromium/test_expectations.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95270 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years ago[chromium] add timeout to test expectation of styles-new-API.html
keishi@webkit.org [Fri, 16 Sep 2011 04:01:27 +0000 (04:01 +0000)]
[chromium] add timeout to test expectation of styles-new-API.html

* platform/chromium/test_expectations.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95269 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years ago[chromium] rebaseline expectations due to r95264
keishi@webkit.org [Fri, 16 Sep 2011 03:59:22 +0000 (03:59 +0000)]
[chromium] rebaseline expectations due to r95264

* platform/chromium-cg-mac/fast/repaint/japanese-rl-selection-repaint-in-regions-expected.png:
* platform/chromium-mac/fast/repaint/japanese-rl-selection-repaint-in-regions-expected.png:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95268 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years ago[chromium] added fail expectation for back-with-fragment-change.php
keishi@webkit.org [Fri, 16 Sep 2011 03:52:35 +0000 (03:52 +0000)]
[chromium] added fail expectation for back-with-fragment-change.php

* platform/chromium/test_expectations.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95267 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years ago[chromium] adding text_expectation for zoom-svg-through-object-with-percentage-size...
keishi@webkit.org [Fri, 16 Sep 2011 03:48:05 +0000 (03:48 +0000)]
[chromium] adding text_expectation for zoom-svg-through-object-with-percentage-size.xhtml

* platform/chromium/test_expectations.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95266 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years ago[chromium] adding fail to test_expectations due to r95188
keishi@webkit.org [Fri, 16 Sep 2011 03:44:43 +0000 (03:44 +0000)]
[chromium] adding fail to test_expectations due to r95188

* platform/chromium/test_expectations.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95265 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years ago[CSSRegions] Regions should not slice line box rendering
achicu@adobe.com [Fri, 16 Sep 2011 02:56:19 +0000 (02:56 +0000)]
[CSSRegions] Regions should not slice line box rendering
https://bugs.webkit.org/show_bug.cgi?id=66198

Source/WebCore:

Created a new LayoutState constructor for the RenderFlowThread. It will
set m_isPaginated to true and force a pageHeight if 1. The actual pageHeight is
not used, because pageLogicalHeightForOffset will actually redirect the call
to RenderFlowThread.

Removed some of the duplicate code that calculated the page logical offset.
Added new methods like logicalPageOffset, pageLogicalHeightForOffset,
pageRemainingLogicalHeightForOffset.

There are still some issues related to incremental layout and different region widths.
Those issues will be addressed in different patches.

Reviewed by David Hyatt.

Tests: fast/regions/text-region-breaks.html
       fast/regions/text-region-split-horizontal-bt.html
       fast/regions/text-region-split-vertical-rl.html
       fast/regions/text-region-split-vertical.html
       fast/regions/text-region-split.html

* rendering/LayoutState.cpp:
(WebCore::LayoutState::LayoutState):
* rendering/LayoutState.h:
(WebCore::LayoutState::LayoutState):
(WebCore::LayoutState::isPaginated):
* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::positionNewFloats):
(WebCore::RenderBlock::adjustForRegionFittingIfNeeded):
(WebCore::RenderBlock::nextPageLogicalTopExcludingBoundaryPoint):
(WebCore::RenderBlock::nextPageLogicalTopIncludingBoundaryPoint):
(WebCore::inNormalFlow):
(WebCore::RenderBlock::applyBeforeBreak):
(WebCore::RenderBlock::applyAfterBreak):
(WebCore::RenderBlock::logicalPageOffset):
(WebCore::RenderBlock::pageLogicalHeightForOffset):
(WebCore::RenderBlock::pageRemainingLogicalHeightForOffset):
(WebCore::RenderBlock::adjustForUnsplittableChild):
(WebCore::RenderBlock::adjustLinePositionForPagination):
* rendering/RenderBlock.h:
* rendering/RenderFlowThread.cpp:
(WebCore::RenderFlowThread::layout):
(WebCore::RenderFlowThread::regionLogicalHeightForLine):
(WebCore::RenderFlowThread::regionRemainingLogicalHeightForLine):
* rendering/RenderFlowThread.h:
* rendering/RenderView.cpp:
(WebCore::RenderView::pushLayoutState):
* rendering/RenderView.h:
(WebCore::LayoutStateMaintainer::LayoutStateMaintainer):
(WebCore::LayoutStateMaintainer::push):

LayoutTests:

Also updated the results for some older tests that now work correctly.

Reviewed by David Hyatt.

* fast/regions/resources/helper.js:
(isDebugEnabled):
(assertEqualRects):
(testBoundingRects):
(assertRectContains):
(addPageLevelDebugBox):
(testContentToRegionsMapping):
* fast/regions/text-region-breaks-expected.txt: Added.
* fast/regions/text-region-breaks.html: Added.
* fast/regions/text-region-split-expected.txt: Added.
* fast/regions/text-region-split-horizontal-bt-expected.txt: Added.
* fast/regions/text-region-split-horizontal-bt.html: Added.
* fast/regions/text-region-split-vertical-expected.txt: Added.
* fast/regions/text-region-split-vertical-rl-expected.txt: Added.
* fast/regions/text-region-split-vertical-rl.html: Added.
* fast/regions/text-region-split-vertical.html: Added.
* fast/regions/text-region-split.html: Added.
* fast/regions/webkit-flow-floats-inside-regions-bounds-expected.txt:
* fast/regions/webkit-flow-inlines-inside-regions-bounds-expected.txt:
* fast/regions/webkit-flow-inlines-inside-regions-bounds-vertical-expected.txt:
* fast/regions/webkit-flow-inlines-inside-regions-bounds-vertical-rl-expected.txt:
* fast/repaint/japanese-rl-selection-repaint-in-regions.html:
* platform/mac/fast/repaint/japanese-rl-selection-repaint-in-regions-expected.png:
* platform/mac/fast/repaint/japanese-rl-selection-repaint-in-regions-expected.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95264 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years ago[chromium] rebaseline expectations due to r95239
keishi@webkit.org [Fri, 16 Sep 2011 02:53:43 +0000 (02:53 +0000)]
[chromium] rebaseline expectations due to r95239

* platform/chromium-cg-mac-leopard/fast/forms/menulist-option-wrap-expected.png:
* platform/chromium-cg-mac/fast/forms/menulist-option-wrap-expected.png:
* platform/chromium-mac/fast/forms/menulist-option-wrap-expected.png:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95263 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoImplement a PopStateEvent constructor for JSC
haraken@google.com [Fri, 16 Sep 2011 02:45:55 +0000 (02:45 +0000)]
Implement a PopStateEvent constructor for JSC
https://bugs.webkit.org/show_bug.cgi?id=67977

Reviewed by Sam Weinig.

Source/WebCore:

Test: fast/events/constructors/pop-state-event-constructor.html

* bindings/generic/EventConstructors.h: Added a definition for the PopStateEvent constructor.
* bindings/js/JSEventConstructors.cpp: Added #includes for PopStateEvent.
* dom/PopStateEvent.cpp:
(WebCore::PopStateEventInit::PopStateEventInit):
(WebCore::PopStateEvent::PopStateEvent):
(WebCore::PopStateEvent::create):
* dom/PopStateEvent.h: Added a definition for PopStateEventInit.
* dom/PopStateEvent.idl: Makes PopStateEvent constructible.

LayoutTests:

pop-state-event-constructor.html checks the behavior of the PopStateEvent constructor.

* fast/events/constructors/pop-state-event-constructor-expected.txt: Added.
* fast/events/constructors/pop-state-event-constructor.html: Added.
* platform/chromium/test_expectations.txt: Skipped pop-state-event-constructor.html, since V8 does not yet have the PopStateEvent constructor.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95262 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years ago[chromium] remove duplicate entries in test_expectations.txt
keishi@webkit.org [Fri, 16 Sep 2011 02:43:37 +0000 (02:43 +0000)]
[chromium] remove duplicate entries in test_expectations.txt

* platform/chromium/test_expectations.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95261 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoFragment navigations should interrupt a provisional load of a different document
mihaip@chromium.org [Fri, 16 Sep 2011 02:16:46 +0000 (02:16 +0000)]
Fragment navigations should interrupt a provisional load of a different document
https://bugs.webkit.org/show_bug.cgi?id=64556

Source/WebCore:

Reviewed by Adam Barth.

Tests: http/tests/history/back-with-fragment-change.php
       http/tests/navigation/navigation-interrupted-by-fragment.html

* loader/FrameLoader.cpp: Stop provisional load if a fragment commits.
* loader/HistoryController.cpp: Don't commit the wrong provisional item.

LayoutTests:

Reviewed by Adam Barth.

Required page-dismissal-modal-dialogs-iframe.html to be updated since
the dummy <a href="#"> link was clicked after the provisional load was
kicked off, thus causing it to to be aborted.

* fast/loader/page-dismissal-modal-dialogs.html:
* fast/loader/resources/page-dismissal-modal-dialogs-iframe.html:
* http/tests/history/back-with-fragment-change-expected.txt: Added.
* http/tests/history/back-with-fragment-change.php: Added.
* http/tests/history/resources/back-with-fragment-change-target.html: Added.
* http/tests/navigation/navigation-interrupted-by-fragment-expected.txt: Added.
* http/tests/navigation/navigation-interrupted-by-fragment.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95259 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoAdd Antoine Labour and Shawn Singh to the contributors-but-not-committers list.
jamesr@google.com [Fri, 16 Sep 2011 02:14:07 +0000 (02:14 +0000)]
Add Antoine Labour and Shawn Singh to the contributors-but-not-committers list.

* Scripts/webkitpy/common/config/committers.py:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95258 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoUpdateChangeLogsWithReviewer should be able to determine reviewer of latest reviewed...
commit-queue@webkit.org [Fri, 16 Sep 2011 02:03:20 +0000 (02:03 +0000)]
UpdateChangeLogsWithReviewer should be able to determine reviewer of latest reviewed patch in a bug
https://bugs.webkit.org/show_bug.cgi?id=68003

Patch by Tom Zakrajsek <tomz@codeaurora.org> on 2011-09-15
Reviewed by Adam Barth.

* Scripts/webkitpy/tool/mocktool.py:
* Scripts/webkitpy/tool/steps/updatechangelogswithreview_unittest.py:
* Scripts/webkitpy/tool/steps/updatechangelogswithreviewer.py:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95257 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years ago[chromium] Add temporary diagnostics for LayerTreeHost::commitTo crash
enne@google.com [Fri, 16 Sep 2011 01:54:35 +0000 (01:54 +0000)]
[chromium] Add temporary diagnostics for LayerTreeHost::commitTo crash
https://bugs.webkit.org/show_bug.cgi?id=68204

Reviewed by James Robinson.

Add CRASH calls to determine which assumptions are being violated.

Source/WebCore:

* platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
(WebCore::CCLayerTreeHost::commitTo):

Source/WebKit/chromium:

* src/WebViewImpl.cpp:
(WebKit::WebViewImpl::composite):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95256 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoRemove TestWebKitAPI from the chromium build until it is made to work
levin@chromium.org [Fri, 16 Sep 2011 01:32:32 +0000 (01:32 +0000)]
Remove TestWebKitAPI from the chromium build until it is made to work
with the shared component build.

* WebKit.gyp:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95255 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoVersioning.
mrowe@apple.com [Fri, 16 Sep 2011 01:32:14 +0000 (01:32 +0000)]
Versioning.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95254 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoAdd method to scroll current node to specific position in Chromium WebKit API
fsamuel@chromium.org [Fri, 16 Sep 2011 01:25:24 +0000 (01:25 +0000)]
Add method to scroll current node to specific position in Chromium WebKit API
https://bugs.webkit.org/show_bug.cgi?id=68192

Patch by Varun Jain <varunjain@google.com> on 2011-09-15
Reviewed by Dimitri Glazkov.

*  Source/WebKit/chromium/public/WebView.h:
*  Source/WebKit/chromium/src/WebViewImpl.cpp:
*  Source/WebKit/chromium/src/WebViewImpl.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95252 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years ago[chromium] skipping tests due to r95188
keishi@webkit.org [Fri, 16 Sep 2011 01:24:06 +0000 (01:24 +0000)]
[chromium] skipping tests due to r95188

* platform/chromium/test_expectations.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95251 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoUnzip initialization lists and constructors in JSCell hierarchy (7/7)
mhahnenberg@apple.com [Fri, 16 Sep 2011 01:19:49 +0000 (01:19 +0000)]
Unzip initialization lists and constructors in JSCell hierarchy (7/7)
https://bugs.webkit.org/show_bug.cgi?id=68122

Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

Completed the seventh and final level of the refactoring to add finishCreation()
methods to all classes within the JSCell hierarchy with non-trivial
constructor bodies.

JSCallbackObject was missed in previous patches due to the fact that
it's non-obvious (at least to my script) that it is in the JSCell hierarchy, so
this is just a bit of retroactive cleanup.

* API/JSCallbackObject.h:
(JSC::JSCallbackObject::create):
* API/JSCallbackObjectFunctions.h:
(JSC::::JSCallbackObject):

Source/WebCore:

No new tests.

Completed the seventh and final level of the refactoring to add finishCreation()
methods to all classes within the JSCell hierarchy with non-trivial
constructor bodies.

This consists of moving the finishCreation() method call into the create methods
of the sixth level of the hierarchy as was done in previous patches.

The special cases for JSAudioConstructor, JSOptionConstructor, and JSImageConstructor
were also lumped in and given finishCreation() methods that are called in their
create methods because we are at the end and want to avoid a trivial patch just
for moving their finishCreation() methods from their constructor to their create method.

* bindings/js/JSAudioConstructor.cpp:
(WebCore::JSAudioConstructor::JSAudioConstructor):
(WebCore::JSAudioConstructor::finishCreation):
* bindings/js/JSAudioConstructor.h:
(WebCore::JSAudioConstructor::create):
* bindings/js/JSDOMBinding.h:
(WebCore::DOMConstructorWithDocument::DOMConstructorWithDocument):
* bindings/js/JSDOMWindowBase.cpp:
(WebCore::JSDOMWindowBase::JSDOMWindowBase):
* bindings/js/JSImageConstructor.cpp:
(WebCore::JSImageConstructor::JSImageConstructor):
(WebCore::JSImageConstructor::finishCreation):
* bindings/js/JSImageConstructor.h:
(WebCore::JSImageConstructor::create):
* bindings/js/JSOptionConstructor.cpp:
(WebCore::JSOptionConstructor::JSOptionConstructor):
(WebCore::JSOptionConstructor::finishCreation):
* bindings/js/JSOptionConstructor.h:
(WebCore::JSOptionConstructor::create):
* bindings/js/JSWorkerContextBase.cpp:
(WebCore::JSWorkerContextBase::JSWorkerContextBase):

The bindings generation script was also changed to move the finishCreation() call into the
create methods for descendants of JSWorkerContextBase and JSDOMWindowBase because those base
classes had it removed from their constructors.

* bindings/scripts/CodeGeneratorJS.pm:
(GenerateHeader):
* bridge/c/c_instance.cpp:
(JSC::Bindings::CRuntimeMethod::create):
(JSC::Bindings::CRuntimeMethod::CRuntimeMethod):
* bridge/jni/jsc/JavaInstanceJSC.cpp:
(JavaRuntimeMethod::create):
(JavaRuntimeMethod::JavaRuntimeMethod):
* bridge/objc/objc_instance.mm:
(ObjCRuntimeMethod::create):
(ObjCRuntimeMethod::ObjCRuntimeMethod):
* bridge/qt/qt_runtime.cpp:
(JSC::Bindings::QtRuntimeMetaMethod::QtRuntimeMetaMethod):
(JSC::Bindings::QtRuntimeConnectionMethod::QtRuntimeConnectionMethod):
* bridge/qt/qt_runtime.h:
(JSC::Bindings::QtRuntimeMetaMethod::create):
(JSC::Bindings::QtRuntimeConnectionMethod::create):

Source/WebKit/mac:

Completed the seventh and final level of the refactoring to add finishCreation()
methods to all classes within the JSCell hierarchy with non-trivial
constructor bodies.

* Plugins/Hosted/ProxyInstance.mm:
(WebKit::ProxyRuntimeMethod::create):
(WebKit::ProxyRuntimeMethod::ProxyRuntimeMethod):
* Plugins/Hosted/ProxyRuntimeObject.h:
(WebKit::ProxyRuntimeObject::create):
* Plugins/Hosted/ProxyRuntimeObject.mm:
(WebKit::ProxyRuntimeObject::ProxyRuntimeObject):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95250 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoA single line must not be split into two pages.
haraken@google.com [Fri, 16 Sep 2011 01:17:37 +0000 (01:17 +0000)]
A single line must not be split into two pages.
https://bugs.webkit.org/show_bug.cgi?id=65005

Reviewed by David Hyatt.

When the document width of a page is overflowed, the last line of the page can be
split into the next page. This is the regression caused by r88737. r88737 tried to
fix rounding errors in rendering calculations by expanding and shrinking a page
using one common method, resizePageRectsKeepingRatio(), but overlooked the case where
a document width gets overflowed.

Source/WebCore:

This patch fixes the problem by also using resizePageRectsKeepingRatio() for the case
where the document width gets overflowed.

Test: printing/single-line-must-not-be-split-into-two-pages.html

* WebCore.exp.in: Updated the signature of forceLayoutForPagination().
* page/Frame.cpp:
(WebCore::Frame::setPrinting): Added a new argument |originalPageSize|, which is an original page size before being expanded or shrunk.
* page/Frame.h:
* page/FrameView.cpp:
(WebCore::FrameView::forceLayoutForPagination): Uses resizePageRectsKeepingRatio() in the case where the document width gets overflowed.
* page/FrameView.h:
* page/PrintContext.cpp:
(WebCore::PrintContext::begin): Passes an original page size to setPrinting().
(WebCore::PrintContext::end): Ditto.

Source/WebKit/mac:

Test: printing/single-line-must-not-be-split-into-two-pages.html

* WebView/WebHTMLView.mm:
(-[WebHTMLView _web_setPrintingModeRecursive]): Passes an original page size to setPrinting().
(-[WebHTMLView _web_clearPrintingModeRecursive]): Ditto.
(-[WebHTMLView _web_setPrintingModeRecursiveAndAdjustViewSize]): Ditto.
(-[WebHTMLView _beginPrintModeWithMinimumPageWidth:height:maximumPageWidth:]): Ditto.
(-[WebHTMLView _beginPrintModeWithPageWidth:height:shrinkToFit:]): Ditto.
(-[WebHTMLView _endPrintMode]): Ditto.
(-[WebHTMLView _beginScreenPaginationModeWithPageSize:shrinkToFit:]): Ditto.
(-[WebHTMLView _endScreenPaginationMode]): Ditto.
(-[WebHTMLView layoutToMinimumPageWidth:height:originalPageWidth:originalPageHeight:maximumShrinkRatio:adjustingViewSize:]): Ditto.
(-[WebHTMLView layout]): Ditto.
(-[WebHTMLView _setPrinting:minimumPageLogicalWidth:logicalHeight:originalPageWidth:originalPageHeight:maximumShrinkRatio:adjustViewSize:paginateScreenContent:]): Ditto.
(-[WebHTMLView adjustPageHeightNew:top:bottom:limit:]): Ditto.
(-[WebHTMLView setPageWidthForPrinting:]): Ditto.

Source/WebKit/win:

Test: printing/single-line-must-not-be-split-into-two-pages.html

* WebFrame.cpp:
(WebFrame::setPrinting): Passes an original page size to setPrinting().
(WebFrame::setInPrintingMode): Ditto.
* WebFrame.h:

LayoutTests:

The added test checks if the last line does not split across pages.

* platform/chromium/test_expectations.txt: Skipped the added test since setPrinting() is not yet implemented.
* platform/gtk/Skipped: Ditto.
* platform/mac/printing/single-line-must-not-be-split-into-two-pages-expected.txt: Added.
* platform/qt/Skipped: Ditto.
* platform/win/Skipped: Ditto.
* platform/wk2/Skipped: Ditto.
* printing/single-line-must-not-be-split-into-two-pages.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95249 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoUnreviewed, rolling out r95243 and r95246.
commit-queue@webkit.org [Fri, 16 Sep 2011 01:10:40 +0000 (01:10 +0000)]
Unreviewed, rolling out r95243 and r95246.
http://trac.webkit.org/changeset/95243
http://trac.webkit.org/changeset/95246
https://bugs.webkit.org/show_bug.cgi?id=68202

Broke the Windows build (Requested by smfr on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2011-09-15

* WebCore.vcproj/WebCore.vcproj:
* platform/graphics/ca/win/LayerChangesFlusher.cpp:
(WebCore::LayerChangesFlusher::hookCallback):
* platform/graphics/ca/win/PlatformCAAnimationWin.cpp:
(PlatformCAAnimation::copy):
* platform/win/StructuredExceptionHandlerSupressor.h: Removed.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95248 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoPython version check is confusing in test-webkitpy
commit-queue@webkit.org [Fri, 16 Sep 2011 00:39:34 +0000 (00:39 +0000)]
Python version check is confusing in test-webkitpy
https://bugs.webkit.org/show_bug.cgi?id=68004

Patch by Tom Zakrajsek <tomz@codeaurora.org> on 2011-09-15
Reviewed by Adam Barth.

* Scripts/test-webkitpy:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95247 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoAttempt to fix Windows build after r95243.
simon.fraser@apple.com [Fri, 16 Sep 2011 00:33:34 +0000 (00:33 +0000)]
Attempt to fix Windows build after r95243.

* WebCore.vcproj/WebCore.vcproj:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95246 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoMake custom scrollbar theme for use in DRT, to reduce pixel differences between platforms
simon.fraser@apple.com [Fri, 16 Sep 2011 00:18:34 +0000 (00:18 +0000)]
Make custom scrollbar theme for use in DRT, to reduce pixel differences between platforms
https://bugs.webkit.org/show_bug.cgi?id=68134

Reviewed by James Robinson.

Add new scrollbar theme, called ScrollbarThemeMock, for use in layout
tests. The mock scrollbar simply draws a light gray box in the track,
with a dark gray box for the thumb.

Add ScrollbarThemeMock files to the build on all platforms. It isn't hooked up yet.

* CMakeLists.txt:
* CMakeListsEfl.txt:
* CMakeListsWinCE.txt:
* GNUmakefile.list.am:
* WebCore.gypi:
* WebCore.pro:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
* platform/mac/ScrollbarThemeMac.mm:
(WebCore::ScrollbarTheme::nativeTheme):
* platform/mock/ScrollbarThemeMock.cpp: Added.
(WebCore::ScrollbarThemeMock::trackRect):
(WebCore::ScrollbarThemeMock::scrollbarThickness):
(WebCore::ScrollbarThemeMock::paintTrackBackground):
(WebCore::ScrollbarThemeMock::paintThumb):
* platform/mock/ScrollbarThemeMock.h: Added.
(WebCore::ScrollbarThemeMock::hasButtons):
(WebCore::ScrollbarThemeMock::hasThumb):
(WebCore::ScrollbarThemeMock::backButtonRect):
(WebCore::ScrollbarThemeMock::forwardButtonRect):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95245 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agohttps://bugs.webkit.org/show_bug.cgi?id=67884
bdakin@apple.com [Fri, 16 Sep 2011 00:17:50 +0000 (00:17 +0000)]
https://bugs.webkit.org/show_bug.cgi?id=67884
Delete button icon does not properly update when the device resolution changes
dynamically
-and corresponding-
<rdar://problem/10104632>

Reviewed by Darin Adler.

In DeleteButtonController::deviceScaleFactorChanged(), if the delete button is
currently showing, hide it and re-show it, forcing it to re-create the deletion
UI.
* editing/DeleteButtonController.cpp:
(WebCore::DeleteButtonController::deviceScaleFactorChanged):
* editing/DeleteButtonController.h:
* editing/Editor.cpp:
(WebCore::Editor::deviceScaleFactorChanged):
* editing/Editor.h:

Iterate through all of the frames and propagate the deviceScaleFactorChange()
message to Editor.
* page/Page.cpp:
(WebCore::Page::setDeviceScaleFactor):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95244 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years ago2011-09-15 Chris Marrin <cmarrin@apple.com>
cmarrin@apple.com [Thu, 15 Sep 2011 23:50:56 +0000 (23:50 +0000)]
2011-09-15  Chris Marrin  <cmarrin@apple.com>

        Crash can occur when doing a PlatformCAAnimation::copy() with no valueFunction
        https://bugs.webkit.org/show_bug.cgi?id=67510

        Reviewed by Adam Roben.

        Another fix to take care of one last crash when running pause-crash.html.
        CACF can't deal with null valueFunctions, so avoid setting it when it doesn't
        exist.

        This also adds logic to the Windows Hook in LayerChangesFlusher to prevent it
        from catching the null pointer exception generated by the pause-crash.html test
        before this bug was fixed. Windows was ignoring the exception, so the testcase
        would appear to succeed, even though it should have crashed.

        * WebCore.vcproj/WebCore.vcproj:
        * platform/graphics/ca/win/LayerChangesFlusher.cpp:
        (WebCore::LayerChangesFlusher::hookCallback):
        * platform/graphics/ca/win/PlatformCAAnimationWin.cpp:
        (PlatformCAAnimation::copy):
        * platform\win\StructuredExceptionHandlerSupressor.h: New file to encapsulate the exception handling supression.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95243 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agohttps://bugs.webkit.org/show_bug.cgi?id=27579
hyatt@apple.com [Thu, 15 Sep 2011 23:45:25 +0000 (23:45 +0000)]
https://bugs.webkit.org/show_bug.cgi?id=27579

Make sure that the border shorthand also resets border-image.

Reviewed by Beth Dakin.

Source/WebCore:

Added fast/borders/border-image-reset-by-border-shorthand.html.

* css/CSSParser.cpp:
(WebCore::CSSParser::parseValue):

LayoutTests:

* fast/borders/border-image-reset-by-border-shorthand-expected.txt: Added.
* fast/borders/border-image-reset-by-border-shorthand.html: Added.
* fast/borders/border-image-scaled-gradient.html:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95242 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years ago[chromium] Rebaselines due to r95203 and r95207.
levin@chromium.org [Thu, 15 Sep 2011 23:35:53 +0000 (23:35 +0000)]
[chromium] Rebaselines due to r95203 and r95207.

Also misc test_expectations additions.

* platform/chromium-cg-mac/fast/box-shadow/no-blur-multiple-offsets-expected.png: Added.
* platform/chromium-linux/fast/box-shadow/no-blur-multiple-offsets-expected.png: Added.
* platform/chromium-mac/fast/box-shadow/no-blur-multiple-offsets-expected.png: Added.
* platform/chromium-win/fast/box-shadow/no-blur-multiple-offsets-expected.png: Added.
* platform/chromium/fast/dom/NodeList/nodelist-item-call-as-function-expected.txt: Added.
* platform/chromium/test_expectations.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95241 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoThe DFG non-speculative JIT is no longer used and should be removed.
fpizlo@apple.com [Thu, 15 Sep 2011 23:24:27 +0000 (23:24 +0000)]
The DFG non-speculative JIT is no longer used and should be removed.
https://bugs.webkit.org/show_bug.cgi?id=68177

Reviewed by Geoffrey Garen.

This removes the non-speculative JIT and everything that relied on it,
including the ability to turn on DFG but not tiered compilation the,
ability to perform speculation failure into non-speculative JIT code,
and the ability to statically terminate speculation.

* GNUmakefile.list.am:
* JavaScriptCore.pro:
* JavaScriptCore.xcodeproj/project.pbxproj:
* bytecode/CodeBlock.h:
* bytecompiler/BytecodeGenerator.cpp:
(JSC::BytecodeGenerator::emitLoopHint):
* dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::ByteCodeParser):
(JSC::DFG::ByteCodeParser::getStrongPrediction):
(JSC::DFG::ByteCodeParser::parseBlock):
* dfg/DFGDriver.cpp:
(JSC::DFG::compile):
* dfg/DFGGenerationInfo.h:
* dfg/DFGGraph.cpp:
(JSC::DFG::Graph::predictArgumentTypes):
* dfg/DFGJITCodeGenerator.cpp:
* dfg/DFGJITCompiler.cpp:
(JSC::DFG::JITCompiler::linkOSRExits):
(JSC::DFG::JITCompiler::compileBody):
* dfg/DFGJITCompiler.h:
* dfg/DFGNode.h:
* dfg/DFGNonSpeculativeJIT.cpp: Removed.
* dfg/DFGNonSpeculativeJIT.h: Removed.
* dfg/DFGOSREntry.cpp:
(JSC::DFG::prepareOSREntry):
* dfg/DFGPropagator.cpp:
* dfg/DFGPropagator.h:
* dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::compile):
* dfg/DFGSpeculativeJIT.h:
(JSC::DFG::SpeculativeJIT::osrExits):
(JSC::DFG::SpeculativeJIT::speculationRecovery):
(JSC::DFG::SpeculativeJIT::speculationCheck):
(JSC::DFG::SpeculativeJIT::terminateSpeculativeExecution):
* jit/JIT.cpp:
(JSC::JIT::privateCompileMainPass):
(JSC::JIT::privateCompile):
* jit/JIT.h:
* jit/JITCode.h:
(JSC::JITCode::bottomTierJIT):
* runtime/JSGlobalData.cpp:
(JSC::JSGlobalData::JSGlobalData):
(JSC::JSGlobalData::~JSGlobalData):
* runtime/JSGlobalData.h:
* wtf/Platform.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95240 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agohttps://bugs.webkit.org/show_bug.cgi?id=50072
hyatt@apple.com [Thu, 15 Sep 2011 22:53:54 +0000 (22:53 +0000)]
https://bugs.webkit.org/show_bug.cgi?id=50072

Make overflow clipping to border-radius work across layers. This patch makes painting
work but does not attempt to fix hit testing. It also doesn't work when a composited
layer is clipped by a non-composited ancestor.

Add a new ClipRect class (used by ClipRects and RenderLayer) that is basically just tracking
a rect and a border radius taint. At the time we set a clip, if the rectangle is listed
as also being clipped by a radius, then we walk up the layer tree and push those inner border
rounded rect clips for any overflow areas in the containing block chain.

Reviewed by Beth Dakin.

Source/WebCore:

Added new tests in fast/clip.

* rendering/RenderBox.cpp:
(WebCore::RenderBox::pushContentsClip):
* rendering/RenderLayer.cpp:
(WebCore::inContainingBlockChain):
(WebCore::RenderLayer::clipToRect):
(WebCore::RenderLayer::restoreClip):
(WebCore::RenderLayer::paintLayer):
(WebCore::RenderLayer::hitTestLayer):
(WebCore::RenderLayer::calculateClipRects):
(WebCore::RenderLayer::backgroundClipRect):
(WebCore::RenderLayer::calculateRects):
(WebCore::RenderLayer::childrenClipRect):
(WebCore::RenderLayer::selfClipRect):
* rendering/RenderLayer.h:
(WebCore::ClipRect::ClipRect):
(WebCore::ClipRect::rect):
(WebCore::ClipRect::setRect):
(WebCore::ClipRect::hasRadius):
(WebCore::ClipRect::setHasRadius):
(WebCore::ClipRect::operator==):
(WebCore::ClipRect::intersect):
(WebCore::ClipRect::move):
(WebCore::ClipRect::isEmpty):
(WebCore::ClipRect::intersects):
(WebCore::intersection):
(WebCore::ClipRects::overflowClipRect):
(WebCore::ClipRects::setOverflowClipRect):
(WebCore::ClipRects::fixedClipRect):
(WebCore::ClipRects::setFixedClipRect):
(WebCore::ClipRects::posClipRect):
(WebCore::ClipRects::setPosClipRect):
* rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::updateCompositedBounds):
(WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
(WebCore::RenderLayerBacking::paintIntoLayer):
* rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::addToOverlapMap):
(WebCore::RenderLayerCompositor::clippedByAncestor):
* rendering/RenderTreeAsText.cpp:
(WebCore::writeLayers):

LayoutTests:

* fast/clip/overflow-border-radius-combinations.html: Added.
* fast/clip/overflow-border-radius-composited.html: Added.
* fast/clip/overflow-border-radius-transformed.html: Added.
* platform/mac/fast/clip/overflow-border-radius-combinations-expected.png: Added.
* platform/mac/fast/clip/overflow-border-radius-combinations-expected.txt: Added.
* platform/mac/fast/clip/overflow-border-radius-composited-expected.png: Added.
* platform/mac/fast/clip/overflow-border-radius-composited-expected.txt: Added.
* platform/mac/fast/clip/overflow-border-radius-transformed-expected.png: Added.
* platform/mac/fast/clip/overflow-border-radius-transformed-expected.txt: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95239 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoReviewed by Adam Barth.
eric@webkit.org [Thu, 15 Sep 2011 22:10:50 +0000 (22:10 +0000)]
Reviewed by Adam Barth.

webkit-patch should be able to find users and add them to bugzilla groups
https://bugs.webkit.org/show_bug.cgi?id=63351

These are both very basic commands.  But it's now possible to find
all users matching a regexp, as well as add all users matching a regexp
to a set of groups.

bugzilla.py already knew how to find users (for validate-committer-lists)
but now it has the ability to modify the user records.

I split some of the logic out into a new EditUsersParser class
to try and reduce the amount of code in Bugzilla/BugzillaQueries.

* Scripts/webkitpy/common/net/bugzilla/bugzilla.py:
* Scripts/webkitpy/common/net/bugzilla/bugzilla_unittest.py:
* Scripts/webkitpy/tool/commands/__init__.py:
* Scripts/webkitpy/tool/commands/adduserstogroups.py: Added.
* Scripts/webkitpy/tool/commands/findusers.py: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95238 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoSource/WebCore: Crash in RenderBox::paintMaskImages due to a mask without an associat...
jchaffraix@webkit.org [Thu, 15 Sep 2011 21:59:10 +0000 (21:59 +0000)]
Source/WebCore: Crash in RenderBox::paintMaskImages due to a mask without an associated image
https://bugs.webkit.org/show_bug.cgi?id=50151

Reviewed by Simon Fraser.

Test: fast/css/empty-webkit-mask-crash.html

The crash stems from the fact that FillLayer::hasImage would walk over the linked list
of FillLayers and return true if one had an image. This means that hasImage() is true
does not mean that image() is non-NULL on all FillLayers.

* rendering/RenderBox.cpp:
(WebCore::RenderBox::paintMaskImages): Simplify the logic by doing the hasImage() check up-front
and properly check image() for each FillLayers. This has the nice benefit of changing the complexity
from O(n^2) to O(n), which was what the code expected anyway.

LayoutTests: Test for: Crash in RenderBox::paintMaskImages due to a mask without an associated image
https://bugs.webkit.org/show_bug.cgi?id=50151

Reviewed by Simon Fraser.

* fast/css/empty-webkit-mask-crash-expected.png: Added.
* fast/css/empty-webkit-mask-crash-expected.txt: Added.
* fast/css/empty-webkit-mask-crash.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95235 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoRemove ENABLE(SVG_AS_IMAGE) since all major ports have it on by default
eric@webkit.org [Thu, 15 Sep 2011 21:57:23 +0000 (21:57 +0000)]
Remove ENABLE(SVG_AS_IMAGE) since all major ports have it on by default
https://bugs.webkit.org/show_bug.cgi?id=68182

Reviewed by Adam Barth.

.:

* configure.ac:

Source/JavaScriptCore:

* Configurations/FeatureDefines.xcconfig:

Source/WebCore:

* Configurations/FeatureDefines.xcconfig:
* DerivedSources.make:
* GNUmakefile.am:
* features.pri:
* loader/cache/CachedImage.cpp:
(WebCore::CachedImage::createImage):

Source/WebKit/chromium:

* features.gypi:

Source/WebKit/mac:

* Configurations/FeatureDefines.xcconfig:

Source/WebKit2:

* Configurations/FeatureDefines.xcconfig:

Tools:

* Scripts/build-webkit:
* waf/build/settings.py:

WebKitLibraries:

* win/tools/vsprops/FeatureDefines.vsprops:
* win/tools/vsprops/FeatureDefinesCairo.vsprops:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95234 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoDFG speculative JIT sometimes asserts that a value is not a number
fpizlo@apple.com [Thu, 15 Sep 2011 21:53:48 +0000 (21:53 +0000)]
DFG speculative JIT sometimes asserts that a value is not a number
even when it doesn't know anything about the number
https://bugs.webkit.org/show_bug.cgi?id=68189

Reviewed by Oliver Hunt.

* dfg/DFGGenerationInfo.h:
(JSC::DFG::GenerationInfo::isUnknownJS):
* dfg/DFGJITCodeGenerator.cpp:
(JSC::DFG::JITCodeGenerator::isKnownNotNumber):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95233 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoUnreviewed. Make contributor email look-up case-insensitive.
eric@webkit.org [Thu, 15 Sep 2011 21:49:17 +0000 (21:49 +0000)]
Unreviewed.  Make contributor email look-up case-insensitive.

validate-committer-list was incorrectly reporting that "chang.shu@nokia.com"
was missing from committers.py due to case sensitivity.

This also includes a test expectations update to committers_unittest.py
after my previous change.

* Scripts/webkitpy/common/config/committers.py:
* Scripts/webkitpy/common/config/committers_unittest.py:
* Scripts/webkitpy/tool/bot/irc_command_unittest.py:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95232 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoUnreviewed. Updated this based on webkit-patch suggest-nominations and validate...
eric@webkit.org [Thu, 15 Sep 2011 21:43:28 +0000 (21:43 +0000)]
Unreviewed.  Updated this based on webkit-patch suggest-nominations and validate-committer-list output.

Add a bunch of email aliases to committers.py for regular contributors
who are committing using other email addresses than they have listed in the file.

* Scripts/webkitpy/common/config/committers.py:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95231 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoAll of the functionality in the non-speculative JIT should be
fpizlo@apple.com [Thu, 15 Sep 2011 21:41:41 +0000 (21:41 +0000)]
All of the functionality in the non-speculative JIT should be
available to the speculative JIT via helper methods
https://bugs.webkit.org/show_bug.cgi?id=68186

Reviewed by Oliver Hunt.

Stole all of the goodness from NonSpeculativeJIT and placed it
in JITCodeGenerator.  Left all of the badness (i.e. subtle code
duplication with SpeculativeJIT, etc).  This is in preparation
for removing the NonSpeculativeJIT entirely, but having its
goodness available for reuse in the SpeculativeJIT if necessary.

* dfg/DFGJITCodeGenerator.cpp:
(JSC::DFG::JITCodeGenerator::nonSpeculativeValueToNumber):
(JSC::DFG::JITCodeGenerator::nonSpeculativeValueToInt32):
(JSC::DFG::JITCodeGenerator::nonSpeculativeUInt32ToNumber):
(JSC::DFG::JITCodeGenerator::nonSpeculativeKnownConstantArithOp):
(JSC::DFG::JITCodeGenerator::nonSpeculativeBasicArithOp):
(JSC::DFG::JITCodeGenerator::nonSpeculativeArithMod):
(JSC::DFG::JITCodeGenerator::nonSpeculativeCheckHasInstance):
(JSC::DFG::JITCodeGenerator::nonSpeculativeInstanceOf):
* dfg/DFGJITCodeGenerator.h:
(JSC::DFG::JITCodeGenerator::nonSpeculativeAdd):
(JSC::DFG::JITCodeGenerator::nonSpeculativeArithSub):
* dfg/DFGNonSpeculativeJIT.cpp:
(JSC::DFG::NonSpeculativeJIT::compile):
* dfg/DFGNonSpeculativeJIT.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95230 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoUnreviewed, rolling out r95167.
commit-queue@webkit.org [Thu, 15 Sep 2011 21:24:09 +0000 (21:24 +0000)]
Unreviewed, rolling out r95167.
http://trac.webkit.org/changeset/95167
https://bugs.webkit.org/show_bug.cgi?id=68191

Patch needs further work. (Requested by mhahnenberg on
#webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2011-09-15

* JavaScriptCore.exp:
* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.def:
* runtime/JSCell.cpp:
(JSC::JSCell::toBoolean):
* runtime/JSCell.h:
(JSC::JSCell::JSValue::toBoolean):
* runtime/JSNotAnObject.cpp:
(JSC::JSNotAnObject::toBoolean):
* runtime/JSNotAnObject.h:
* runtime/JSObject.h:
* runtime/JSString.h:
* runtime/StringObjectThatMasqueradesAsUndefined.h:
(JSC::StringObjectThatMasqueradesAsUndefined::toBoolean):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95229 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoHaving an empty listener to beforeload events changes the behavior of other scripts
aestes@apple.com [Thu, 15 Sep 2011 21:21:11 +0000 (21:21 +0000)]
Having an empty listener to beforeload events changes the behavior of other scripts
https://bugs.webkit.org/show_bug.cgi?id=45586

Reviewed by Darin Adler.

Source/WebCore:

Test: fast/dom/beforeload/cached-image-before-load.html

When loading a cached image after a beforeload handler has been
installed on the document, ImageLoader would dispatch both the
beforeload and load events asynchronously in such a way that caused
load to fire first. Since a side effect of firing the beforeload event
is to wire up the CachedImage to its associated RenderImage object,
this work was not done by the time load fired, and scripts that queried
renderer-dependent attributes of the image in an onload handler would
get bogus values in return.

Fix this by ensuring load fires after beforeload in the cached image case.

* loader/ImageLoader.cpp:
(WebCore::ImageLoader::updateFromElement): Call setClient() after
dispatching beforeload, since setClient() will dispatch the load event
if the image is cached.

LayoutTests:

* fast/dom/beforeload/cached-image-before-load-expected.txt: Added.
* fast/dom/beforeload/cached-image-before-load.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95228 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoRemove ScrollView::platformContentsSize
andersca@apple.com [Thu, 15 Sep 2011 21:10:27 +0000 (21:10 +0000)]
Remove ScrollView::platformContentsSize
https://bugs.webkit.org/show_bug.cgi?id=68188

Reviewed by Darin Adler.

Since ScrollView keeps track of the contents size in ScrollView::m_contentsSize, we never
have to ask the underlying platform scroll view for contents size since it should always just
be equal to m_contentsSize.

* platform/ScrollView.cpp:
(WebCore::ScrollView::contentsSize):
(WebCore::ScrollView::wheelEvent):
* platform/ScrollView.h:
* platform/mac/ScrollViewMac.mm:
* platform/wx/ScrollViewWx.cpp:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95227 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoSubmitting a form with target=_blank works only once
jonlee@apple.com [Thu, 15 Sep 2011 21:04:09 +0000 (21:04 +0000)]
Submitting a form with target=_blank works only once
https://bugs.webkit.org/show_bug.cgi?id=28633
<rdar://problem/7357787>

Reviewed by Andy Estes.

Source/WebCore:

Test: fast/forms/submit-to-blank-multiple-times.html

The call to reset the multiple form submission bool is pushed down from the mouseDown handler to
handleMousePressEvent(), to include WK2 coverage, similar to keyEvent.

* page/EventHandler.cpp:
(WebCore::EventHandler::handleMousePressEvent):
(WebCore::EventHandler::keyEvent): clarified old FIXME comment. Both key events and mouse events
may submit a form multiple times, but the call to reset the handler should probably be in another
abstraction layer.
* page/mac/EventHandlerMac.mm:
(WebCore::EventHandler::mouseDown):

Source/WebKit/chromium:

* src/WebViewImpl.cpp:
(WebKit::WebViewImpl::mouseDown): Remove call to resetMultipleFormSubmissionProtection() since
it will be made in platform-independent function EventHandler::handleMousePressEvent().

LayoutTests:

New test that simulates mouse clicking submit button twice (which didn't work), as well as using the keyboard twice (which did work).

* fast/forms/resources/submit-to-blank-multiple-times-form-action.html: Added.
* fast/forms/submit-to-blank-multiple-times-expected.txt: Added.
* fast/forms/submit-to-blank-multiple-times.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95226 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoUnreviewed build fix for platforms that expect a linkable symbol
fpizlo@apple.com [Thu, 15 Sep 2011 21:00:40 +0000 (21:00 +0000)]
Unreviewed build fix for platforms that expect a linkable symbol
for primitive static const's.

* bytecode/CodeBlock.h:
* jit/JIT.cpp:
(JSC::JIT::emitOptimizationCheck):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95225 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years ago[chromium] Add missing GPU-CG to one of the expectations.
levin@chromium.org [Thu, 15 Sep 2011 20:57:58 +0000 (20:57 +0000)]
[chromium] Add missing GPU-CG to one of the expectations.

* platform/chromium/test_expectations.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95224 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoXMLDocumentParserQt.cpp incorrectly converts 0-based number into 1-based number
commit-queue@webkit.org [Thu, 15 Sep 2011 20:49:55 +0000 (20:49 +0000)]
XMLDocumentParserQt.cpp incorrectly converts 0-based number into 1-based number
https://bugs.webkit.org/show_bug.cgi?id=63540

Source/WebCore:

ZeroBasedNumber/OneBasedNumber are used in more places, inconsistency
in xml parser is fixed.

Patch by Peter Rybin <peter.rybin@gmail.com> on 2011-09-15
Reviewed by Adam Barth.

* bindings/js/ScriptController.cpp:
(WebCore::ScriptController::eventHandlerLineNumber):
* dom/ScriptableDocumentParser.h:
* dom/StyleElement.cpp:
(WebCore::StyleElement::StyleElement):
* dom/ViewportArguments.cpp:
(WebCore::parserLineNumber):
* html/parser/HTMLDocumentParser.cpp:
(WebCore::HTMLDocumentParser::lineNumber):
* html/parser/HTMLDocumentParser.h:
* inspector/InspectorResourceAgent.cpp:
(WebCore::InspectorResourceAgent::buildInitiatorObject):
* svg/SVGDocumentExtensions.cpp:
(WebCore::parserLineNumber):
* xml/parser/NewXMLDocumentParser.cpp:
(WebCore::NewXMLDocumentParser::lineNumber):
* xml/parser/NewXMLDocumentParser.h:
* xml/parser/XMLDocumentParser.cpp:
(WebCore::XMLDocumentParser::pushCurrentNode):
* xml/parser/XMLDocumentParser.h:
* xml/parser/XMLDocumentParserLibxml2.cpp:
(WebCore::PendingCallbacks::appendErrorCallback):
(WebCore::XMLDocumentParser::doWrite):
(WebCore::XMLDocumentParser::startElementNs):
(WebCore::XMLDocumentParser::error):
(WebCore::XMLDocumentParser::lineNumber):
(WebCore::XMLDocumentParser::columnNumber):
(WebCore::XMLDocumentParser::textPosition):
* xml/parser/XMLDocumentParserQt.cpp:
(WebCore::XMLDocumentParser::doWrite):
(WebCore::XMLDocumentParser::doEnd):
(WebCore::XMLDocumentParser::lineNumber):
(WebCore::XMLDocumentParser::columnNumber):
(WebCore::XMLDocumentParser::textPosition):
(WebCore::XMLDocumentParser::parse):
(WebCore::XMLDocumentParser::parseStartElement):

LayoutTests:

Bug is fixed, incorrect test expectations are properly fixed (line
number '0' is reported no more).

Patch by Peter Rybin <peter.rybin@gmail.com> on 2011-09-15
Reviewed by Adam Barth.

* fast/parser/changing-attrbutes-crash-expected.txt:
* html5lib/runner-expected.txt:
* platform/chromium/html5lib/runner-expected.txt:
* svg/custom/invalid-length-units-expected.txt:
* svg/custom/poly-parsing-error-expected.txt:
* svg/custom/svg-parse-overflow-1-expected.txt:
* svg/custom/svg-parse-overflow-2-expected.txt:
* svg/custom/svg-parse-overflow-3-expected.txt:
* svg/custom/svg-parse-overflow-4-expected.txt:
* svg/custom/svg-parse-overflow-5-expected.txt:
* svg/dom/fuzz-path-parser-expected.txt:
* svg/dom/path-parser-expected.txt:
* svg/dom/points-parser-expected.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95223 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoFix WebCore.gypi after r95130.
pkasting@chromium.org [Thu, 15 Sep 2011 20:43:14 +0000 (20:43 +0000)]
Fix WebCore.gypi after r95130.

Unreviewed, build fix.

* WebCore.gypi:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95222 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoUnreviewed build fix for assertion on existence of alternative
fpizlo@apple.com [Thu, 15 Sep 2011 20:05:01 +0000 (20:05 +0000)]
Unreviewed build fix for assertion on existence of alternative
CodeBlock.

* dfg/DFGGraph.cpp:
(JSC::DFG::Graph::predictArgumentTypes):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95221 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoValue profiles collect no information for global variables
fpizlo@apple.com [Thu, 15 Sep 2011 19:56:21 +0000 (19:56 +0000)]
Value profiles collect no information for global variables
https://bugs.webkit.org/show_bug.cgi?id=68143

Reviewed by Geoffrey Garen.

17% speed-up on string-fasta.  Neutral elsewhere.

* dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::getStrongPrediction):
(JSC::DFG::ByteCodeParser::stronglyPredict):
(JSC::DFG::ByteCodeParser::parseBlock):
* jit/JITPropertyAccess.cpp:
(JSC::JIT::emit_op_get_global_var):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95219 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years ago[chromium] Add temporary exception while bots catch up to r95203.
levin@chromium.org [Thu, 15 Sep 2011 19:49:53 +0000 (19:49 +0000)]
[chromium] Add temporary exception while bots catch up to r95203.

* platform/chromium/test_expectations.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95218 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoRemove ENABLE_SVG_ANIMATION as all major ports have it on by default
eric@webkit.org [Thu, 15 Sep 2011 19:43:33 +0000 (19:43 +0000)]
Remove ENABLE_SVG_ANIMATION as all major ports have it on by default
https://bugs.webkit.org/show_bug.cgi?id=68022

Reviewed by Ryosuke Niwa.

.:

* Source/cmake/OptionsEfl.cmake:
* Source/cmake/OptionsWinCE.cmake:
* Source/cmakeconfig.h.cmake:
* configure.ac:

Source/JavaScriptCore:

* Configurations/FeatureDefines.xcconfig:

Source/WebCore:

* Configurations/FeatureDefines.xcconfig:
* DerivedSources.make:
* GNUmakefile.am:
* features.pri:
* page/DOMWindow.idl:
* svg/svgtags.in:

Source/WebKit/chromium:

* features.gypi:

Source/WebKit/mac:

* Configurations/FeatureDefines.xcconfig:

Source/WebKit2:

* Configurations/FeatureDefines.xcconfig:

Tools:

* Scripts/build-webkit:
* waf/build/settings.py:

WebKitLibraries:

* win/tools/vsprops/FeatureDefines.vsprops:
* win/tools/vsprops/FeatureDefinesCairo.vsprops:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95216 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoOoops, revert accidentally commited unreviewed changes.
barraclough@apple.com [Thu, 15 Sep 2011 19:32:12 +0000 (19:32 +0000)]
Ooops, revert accidentally commited unreviewed changes.

* jit/JITOpcodes32_64.cpp:
(JSC::JIT::emit_op_jfalse):
(JSC::JIT::emit_op_jtrue):
* jit/JSInterfaceJIT.h:
* runtime/JSValue.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95214 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoUnreviewed, rolling out r95163.
commit-queue@webkit.org [Thu, 15 Sep 2011 19:24:56 +0000 (19:24 +0000)]
Unreviewed, rolling out r95163.
http://trac.webkit.org/changeset/95163
https://bugs.webkit.org/show_bug.cgi?id=68180

[Qt] The QT_GCC_X variables were removed in Qt5 by accident.
(Requested by darktears on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2011-09-15

.:

* Source/WebKit.pri:

Source/JavaScriptCore:

* JavaScriptCore.pro:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95212 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoWindows build fix p1.
barraclough@apple.com [Thu, 15 Sep 2011 19:05:12 +0000 (19:05 +0000)]
Windows build fix p1.

* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.def:
* jit/JITOpcodes32_64.cpp:
(JSC::JIT::emit_op_jfalse):
(JSC::JIT::emit_op_jtrue):
* jit/JSInterfaceJIT.h:
* runtime/JSValue.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95208 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoREGRESSION (Safari 5.1-r95043): Incorrect box-shadow offset
mdelaney@apple.com [Thu, 15 Sep 2011 19:00:42 +0000 (19:00 +0000)]
REGRESSION (Safari 5.1-r95043): Incorrect box-shadow offset
https://bugs.webkit.org/show_bug.cgi?id=68041

Reviewed by Dan Bernstein.

Source/WebCore:

Test: fast/box-shadow/no-blur-multiple-offsets.html

* platform/graphics/cg/GraphicsContextCG.cpp:
(WebCore::GraphicsContext::setPlatformShadow): Add hack back in for Lion if
context is not accelerated.

LayoutTests:

* fast/box-shadow/no-blur-multiple-offsets-expected.txt: Added.
* fast/box-shadow/no-blur-multiple-offsets.html: Added.
* platform/mac/fast/box-shadow/no-blur-multiple-offsets-expected.png: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95207 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoTiered compilation should be enabled by default on platforms
fpizlo@apple.com [Thu, 15 Sep 2011 18:54:17 +0000 (18:54 +0000)]
Tiered compilation should be enabled by default on platforms
that support the DFG JIT
https://bugs.webkit.org/show_bug.cgi?id=68136

Reviewed by Sam Weinig.

Neutral on SunSpider, 4% speed-up on V8, and 19% speed-up on
Kraken.  Large progressions on some benchmarks, including
3x on imaging-desaturate.

* wtf/Platform.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95206 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agodevirtualize preventExtensions
barraclough@apple.com [Thu, 15 Sep 2011 18:47:20 +0000 (18:47 +0000)]
devirtualize preventExtensions
https://bugs.webkit.org/show_bug.cgi?id=68176

Reviewed by Oliver Hunt.

This is virtual due to problems in JSFunction putting the prototype
property, but we can fix this problem a different way, just setting
the checkReadOnly flag to false in the put.

* runtime/JSFunction.cpp:
(JSC::JSFunction::getOwnPropertySlot):
* runtime/JSFunction.h:
* runtime/JSObject.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95205 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years ago2011-09-15 James Simonsen <simonjam@chromium.org>
simonjam@chromium.org [Thu, 15 Sep 2011 18:40:04 +0000 (18:40 +0000)]
2011-09-15  James Simonsen  <simonjam@chromium.org>

        Ref protect HTMLObjectElement and HTMLEmbedElement while requesting plugins
        https://bugs.webkit.org/show_bug.cgi?id=68014

        Reviewed by Adam Barth.

        * plugins/destroy-during-npp-new-object-with-fallback-content-expected.txt: Added.
        * plugins/destroy-during-npp-new-object-with-fallback-content.html: Added. Derivative of destroy-during-npp-new.html.
2011-09-15  James Simonsen  <simonjam@chromium.org>

        Ref protect HTMLObjectElement and HTMLEmbedElement while requesting plugins
        https://bugs.webkit.org/show_bug.cgi?id=68014

        Reviewed by Adam Barth.

        Test: plugins/destroy-during-npp-new.html under valgrind
              plugins/destroy-during-npp-new-object-with-fallback-content.html under valgrind

        * html/HTMLEmbedElement.cpp:
        (WebCore::HTMLEmbedElement::updateWidget):
        * html/HTMLObjectElement.cpp:
        (WebCore::HTMLObjectElement::updateWidget):
2011-09-15  James Simonsen  <simonjam@chromium.org>

        Ref protect HTMLObjectElement and HTMLEmbedElement while requesting plugins
        https://bugs.webkit.org/show_bug.cgi?id=68014

        Reviewed by Adam Barth.

        * src/FrameLoaderClientImpl.cpp:
        (WebKit::FrameLoaderClientImpl::createPlugin): Moved protection up to HTMLObjectElement and HTMLEmbedElement.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95204 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoExperiment with removing ability to call a collection (except document.all)
weinig@apple.com [Thu, 15 Sep 2011 18:27:48 +0000 (18:27 +0000)]
Experiment with removing ability to call a collection (except document.all)
https://bugs.webkit.org/show_bug.cgi?id=67579

Reviewed by Anders Carlsson.

Source/WebCore:

At the request of the public-script-coord mailing list (specifically Brendan Eich, see
http://lists.w3.org/Archives/Public/public-script-coord/2011JulSep/0360.html), this
patch removes the ability to call a collection (either a NodeList or HTMLCollection,
but not an HTMLAllCollection) as function, a syntax that we adopted to emulate IE.
It is being landed to find out if there are any sites relying on this behavior of WebKit,
or, if it is only used in IE only paths.  If we find sites are breaking, it should be rolled
out and we should inform the public-script-coord mailing list.

* bindings/js/JSHTMLAllCollectionCustom.cpp:
Update comment.

* bindings/js/JSHTMLCollectionCustom.cpp:
* bindings/js/JSNodeListCustom.cpp:
Remove custom call code.

* bindings/scripts/CodeGeneratorV8.pm:
Add support for V8CustomCall.

* dom/NodeList.idl:
* html/HTMLCollection.idl:
Remove CustomCall.

LayoutTests:

* fast/dom/Element/id-in-formcollection-expected.txt:
* fast/dom/Element/id-in-formcollection.html:
* fast/dom/HTMLOptionElement/collection-setter-getter-expected.txt:
* fast/dom/HTMLOptionElement/collection-setter-getter.html:
Don't use call syntax for tests that aren't explicitly testing it.

* fast/dom/NodeList/nodelist-item-call-as-function-expected.txt:
* fast/dom/NodeList/script-tests/nodelist-item-call-as-function.js:
Update test to show that we throw on call.

* fast/profiler/call-nodelist-as-function-expected.txt: Removed.
* fast/profiler/call-nodelist-as-function.html: Removed.
Remove test of removed feature.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95203 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years ago[chromium] Attempt to fix the shared build after r95188.
levin@chromium.org [Thu, 15 Sep 2011 18:17:50 +0000 (18:17 +0000)]
[chromium] Attempt to fix the shared build after r95188.

* WebKit.gyp:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95202 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoValue chaining for JSValue32_64 bitops.
ggaren@apple.com [Thu, 15 Sep 2011 17:58:27 +0000 (17:58 +0000)]
Value chaining for JSValue32_64 bitops.

Reviewed by Sam Weinig.

SunSpider says 2.3% faster, v8 ~1% faster (mostly due to crypto).

* jit/JIT.h:
* jit/JITInlineMethods.h:
(JSC::JIT::emitStoreAndMapInt32): New int32 helper function for stores
that can chain their results, which is the common case.

* jit/JITArithmetic32_64.cpp:
(JSC::JIT::emit_op_lshift):
(JSC::JIT::emitRightShift):
(JSC::JIT::emit_op_bitand):
(JSC::JIT::emit_op_bitor):
(JSC::JIT::emit_op_bitxor):
(JSC::JIT::emit_op_bitnot):
(JSC::JIT::emit_op_pre_inc):
(JSC::JIT::emit_op_pre_dec): Deployed new function.
(JSC::JIT::emit_op_post_inc):
(JSC::JIT::emit_op_post_dec): Had to reorder these functions so they
computed their result values last, to make them elligible for chaining.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95201 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoFix Mac build by including config.h where needed.
andersca@apple.com [Thu, 15 Sep 2011 17:53:38 +0000 (17:53 +0000)]
Fix Mac build by including config.h where needed.

* TestWebKitAPI/Tests/TestWebKitAPI/mac/InstanceMethodSwizzler.mm:
* TestWebKitAPI/Tests/WTF/MetaAllocator.cpp:
* TestWebKitAPI/Tests/WTF/RedBlackTree.cpp:
* TestWebKitAPI/Tests/WebKit2/WebArchive.cpp:
* TestWebKitAPI/Tests/WebKit2/WebArchive_Bundle.cpp:
* TestWebKitAPI/Tests/mac/DOMRangeOfString.mm:
* TestWebKitAPI/Tests/mac/DeviceScaleFactorOnBack.mm:
* TestWebKitAPI/Tests/mac/DynamicDeviceScaleFactor.mm:
* TestWebKitAPI/Tests/mac/StringByEvaluatingJavaScriptFromString.mm:
* TestWebKitAPI/mac/InstanceMethodSwizzler.mm:
* TestWebKitAPI/mac/JavaScriptTestMac.mm:
* TestWebKitAPI/mac/PlatformUtilitiesMac.mm:
* TestWebKitAPI/mac/PlatformWebViewMac.mm:
* TestWebKitAPI/mac/SyntheticBackingScaleFactorWindow.m:
* TestWebKitAPI/mac/WebKitAgnosticTest.mm:
* TestWebKitAPI/mac/main.mm:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95199 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoCanvasRenderingContext2D::State copy ctor should use initializer list.
commit-queue@webkit.org [Thu, 15 Sep 2011 17:11:16 +0000 (17:11 +0000)]
CanvasRenderingContext2D::State copy ctor should use initializer list.
https://bugs.webkit.org/show_bug.cgi?id=68152

Patch by Andreas Kling <kling@webkit.org> on 2011-09-15
Reviewed by Darin Adler.

* html/canvas/CanvasRenderingContext2D.cpp:
(WebCore::CanvasRenderingContext2D::State::State):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95198 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years ago[Qt][WK2] Make QWebError more friendly to QML.
alexis.menard@openbossa.org [Thu, 15 Sep 2011 16:54:57 +0000 (16:54 +0000)]
[Qt][WK2] Make QWebError more friendly to QML.
https://bugs.webkit.org/show_bug.cgi?id=67785

Reviewed by Simon Hausmann.

Make sure that we can use the loading errors in QML. We send it via a QJSValue which
has the properties needed to get the error code, the url and the type of error.

* UIProcess/API/qt/qdesktopwebview.cpp:
(QDesktopWebViewPrivate::loadDidFail):
(QDesktopWebViewPrivate::engine):
* UIProcess/API/qt/qdesktopwebview.h:
* UIProcess/API/qt/qdesktopwebview_p.h:
* UIProcess/API/qt/qtouchwebpage.h:
* UIProcess/API/qt/tests/commonviewtests/tst_commonviewtests.cpp:
(tst_CommonViewTests::loadNonexistentFileUrl):
* UIProcess/API/qt/tests/commonviewtests/webviewabstraction.cpp:
(WebViewAbstraction::WebViewAbstraction):
(WebViewAbstraction::touchViewLoadFailed):
(WebViewAbstraction::desktopViewLoadFailed):
* UIProcess/API/qt/tests/commonviewtests/webviewabstraction.h:
* UIProcess/API/qt/tests/testwindow.h:
* UIProcess/qt/QtWebPageProxy.cpp:
(QtWebPageProxy::loadDidFail):
* UIProcess/qt/QtWebPageProxy.h:
* UIProcess/qt/TouchViewInterface.cpp:
(WebKit::TouchViewInterface::loadDidFail):
(WebKit::TouchViewInterface::engine):
* UIProcess/qt/TouchViewInterface.h:
* UIProcess/qt/ViewInterface.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95197 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years ago[chromium] Add expectation for flaky tests.
levin@chromium.org [Thu, 15 Sep 2011 16:46:09 +0000 (16:46 +0000)]
[chromium] Add expectation for flaky tests.

* platform/chromium/test_expectations.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95196 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoRemove WebKit2-specific knowledge from the Message class
aroben@apple.com [Thu, 15 Sep 2011 16:43:15 +0000 (16:43 +0000)]
Remove WebKit2-specific knowledge from the Message class

This is in preparation for making some of our message-generations scripts usable by other
projects.

Fixes <http://webkit.org/b/68170> Model classes in WebKit2's message-generation scripts know
too much about WebKit2 details

Reviewed by Anders Carlsson.

* Scripts/webkit2/messages.py: Added constants for the message attributes we support.
(MessageReceiver.parse): Instead of recognizing individual attributes, just stick the
attributes into a set and pass it to the Message constructor.
(Message.__init__): Changed to take a generic set of attributes instead of individual
attributes.
(Message.has_attribute): Added. Returns true if the message has an attribute.
(message_is_variadic): Renamed from parameter_type_is_variadic. Code came from
Message.__init__, which set the old message.is_variadic property.

(decode_type):
(message_to_struct_declaration):
(forward_declarations_and_headers):
(async_case_statement):
(sync_case_statement):
(generate_message_handler):
Updated to use Message.has_attribute and message_is_variadic.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95195 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoClang build fix after r95172
aroben@apple.com [Thu, 15 Sep 2011 16:14:06 +0000 (16:14 +0000)]
Clang build fix after r95172

* dfg/DFGSpeculativeJIT.h:
(JSC::DFG::SpeculativeJIT::shouldSpeculateFinalObject):
(JSC::DFG::SpeculativeJIT::shouldSpeculateArray):
Added parentheses to make precendence clear.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95194 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoDon't bother calculating dirty rect for accelerated 2D canvases.
commit-queue@webkit.org [Thu, 15 Sep 2011 16:09:59 +0000 (16:09 +0000)]
Don't bother calculating dirty rect for accelerated 2D canvases.
https://bugs.webkit.org/show_bug.cgi?id=68158

Patch by Andreas Kling <kling@webkit.org> on 2011-09-15
Reviewed by Kenneth Rohde Christiansen.

For accelerated CanvasRenderingContext2D, didDraw() simply calls out
to RenderLayer::contentChanged(). Move this to the top of didDraw()
so we don't waste time calculating a precise dirty rect.

* html/canvas/CanvasRenderingContext2D.cpp:
(WebCore::CanvasRenderingContext2D::didDraw):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95193 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoSource/WebCore: [Skia/Chrome] Cleanup unneeded code now that GrGLInterface is used...
commit-queue@webkit.org [Thu, 15 Sep 2011 15:13:15 +0000 (15:13 +0000)]
Source/WebCore: [Skia/Chrome] Cleanup unneeded code now that GrGLInterface is used to set GL ctx per GL call.
https://bugs.webkit.org/show_bug.cgi?id=68096

Patch by Brian Salomon <bsalomon@google.com> on 2011-09-15
Reviewed by Stephen White.

This change removes PlatformContextSkia::makeGrContextCurrent now that
GrGLInterface is used to set the context on every Skia GL call.

Tested by every canvas layout test.

* platform/graphics/chromium/FontLinux.cpp:
(WebCore::Font::drawGlyphs):
* platform/graphics/skia/FontSkia.cpp:
(WebCore::Font::drawGlyphs):
* platform/graphics/skia/GraphicsContextSkia.cpp:
(WebCore::GraphicsContext::clearRect):
(WebCore::GraphicsContext::clip):
(WebCore::GraphicsContext::drawConvexPolygon):
(WebCore::GraphicsContext::drawEllipse):
(WebCore::GraphicsContext::drawFocusRing):
(WebCore::GraphicsContext::drawLine):
(WebCore::GraphicsContext::drawLineForTextChecking):
(WebCore::GraphicsContext::drawLineForText):
(WebCore::GraphicsContext::drawRect):
(WebCore::GraphicsContext::fillPath):
(WebCore::GraphicsContext::fillRect):
(WebCore::GraphicsContext::fillRoundedRect):
(WebCore::GraphicsContext::strokeArc):
(WebCore::GraphicsContext::strokePath):
(WebCore::GraphicsContext::strokeRect):
* platform/graphics/skia/ImageBufferSkia.cpp:
(WebCore::ImageBuffer::ImageBuffer):
(WebCore::ImageBuffer::~ImageBuffer):
(WebCore::ImageBuffer::copyImage):
(WebCore::ImageBuffer::draw):
(WebCore::ImageBuffer::drawPattern):
(WebCore::ImageBuffer::getUnmultipliedImageData):
(WebCore::ImageBuffer::getPremultipliedImageData):
(WebCore::ImageBuffer::putUnmultipliedImageData):
(WebCore::ImageBuffer::putPremultipliedImageData):
(WebCore::ImageBuffer::toDataURL):
* platform/graphics/skia/ImageSkia.cpp:
(WebCore::BitmapImage::draw):
(WebCore::BitmapImageSingleFrameSkia::draw):
* platform/graphics/skia/PlatformContextSkia.cpp:
(WebCore::PlatformContextSkia::clipPathAntiAliased):
(WebCore::PlatformContextSkia::setGraphicsContext3D):
* platform/graphics/skia/PlatformContextSkia.h:
* platform/graphics/skia/SkiaFontWin.cpp:
(WebCore::paintSkiaText):

Source/WebKit/chromium: [Skia/Chrome]
https://bugs.webkit.org/show_bug.cgi?id=68096

This change removes WebGraphicsContext3D::grGLInterface(). It has been
superceded by WebGraphicsContext3D::createGrGLInterface which sets up
the per-GL call callback used to set the correct context.

Patch by Brian Salomon <bsalomon@google.com> on 2011-09-15
Reviewed by Stephen White.

* public/WebGraphicsContext3D.h:
* src/GraphicsContext3DChromium.cpp:
(WebCore::GraphicsContext3DPrivate::grContext):
* src/WebGraphicsContext3D.cpp:
(WebKit::WebGraphicsContext3D::createGrGLInterface):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95192 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoUnreviewed; new expectations (Skia on Mac)
caryclark@google.com [Thu, 15 Sep 2011 14:42:33 +0000 (14:42 +0000)]
Unreviewed; new expectations (Skia on Mac)

This separates test failures that are specific to CG Mac from failures
for Skia on Mac.

* LayoutTests/platform/chromium/test_expectations.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95191 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoUnreviewed; new baselines (Skia on Mac)
caryclark@google.com [Thu, 15 Sep 2011 14:39:18 +0000 (14:39 +0000)]
Unreviewed; new baselines (Skia on Mac)
Updated reference images.

* LayoutTests/platform/chromium-gpu-mac/compositing/rtl/rtl-absolute-overflow-scrolled-expected.txt: Removed.
* LayoutTests/platform/chromium-gpu-mac/compositing/rtl/rtl-fixed-overflow-scrolled-expected.txt: Removed.
* LayoutTests/platform/chromium-gpu-mac/compositing/rtl/rtl-relative-expected.txt: Removed.
* LayoutTests/platform/chromium-gpu-mac/compositing/rtl/rtl-absolute-expected.txt: Removed.
* LayoutTests/platform/chromium-gpu-mac/compositing/rtl/rtl-absolute-overflow-expected.txt: Removed.
* LayoutTests/platform/chromium-gpu-mac/compositing/rtl/rtl-fixed-expected.txt: Removed.
* LayoutTests/platform/chromium-gpu-mac/compositing/rtl/rtl-fixed-overflow-expected.txt: Removed.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95190 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoUnreviewed, rolling out r95186.
commit-queue@webkit.org [Thu, 15 Sep 2011 14:36:14 +0000 (14:36 +0000)]
Unreviewed, rolling out r95186.
http://trac.webkit.org/changeset/95186
https://bugs.webkit.org/show_bug.cgi?id=68159

Invalid rebaseline. (Requested by dave_levin on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2011-09-15

* http/tests/loading/307-after-303-after-post-expected.txt:
* http/tests/security/mixedContent/insecure-image-in-main-frame-expected.txt:
* http/tests/security/mixedContent/insecure-script-in-iframe-expected.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95189 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoLet TestWebKitAPI work for chromium
commit-queue@webkit.org [Thu, 15 Sep 2011 14:08:42 +0000 (14:08 +0000)]
Let TestWebKitAPI work for chromium
https://bugs.webkit.org/show_bug.cgi?id=67756

Patch by Xianzhu Wang <wangxianzhu@chromium.org> on 2011-09-15
Reviewed by Sam Weinig.

Source/WebKit/chromium:

* WebKit.gyp:

Tools:

* Scripts/build-api-tests:
* Scripts/run-api-tests:
(isSupportedPlatform):
(runTest):
(populateTests):
* Scripts/webkitdirs.pm:
(determineBaseProductDir):
* TestWebKitAPI/Configurations/InjectedBundle.xcconfig:
* TestWebKitAPI/Configurations/TestWebKitAPI.xcconfig:
* TestWebKitAPI/Configurations/TestWebKitAPICommon.vsprops:
* TestWebKitAPI/InjectedBundleController.cpp:
* TestWebKitAPI/InjectedBundleMain.cpp:
* TestWebKitAPI/JavaScriptTest.cpp:
* TestWebKitAPI/PlatformUtilities.cpp:
* TestWebKitAPI/TestWebKitAPI.gypi: Added.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/TestWebKitAPIPrefix.h: Removed.
* TestWebKitAPI/Tests/WTF/CheckedArithmeticOperations.cpp:
* TestWebKitAPI/Tests/WTF/StringOperators.cpp:
* TestWebKitAPI/Tests/WTF/VectorBasic.cpp:
* TestWebKitAPI/Tests/WTF/VectorReverse.cpp:
* TestWebKitAPI/Tests/WebKit2/AboutBlankLoad.cpp:
* TestWebKitAPI/Tests/WebKit2/CanHandleRequest.cpp:
* TestWebKitAPI/Tests/WebKit2/CanHandleRequest_Bundle.cpp:
* TestWebKitAPI/Tests/WebKit2/CookieManager.cpp:
* TestWebKitAPI/Tests/WebKit2/DocumentStartUserScriptAlertCrash.cpp:
* TestWebKitAPI/Tests/WebKit2/DocumentStartUserScriptAlertCrash_Bundle.cpp:
* TestWebKitAPI/Tests/WebKit2/DownloadDecideDestinationCrash.cpp:
* TestWebKitAPI/Tests/WebKit2/EvaluateJavaScript.cpp:
* TestWebKitAPI/Tests/WebKit2/FailedLoad.cpp:
* TestWebKitAPI/Tests/WebKit2/Find.cpp:
* TestWebKitAPI/Tests/WebKit2/ForceRepaint.cpp:
* TestWebKitAPI/Tests/WebKit2/FrameMIMETypeHTML.cpp:
* TestWebKitAPI/Tests/WebKit2/FrameMIMETypePNG.cpp:
* TestWebKitAPI/Tests/WebKit2/HitTestResultNodeHandle.cpp:
* TestWebKitAPI/Tests/WebKit2/HitTestResultNodeHandle_Bundle.cpp:
* TestWebKitAPI/Tests/WebKit2/InjectedBundleBasic.cpp:
* TestWebKitAPI/Tests/WebKit2/InjectedBundleBasic_Bundle.cpp:
* TestWebKitAPI/Tests/WebKit2/LoadCanceledNoServerRedirectCallback.cpp:
* TestWebKitAPI/Tests/WebKit2/LoadCanceledNoServerRedirectCallback_Bundle.cpp:
* TestWebKitAPI/Tests/WebKit2/MouseMoveAfterCrash.cpp:
* TestWebKitAPI/Tests/WebKit2/MouseMoveAfterCrash_Bundle.cpp:
* TestWebKitAPI/Tests/WebKit2/PageLoadBasic.cpp:
* TestWebKitAPI/Tests/WebKit2/PageLoadDidChangeLocationWithinPageForFrame.cpp:
* TestWebKitAPI/Tests/WebKit2/PreventEmptyUserAgent.cpp:
* TestWebKitAPI/Tests/WebKit2/ResponsivenessTimerDoesntFireEarly.cpp:
* TestWebKitAPI/Tests/WebKit2/ResponsivenessTimerDoesntFireEarly_Bundle.cpp:
* TestWebKitAPI/Tests/WebKit2/RestoreSessionStateContainingFormData.cpp:
* TestWebKitAPI/Tests/WebKit2/SpacebarScrolling.cpp:
* TestWebKitAPI/Tests/WebKit2/WKPreferences.cpp:
* TestWebKitAPI/Tests/WebKit2/WKString.cpp:
* TestWebKitAPI/Tests/WebKit2/WKStringJSString.cpp:
* TestWebKitAPI/Tests/WebKit2/win/AltKeyGeneratesWMSysCommand.cpp:
* TestWebKitAPI/Tests/WebKit2/win/DoNotCopyANullCFURLResponse.cpp:
* TestWebKitAPI/Tests/WebKit2/win/HideFindIndicator.cpp:
* TestWebKitAPI/Tests/WebKit2/win/ResizeViewWhileHidden.cpp:
* TestWebKitAPI/Tests/WebKit2/win/TranslateMessageGeneratesWMChar.cpp:
* TestWebKitAPI/Tests/WebKit2/win/WMCloseCallsUIClientClose.cpp:
* TestWebKitAPI/Tests/WebKit2/win/WMPrint.cpp:
* TestWebKitAPI/TestsController.cpp:
* TestWebKitAPI/config.h: Copied from TestWebKitAPI/TestWebKitAPIPrefix.h.
* TestWebKitAPI/win/InjectedBundleControllerWin.cpp:
* TestWebKitAPI/win/PlatformUtilitiesWin.cpp:
* TestWebKitAPI/win/PlatformWebViewWin.cpp:
* TestWebKitAPI/win/TestWebKitAPI.vcproj:
* TestWebKitAPI/win/main.cpp:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95188 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoUnreviewed; new baselines (Skia on Mac)
caryclark@google.com [Thu, 15 Sep 2011 13:47:16 +0000 (13:47 +0000)]
Unreviewed; new baselines (Skia on Mac)
Updated reference images.

* LayoutTests/platform/chromium-mac/fast/borders/border-image-scaled-gradient-expected.png: Added.
* LayoutTests/platform/chromium-mac/fast/borders/border-image-rotate-transform-expected.png:
* LayoutTests/platform/chromium-mac/fast/borders/border-image-scaled-expected.png:
* LayoutTests/platform/chromium-mac/fast/borders/border-image-side-reduction-expected.png:
* LayoutTests/platform/chromium-mac/fast/borders/border-image-massive-scale-expected.png: Added.
* LayoutTests/platform/chromium-mac/fast/writing-mode/broken-ideographic-font-expected.png: Added.
* LayoutTests/platform/chromium-mac/fast/writing-mode/japanese-rl-text-with-broken-font-expected.png: Added.
* LayoutTests/platform/chromium-mac/fast/writing-mode/border-image-vertical-rl-expected.png: Added.
* LayoutTests/platform/chromium-mac/fast/writing-mode/border-image-vertical-lr-expected.png: Added.
* LayoutTests/platform/chromium-mac/fast/writing-mode/border-image-horizontal-bt-expected.png: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95187 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years ago[chromium] rebaseline expectations due to r95180
keishi@webkit.org [Thu, 15 Sep 2011 13:46:21 +0000 (13:46 +0000)]
[chromium] rebaseline expectations due to r95180

* http/tests/loading/307-after-303-after-post-expected.txt:
* http/tests/security/mixedContent/insecure-image-in-main-frame-expected.txt:
* http/tests/security/mixedContent/insecure-script-in-iframe-expected.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95186 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoUnreviewed; new baselines (Skia on Mac)
caryclark@google.com [Thu, 15 Sep 2011 12:30:18 +0000 (12:30 +0000)]
Unreviewed; new baselines (Skia on Mac)
Updated reference images.

* platform/chromium-mac/fast/borders/border-image-border-radius-expected.png:
* platform/chromium-mac/fast/borders/border-image-01-expected.png:
* platform/chromium-mac/fast/borders/border-image-slices-expected.png:
* platform/chromium-mac/fast/borders/border-image-scrambled-expected.png: Added.
* platform/chromium-mac/fast/borders/border-image-scale-transform-expected.png:
* platform/chromium-mac/fast/borders/border-image-rotate-transform-expected.png:
* platform/chromium-mac/fast/borders/border-image-repeat-expected.png:
* platform/chromium-mac/fast/borders/border-image-scaled-expected.png:
* platform/chromium-mac/fast/borders/border-image-source-expected.png:
* platform/chromium-mac/fast/borders/border-image-longhand-expected.png:
* platform/chromium-mac/fast/writing-mode/japanese-rl-text-with-broken-font-expected.png: Removed.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95185 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years ago[Chromium] Make sure that the ARM NEON files build with -marm
commit-queue@webkit.org [Thu, 15 Sep 2011 12:25:37 +0000 (12:25 +0000)]
[Chromium] Make sure that the ARM NEON files build with -marm
https://bugs.webkit.org/show_bug.cgi?id=68088

Simply adding the -marm cflag for OS=Android compiles results in it
being overridden by an -mthumb cflag later in the project generating
process. Therefore we should explicitly exclude -mthumb.

Patch by Peter Beverloo <peter@chromium.org> on 2011-09-15
Reviewed by Tony Gentilcore.

* WebCore.gyp/WebCore.gyp:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95184 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years ago[Qt][ARMv5] Two timeline tests of inspector fail
loki@webkit.org [Thu, 15 Sep 2011 12:11:22 +0000 (12:11 +0000)]
[Qt][ARMv5] Two timeline tests of inspector fail
https://bugs.webkit.org/show_bug.cgi?id=68151

Unreviewed gardening, adding timeout tests to skip list.

* platform/qt-arm/Skipped:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95183 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years ago[chromium] Add slow to debug version of repeat-cached-vm-reentry.html and sandboxed...
keishi@webkit.org [Thu, 15 Sep 2011 10:51:42 +0000 (10:51 +0000)]
[chromium] Add slow to debug version of repeat-cached-vm-reentry.html and sandboxed-iframe-navigation-parent.html.

* platform/chromium/test_expectations.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95182 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years ago[chromium] rebaseline expectations due to r95096, r95121, and r95129
keishi@webkit.org [Thu, 15 Sep 2011 10:46:00 +0000 (10:46 +0000)]
[chromium] rebaseline expectations due to r95096, r95121, and r95129

* platform/chromium-cg-mac-leopard/svg/as-border-image/svg-as-border-image-expected.txt: Removed.
* platform/chromium-cg-mac-leopard/svg/zoom/page/zoom-svg-through-object-with-auto-size-expected.png: Removed.
* platform/chromium-cg-mac-leopard/svg/zoom/page/zoom-svg-through-object-with-auto-size-expected.txt: Removed.
* platform/chromium-cg-mac/svg/as-border-image/svg-as-border-image-expected.png:
* platform/chromium-cg-mac/svg/as-border-image/svg-as-border-image-expected.txt: Removed.
* platform/chromium-cg-mac/svg/zoom/page/zoom-svg-through-object-with-auto-size-expected.png:
* platform/chromium-cg-mac/svg/zoom/page/zoom-svg-through-object-with-auto-size-expected.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95181 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years ago[chromium] extract normalization of LayoutTests URLs to a method of TestShell
jochen@chromium.org [Thu, 15 Sep 2011 09:10:00 +0000 (09:10 +0000)]
[chromium] extract normalization of LayoutTests URLs to a method of TestShell
https://bugs.webkit.org/show_bug.cgi?id=68145

This will allow for other classes in DumpRenderTree to reuse this functionality

Reviewed by David Levin.

* DumpRenderTree/chromium/TestShell.cpp:
(normalizeLayoutTestURLInternal):
(dumpHistoryItem):
(TestShell::normalizeLayoutTestURL):
* DumpRenderTree/chromium/TestShell.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95180 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years ago[Qt] Unreviewed gardening. Adding new test expectations.
zherczeg@webkit.org [Thu, 15 Sep 2011 08:37:49 +0000 (08:37 +0000)]
[Qt] Unreviewed gardening. Adding new test expectations.

* platform/qt/fast/borders/border-image-massive-scale-expected.txt: Added.
* platform/qt/fast/borders/border-image-scaled-gradient-expected.txt: Added.
* platform/qt/fast/borders/border-image-scrambled-expected.txt: Added.
* platform/qt/fast/parser/innerhtml-with-prefixed-elements-expected.txt: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95179 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoRenaming PeerConnection to webkitPeerConnection affects all ports,
zherczeg@webkit.org [Thu, 15 Sep 2011 08:09:56 +0000 (08:09 +0000)]
Renaming PeerConnection to webkitPeerConnection affects all ports,
not just chromium. Updating layout test after r95151.

Unreviewed gardening.

* fast/dom/call-a-constructor-as-a-function-expected.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95178 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years ago[chromium] Build fix: Remove use of GraphicsContext::setIsAcceleratedContext
keishi@webkit.org [Thu, 15 Sep 2011 07:56:20 +0000 (07:56 +0000)]
[chromium] Build fix: Remove use of GraphicsContext::setIsAcceleratedContext

r95174 introduced GraphicsContext::setIsAcceleratedContext into Skia code and caused chromium builds to fail.

* platform/graphics/skia/ImageBufferSkia.cpp:
(WebCore::ImageBuffer::ImageBuffer):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95177 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoThreadableWebSocketChannelClientWrapper shouldn't have a String in it.
yutak@chromium.org [Thu, 15 Sep 2011 07:41:02 +0000 (07:41 +0000)]
ThreadableWebSocketChannelClientWrapper shouldn't have a String in it.
https://bugs.webkit.org/show_bug.cgi?id=67908

Reviewed by David Levin.

Replace a String member variable in ThreadableWebSocketChannelClientWrapper with Vector<UChar>.

ThreadableWebSocketChannelClientWrapper is derived from ThreadSafeRefCounted. It may be
destroyed on different threads, which will affect String's refcounting. Therefore, classes
derived from ThreadSafeRefCounted must not have a String member variable.

No change in functionality, thus no new tests. WebSocket worker tests
(tests under http/tests/websocket/tests/{hixie76,hybi}/workers/) should keep passing.

* websockets/ThreadableWebSocketChannelClientWrapper.cpp:
(WebCore::ThreadableWebSocketChannelClientWrapper::ThreadableWebSocketChannelClientWrapper):
(WebCore::ThreadableWebSocketChannelClientWrapper::subprotocol):
Create a String from Vector<UChar>. Note that String constructor taking an empty vector returns
a null string, not an empty string. We want an empty string in that case, so I had to add
special-case handling for an empty vector.
(WebCore::ThreadableWebSocketChannelClientWrapper::setSubprotocol):
Copy the content of the given String into Vector.
* websockets/ThreadableWebSocketChannelClientWrapper.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95176 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years ago[chromium] rebaseline expectations due to r95121
keishi@webkit.org [Thu, 15 Sep 2011 07:11:43 +0000 (07:11 +0000)]
[chromium] rebaseline expectations due to r95121

* platform/chromium-cg-mac-leopard/svg/as-border-image/svg-as-border-image-expected.txt: Added.
* platform/chromium-cg-mac/svg/as-border-image/svg-as-border-image-expected.png:
* platform/chromium-cg-mac/svg/as-border-image/svg-as-border-image-expected.txt: Added.
* platform/chromium-win-xp/svg/as-border-image/svg-as-border-image-expected.txt: Removed.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95175 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoUse isAcceleratedContext() on the GraphicsContext instead of flags in ImageBuffer
mdelaney@apple.com [Thu, 15 Sep 2011 06:55:46 +0000 (06:55 +0000)]
Use isAcceleratedContext() on the GraphicsContext instead of flags in ImageBuffer
https://bugs.webkit.org/show_bug.cgi?id=68137

Reviewed by Simon Fraser.

No new tests. No change in behavior.

* html/canvas/CanvasRenderingContext2D.cpp:
(WebCore::CanvasRenderingContext2D::isAccelerated): Have all just query the context directly.
(WebCore::CanvasRenderingContext2D::fillAndDisplayTransparencyElsewhere): just use isAccelerated directly
* platform/graphics/ImageBuffer.h:
* platform/graphics/cg/ImageBufferCG.cpp:
(WebCore::ImageBuffer::ImageBuffer): Set isAcceleratedContext on the GraphicsContext instead of carrying the
    bit around on the ImageBuffer itself.
(WebCore::ImageBuffer::copyNativeImage): Update the check. Same for all below...
(WebCore::ImageBuffer::drawPattern):
(WebCore::ImageBuffer::getUnmultipliedImageData):
(WebCore::ImageBuffer::getPremultipliedImageData):
(WebCore::ImageBuffer::putUnmultipliedImageData):
(WebCore::ImageBuffer::putPremultipliedImageData):
* platform/graphics/skia/ImageBufferSkia.cpp: Set isAcceleratedContext on the GraphicsContext instead of carrying the
    bit around on the ImageBuffer itself.
(WebCore::ImageBuffer::ImageBuffer): Remove m_acceleratesRendering flag and getter.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95174 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years ago[chromium] rebaseline expectations due to r95096, r95121, and r95129
keishi@webkit.org [Thu, 15 Sep 2011 06:09:05 +0000 (06:09 +0000)]
[chromium] rebaseline expectations due to r95096, r95121, and r95129

* platform/chromium-cg-mac-leopard/fast/borders/block-mask-overlay-image-expected.png: Added.
* platform/chromium-cg-mac-leopard/fast/borders/border-color-inherit-expected.png: Added.
* platform/chromium-cg-mac-leopard/fast/borders/inline-mask-overlay-image-expected.png: Added.
* platform/chromium-cg-mac-leopard/fast/css/getComputedStyle/computed-style-expected.txt: Removed.
* platform/chromium-cg-mac-leopard/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt: Removed.
* platform/chromium-cg-mac-leopard/svg/css/getComputedStyle-basic-expected.txt: Removed.
* platform/chromium-cg-mac-leopard/svg/zoom/page/zoom-svg-through-object-with-auto-size-expected.png: Added.
* platform/chromium-cg-mac-leopard/svg/zoom/page/zoom-svg-through-object-with-auto-size-expected.txt: Added.
* platform/chromium-cg-mac/svg/zoom/page/zoom-svg-through-object-with-auto-size-expected.png: Added.
* platform/chromium-cg-mac/svg/zoom/page/zoom-svg-through-object-with-auto-size-expected.txt: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95173 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoDFG does not speculate aggressively enough on comparisons
fpizlo@apple.com [Thu, 15 Sep 2011 05:49:19 +0000 (05:49 +0000)]
DFG does not speculate aggressively enough on comparisons
https://bugs.webkit.org/show_bug.cgi?id=68138

Reviewed by Oliver Hunt.

This is a 75% speed-up on Kraken/ai-astar.  It's a 1% win on
V8 and an 8.5% win on Kraken.  Neutral on SunSpider.

* dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::compilePeepHoleDoubleBranch):
(JSC::DFG::SpeculativeJIT::compilePeepHoleObjectEquality):
(JSC::DFG::SpeculativeJIT::compileObjectEquality):
(JSC::DFG::SpeculativeJIT::compare):
* dfg/DFGSpeculativeJIT.h:
(JSC::DFG::SpeculativeJIT::shouldSpeculateFinalObject):
(JSC::DFG::SpeculativeJIT::shouldSpeculateArray):
(JSC::DFG::SpeculativeJIT::shouldSpeculateObject):
(JSC::DFG::SpeculativeJIT::shouldSpeculateCell):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95172 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoRemove some dependencies of DRT for Android.
commit-queue@webkit.org [Thu, 15 Sep 2011 05:48:47 +0000 (05:48 +0000)]
Remove some dependencies of DRT for Android.
https://bugs.webkit.org/show_bug.cgi?id=68126

Patch by Hao Zheng <zhenghao@chromium.org> on 2011-09-14
Reviewed by Tony Chang.

We don't need mesa and TestNetscapePlugIn on Android, so remove them.
As copy_TNPI depends on TNPI, adding copy_TNPI is enough.

* WebKit.gyp:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95171 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoDFG JIT does not leverage integer speculations on branches
fpizlo@apple.com [Thu, 15 Sep 2011 05:44:07 +0000 (05:44 +0000)]
DFG JIT does not leverage integer speculations on branches
https://bugs.webkit.org/show_bug.cgi?id=68140

Reviewed by Oliver Hunt.

* dfg/DFGJITCodeGenerator.cpp:
(JSC::DFG::JITCodeGenerator::isStrictInt32):
* dfg/DFGJITCodeGenerator.h:
* dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::compile):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95170 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agolibxml2 fragment parser loses prefix namespaces
commit-queue@webkit.org [Thu, 15 Sep 2011 05:26:45 +0000 (05:26 +0000)]
libxml2 fragment parser loses prefix namespaces
https://bugs.webkit.org/show_bug.cgi?id=66423

Source/WebCore:

This makes the loop over the elements outside of the context actually update the element it's processing.

Patch by Jeffrey Pfau <jeffrey@endrift.com> on 2011-09-14
Reviewed by Eric Seidel.

Test: fast/parser/innerhtml-with-prefixed-elements.xhtml

* xml/parser/XMLDocumentParserLibxml2.cpp:
(WebCore::XMLDocumentParser::XMLDocumentParser):

LayoutTests:

Added a test to ensure that elements inserted when the prefix is already declared are inserted properly.

Patch by Jeffrey Pfau <jeffrey@endrift.com> on 2011-09-14
Reviewed by Eric Seidel.

* fast/parser/innerhtml-with-prefixed-elements.xhtml: Added.
* platform/mac/fast/parser/innerhtml-with-prefixed-elements-expected.png: Added.
* platform/mac/fast/parser/innerhtml-with-prefixed-elements-expected.txt: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95169 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years ago[n]stricteq code is bogus in JSValue32_64 JIT
barraclough@apple.com [Thu, 15 Sep 2011 05:17:20 +0000 (05:17 +0000)]
[n]stricteq code is bogus in JSValue32_64 JIT
https://bugs.webkit.org/show_bug.cgi?id=68141

Reviewed by Sam Weinig.

The code tries to check for both ints or cells, but this check also
catches cases where values that are undefined, null, etc (probably
was incorrectly assuming cell was the 2nd highest tag?).

Also, there is no need not to handle int on the fast path.
stricteq is just a case of comparing the payloads, if we:
    * handle cases of differing tags on a slow path
    * handle doubles a slow path
    * handle both-are-string on a slow path

* jit/JITOpcodes32_64.cpp:
(JSC::JIT::compileOpStrictEq):
(JSC::JIT::emitSlow_op_stricteq):
(JSC::JIT::emitSlow_op_nstricteq):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95168 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years agoMake JSCell::toBoolean non-virtual
mhahnenberg@apple.com [Thu, 15 Sep 2011 05:15:16 +0000 (05:15 +0000)]
Make JSCell::toBoolean non-virtual
https://bugs.webkit.org/show_bug.cgi?id=67727

Reviewed by Sam Weinig.

JSCell::toBoolean now manually performs the toBoolean check for objects and strings (where
before it was simply virtual and would crash if its implementation was called).
Its descendants in JSObject and JSString have also been made non-virtual.  JSCell now
explicitly covers all cases of toBoolean, so having a virtual implementation of
JSCell::toBoolean is no longer necessary.  This is part of a larger process of un-virtualizing JSCell.

* JavaScriptCore.exp:
* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.def:
* runtime/JSCell.cpp:
* runtime/JSCell.h:
* runtime/JSNotAnObject.cpp:
* runtime/JSNotAnObject.h:
* runtime/JSObject.h:
* runtime/JSString.h:
(JSC::JSCell::toBoolean):
(JSC::JSValue::toBoolean):
* runtime/StringObjectThatMasqueradesAsUndefined.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95167 268f45cc-cd09-0410-ab3c-d52691b4dbfc

8 years ago[V8] Null-check the v8::Context in
japhet@chromium.org [Thu, 15 Sep 2011 05:12:51 +0000 (05:12 +0000)]
[V8] Null-check the v8::Context in
V8DOMWindowShell:namedItemAdded() before using it.
Also, add some logging to figure out how we're getting
into this bad state.
https://bugs.webkit.org/show_bug.cgi?id=68099

Reviewed by Adam Barth.

No new tests, no known repro.

* bindings/v8/V8DOMWindowShell.cpp:
(WebCore::V8DOMWindowShell::namedItemAdded):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@95166 268f45cc-cd09-0410-ab3c-d52691b4dbfc