WebKit-https.git
8 years agogetPropertyValue for -webkit-margin-collapse returns null, should compute the shortha...
commit-queue@webkit.org [Wed, 27 Feb 2013 06:14:15 +0000 (06:14 +0000)]
getPropertyValue for -webkit-margin-collapse returns null, should compute the shorthand value
https://bugs.webkit.org/show_bug.cgi?id=110903

Patch by Uday Kiran <udaykiran@motorola.com> on 2013-02-26
Reviewed by Alexander Pavlov.

Source/WebCore:

getPropertyValue("-webkit-margin-collapse") should compute shorthand value
when -webkit-margin-collapse is specified in CSS.

Test: fast/css/getPropertyValue-webkit-margin-collapse.html

* css/StylePropertySet.cpp:
(WebCore::StylePropertySet::getPropertyValue):

LayoutTests:

Added test for getPropertyValue("-webkit-margin-collapse").

* fast/css/getPropertyValue-webkit-margin-collapse-expected.txt: Added.
* fast/css/getPropertyValue-webkit-margin-collapse.html: Added.

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

8 years agogetPropertyValue for -webkit-marquee returns null, should compute the shorthand value
commit-queue@webkit.org [Wed, 27 Feb 2013 06:06:28 +0000 (06:06 +0000)]
getPropertyValue for -webkit-marquee returns null, should compute the shorthand value
https://bugs.webkit.org/show_bug.cgi?id=110816

Patch by Uday Kiran <udaykiran@motorola.com> on 2013-02-26
Reviewed by Alexander Pavlov.

Source/WebCore:

Compute the shorthand value for '-webkit-marquee' specified in CSS.

Test: fast/css/getPropertyValue-webkit-marquee.html

* css/StylePropertySet.cpp:
(WebCore::StylePropertySet::getPropertyValue):

LayoutTests:

Added testcases to check getPropertyValue for -webkit-marquee shorthand.

* fast/css/getPropertyValue-webkit-marquee-expected.txt: Added.
* fast/css/getPropertyValue-webkit-marquee.html: Added.

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

8 years agoUnreviewed.
abarth@webkit.org [Wed, 27 Feb 2013 05:51:56 +0000 (05:51 +0000)]
Unreviewed.

Update expectations to show new FrameLoaderClient callbacks. I missed
this test earlier because it doesn't run on Linux.

* platform/chromium-win/http/tests/loading/redirect-methods-expected.txt:

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

8 years ago[V8] Remove Event::dataTransferAttrGetterCustom() and Event::valueAttrSetterCustom()
haraken@chromium.org [Wed, 27 Feb 2013 05:11:04 +0000 (05:11 +0000)]
[V8] Remove Event::dataTransferAttrGetterCustom() and Event::valueAttrSetterCustom()
https://bugs.webkit.org/show_bug.cgi?id=110666

Reviewed by Adam Barth.

Event::dataTransferAttrGetterCustom() is not used
(i.e. the custom method is not registered to V8).
Event::valueAttrSetterCustom() is declared but not
implemented. We can remove them.

No tests. No change in behavior.

* bindings/scripts/CodeGeneratorV8.pm:
(GenerateHeaderCustomCall):
* bindings/v8/custom/V8EventCustom.cpp:

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

8 years agoUse perf.webkit.org JSON format in results page
rniwa@webkit.org [Wed, 27 Feb 2013 05:02:14 +0000 (05:02 +0000)]
Use perf.webkit.org JSON format in results page
https://bugs.webkit.org/show_bug.cgi?id=110842

Reviewed by Benjamin Poulain.

PerformanceTests:

Updated the results page template to use the new JSON format.

Since new JSON format doesn't contain statistics such as stdev and min, added statistics.js to compute
these values. Also use 95% percentile confidence interval instead of standard deviation in various places.

* resources/results-template.html: Added statistics.js as dependency.
(TestResult): Updated to take a metric instead of its test. Replaced stdev() with confidenceIntervalDelta()
now that we have a fancy Statistics class.

(TestRun.webkitRevision):
(PerfTestMetric): Renamed from PerfTest since this object now encapsulates each measurement (such as time,
JS heap, and malloc) in test. Also added a conversion table from a metric name to a unit since new format
doesn't contain units.
(PerfTestMetric.name): Updated to compute the full metric name from test name and metric name, matching
the old behavior.
(PerfTestMetric.isMemoryTest): Explicitly look for 'JSHeap' and 'Malloc' tests.
(PerfTestMetric.smallerIsBetter):

(attachPlot): Deleted the code to deal with tests that don't provide individual iteration measurement
since such tests no longer exist. Also fixed up the code compute y-axis range.

(createTableRow.markupForRun): Updated to use confidenceIntervalDelta() instead of stdev().

(init.addTests): Added. Recursively add metrics.

* resources/statistics.js: Added. Imported from perf.webkit.org.
(Statistics.max):
(Statistics.min):
(Statistics.sum):
(Statistics.squareSum):
(Statistics.sampleStandardDeviation):
(Statistics.supportedConfidenceLevels):
(Statistics.confidenceIntervalDelta):
(Statistics.confidenceInterval):

Tools:

Change the default JSON format from that of webkit-perf.appspot.com to that of perf.webkit.org.

A whole bunch of integration tests have been updated to use the new JSON format.

* Scripts/webkitpy/performance_tests/perftestsrunner.py:
(PerfTestsRunner._generate_and_show_results): Renamed output and output_path to legacy_output
and legacy_output_json_path respectively.
(PerfTestsRunner._generate_results_dict): Don't assume meta build information is always available.
(PerfTestsRunner._generate_output_files): Make json_output, which is used to generate the default
JSON file and the results page out of perf_webkit_output instead of legacy_output.

* Scripts/webkitpy/performance_tests/perftestsrunner_integrationtest.py:
(MainTest.test_run_memory_test):
(MainTest._test_run_with_json_output.mock_upload_json):
(MainTest):
(MainTest.test_run_with_json_output):
(MainTest.test_run_with_description):
(MainTest.test_run_generates_json_by_default):
(MainTest.test_run_merges_output_by_default):
(MainTest.test_run_respects_reset_results):
(MainTest.test_run_generates_and_show_results_page):
(MainTest.test_run_with_slave_config_json):
(MainTest.test_run_with_multiple_repositories):
(MainTest.test_run_with_upload_json):
(MainTest.test_run_with_upload_json_should_generate_perf_webkit_json):

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

8 years agoSelectorQuery should not ever use ResolvingStyle mode.
dglazkov@chromium.org [Wed, 27 Feb 2013 04:34:27 +0000 (04:34 +0000)]
SelectorQuery should not ever use ResolvingStyle mode.
https://bugs.webkit.org/show_bug.cgi?id=110843

It looks like we accidentally used ResolvingStyle mode for webkitMatchesSelector, and I exacerbated the problem
in r143858 by switching all of SelectorQuery to use it. There aren't any visible effects, but the style bits
of elements are unnecessarily twiddled when if we do that. Let's not do it.

Reviewed by Eric Seidel.

No public-facing behavior change, covered by existing tests.

* dom/SelectorQuery.cpp:
(WebCore::SelectorDataList::selectorMatches): Switched to always use QueryingRules mode.

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

8 years agoSilence this ASSERT. It is triggered by the threaded HTML parser.
abarth@webkit.org [Wed, 27 Feb 2013 04:32:49 +0000 (04:32 +0000)]
Silence this ASSERT. It is triggered by the threaded HTML parser.
Investigation to follow in https://bugs.webkit.org/show_bug.cgi?id=110937

* loader/DocumentLoader.cpp:
(WebCore::DocumentLoader::checkLoadComplete):

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

8 years agoUnreviewed. Rolled Chromium DEPS to r184829. Requested by
commit-queue@webkit.org [Wed, 27 Feb 2013 04:26:28 +0000 (04:26 +0000)]
Unreviewed.  Rolled Chromium DEPS to r184829.  Requested by
"Mark Pilgrim" <pilgrim@chromium.org> via sheriffbot.

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2013-02-26

* DEPS:

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

8 years agoDFG OSR exit doesn't know which virtual register to use for the last result register...
fpizlo@apple.com [Wed, 27 Feb 2013 03:52:58 +0000 (03:52 +0000)]
DFG OSR exit doesn't know which virtual register to use for the last result register for post_inc and post_dec
https://bugs.webkit.org/show_bug.cgi?id=109036
<rdar://problem/13292139>

Source/JavaScriptCore:

Reviewed by Gavin Barraclough.

This was a two-fold problem:

1) post_inc/dec has two results - the new value of the variable, and the old value of the variable. DFG OSR exit
   assumed that the "last result" used for the Baseline JIT's register allocation would be the new value. It was
   wrong in this assumption.

2) The Baseline JIT knew to disable its last result optimization in cases where it might confuse the DFG. But it
   was doing this only for code blocks that could be totally optimized, but not code blocks that could only be
   optimized when inlined.

This patch introduces a more rigorous notion of when the Baseline JIT emits profiling, when it does extra work
to account for the possibility of OSR exit, and when it does extra work to account for the possibility of OSR
entry. These notions are called shouldEmitProfiling(), canBeOptimizedOrInlined(), and canBeOptimized(),
respectively.

This is performance-neutral and fixes the reported bug. It probably fixes other bugs as well, since previously
we for example weren't doing the more conservative implementation of op_mov in the Baseline JIT for code blocks
that could be inlined but not optimized. So, if such a code block OSR exited at just the right point, you'd get
symptoms similar to this bug.

* dfg/DFGCapabilities.h:
(JSC::DFG::canCompileOpcode):
* dfg/DFGCommon.h:
* jit/JIT.cpp:
(JSC::JIT::privateCompile):
* jit/JIT.h:
(JSC::JIT::compilePatchGetArrayLength):
(JSC::JIT::canBeOptimizedOrInlined):
(JIT):
* jit/JITArithmetic.cpp:
(JSC::JIT::emit_op_post_inc):
(JSC::JIT::emit_op_post_dec):
* jit/JITArithmetic32_64.cpp:
(JSC::JIT::emit_op_post_inc):
(JSC::JIT::emit_op_post_dec):
* jit/JITCall.cpp:
(JSC::JIT::emit_op_call_put_result):
(JSC::JIT::compileOpCall):
* jit/JITCall32_64.cpp:
(JSC::JIT::compileOpCall):
* jit/JITInlines.h:
(JSC::JIT::emitArrayProfilingSite):
(JSC::JIT::map):
* jit/JITOpcodes.cpp:
(JSC::JIT::emit_op_mov):
* jit/JITPropertyAccess.cpp:
(JSC::JIT::compileGetByIdHotPath):
(JSC::JIT::privateCompilePutByIdTransition):
* jit/JITPropertyAccess32_64.cpp:
(JSC::JIT::compileGetByIdHotPath):
(JSC::JIT::privateCompilePutByIdTransition):

LayoutTests:

Reviewed by Gavin Barraclough.

* fast/js/dfg-post-inc-then-exit-expected.txt: Added.
* fast/js/dfg-post-inc-then-exit.html: Added.
* fast/js/jsc-test-list:
* fast/js/script-tests/dfg-post-inc-then-exit.js: Added.
(foo):

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

8 years ago[Chromium] Enable threaded HTML parser by default in DumpRenderTree
abarth@webkit.org [Wed, 27 Feb 2013 03:00:08 +0000 (03:00 +0000)]
[Chromium] Enable threaded HTML parser by default in DumpRenderTree
https://bugs.webkit.org/show_bug.cgi?id=110907

Reviewed by Eric Seidel.

Tools:

This patch changes --enable-threaded-html-parser into
--disable-threaded-html-parser and thereby enables the threaded HTML
parser by default for the Chromium port.

* DumpRenderTree/chromium/DumpRenderTree.cpp:
* DumpRenderTree/chromium/TestRunner/src/WebPreferences.cpp:
(WebTestRunner::WebPreferences::reset):
* DumpRenderTree/chromium/TestShell.cpp:
(TestShell::TestShell):

LayoutTests:

Update test results to show subtle differences in FrameLoaderClient callbacks.

* platform/chromium-mac/security/block-test-no-port-expected.txt: Removed.
* platform/chromium-win/fast/images/support-broken-image-delegate-expected.txt:
* platform/chromium-win/security/block-test-no-port-expected.txt: Removed.
* platform/chromium/fast/images/support-broken-image-delegate-expected.txt:
* platform/chromium/fast/loader/main-document-url-for-non-http-loads-expected.txt: Added.
* platform/chromium/http/tests/loading/307-after-303-after-post-expected.txt: Added.
* platform/chromium/http/tests/misc/favicon-loads-with-images-disabled-expected.txt: Added.
* platform/chromium/http/tests/misc/will-send-request-returns-null-on-redirect-expected.txt:
* platform/chromium/http/tests/misc/window-dot-stop-expected.txt: Added.
* platform/chromium/http/tests/security/XFrameOptions/x-frame-options-deny-expected.txt: Added.
* platform/chromium/http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-expected.txt: Added.
* platform/chromium/http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-in-body-expected.txt: Added.
* platform/chromium/http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-parent-same-origin-allow-expected.txt: Added.
* platform/chromium/http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-parent-same-origin-deny-expected.txt: Added.
* platform/chromium/http/tests/security/XFrameOptions/x-frame-options-invalid-expected.txt: Added.
* platform/chromium/http/tests/security/XFrameOptions/x-frame-options-parent-same-origin-allow-expected.txt: Added.
* platform/chromium/http/tests/security/XFrameOptions/x-frame-options-parent-same-origin-deny-expected.txt: Added.
* platform/chromium/inspector/debugger/pause-in-inline-script-expected.txt: Added.
* platform/chromium/inspector/timeline/timeline-script-tag-1-expected.txt: Added.
* platform/chromium/security/block-test-no-port-expected.txt:

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

8 years agoSQLTransactionBackend::doCleanup() should not nullify its current
mark.lam@apple.com [Wed, 27 Feb 2013 02:51:44 +0000 (02:51 +0000)]
SQLTransactionBackend::doCleanup() should not nullify its current
statement and transaction error fields.
https://bugs.webkit.org/show_bug.cgi?id=110826.

Reviewed by Geoffrey Garen.

The reason for this is because the frontend SQLTransaction may have
tasks that are already registered via callOnMainThread(), and may
invoke transaction state functions that access these objects in the
SQLTransactionBackend. This proves to be problematic if the database
was interrupted resulting in doCleanup() being called concurrently
while those states are executing.

Instead, we leave their clean up to the SQLTransactionBackend destructor
which is guaranteed to only be called when the SQLTransaction is also
destructing i.e. these objects are no longer needed.

No new tests.

* Modules/webdatabase/SQLTransactionBackend.cpp:
(WebCore::SQLTransactionBackend::doCleanup):

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

8 years agoCrashes in fast/notifications/notifications-request-permission.html after r144126
schenney@chromium.org [Wed, 27 Feb 2013 02:40:29 +0000 (02:40 +0000)]
Crashes in fast/notifications/notifications-request-permission.html after r144126
https://bugs.webkit.org/show_bug.cgi?id=108196

Unreviewed expectations update.

* platform/chromium/TestExpectations:

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

8 years agoDeleting extraneous baseline after feDisplacementMap fix
schenney@chromium.org [Wed, 27 Feb 2013 02:34:57 +0000 (02:34 +0000)]
Deleting extraneous baseline after feDisplacementMap fix
https://bugs.webkit.org/show_bug.cgi?id=10592

Unreviewed expectations update. Slow build bot to blame.

* platform/chromium-win-xp/svg/filters/feDisplacementMap-expected.png: Removed.

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

8 years agoUnreviewed. AppleWin VS2010 build fix.
roger_fong@apple.com [Wed, 27 Feb 2013 02:04:03 +0000 (02:04 +0000)]
Unreviewed. AppleWin VS2010 build fix.

* JavaScriptCore.vcxproj/JavaScriptCoreExportGenerator/JavaScriptCoreExports.def.in:

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

8 years agoThe DFG backend's and OSR's decision to unbox a variable should be based on whether...
fpizlo@apple.com [Wed, 27 Feb 2013 01:45:28 +0000 (01:45 +0000)]
The DFG backend's and OSR's decision to unbox a variable should be based on whether it's used in a typed context
https://bugs.webkit.org/show_bug.cgi?id=110433

Reviewed by Oliver Hunt and Mark Hahnenberg.

This introduces the equivalent of a liveness analysis, except for type checking.
A variable is said to be "profitable for unboxing" (i.e. live at a type check)
if there exists a type check on a GetLocal of that variable, and the type check
is consistent with the variable's prediction. Variables that are not profitable
for unboxing aren't unboxed. Previously they would have been.

This is a slight speed-up on some things but mostly neutral.

* dfg/DFGArgumentPosition.h:
(JSC::DFG::ArgumentPosition::ArgumentPosition):
(JSC::DFG::ArgumentPosition::mergeShouldNeverUnbox):
(JSC::DFG::ArgumentPosition::mergeArgumentPredictionAwareness):
(JSC::DFG::ArgumentPosition::mergeArgumentUnboxingAwareness):
(ArgumentPosition):
(JSC::DFG::ArgumentPosition::isProfitableToUnbox):
(JSC::DFG::ArgumentPosition::shouldUseDoubleFormat):
* dfg/DFGCommon.h:
(JSC::DFG::checkAndSet):
(DFG):
* dfg/DFGFixupPhase.cpp:
(JSC::DFG::FixupPhase::run):
(JSC::DFG::FixupPhase::fixupNode):
(JSC::DFG::FixupPhase::fixupSetLocalsInBlock):
(FixupPhase):
(JSC::DFG::FixupPhase::alwaysUnboxSimplePrimitives):
(JSC::DFG::FixupPhase::setUseKindAndUnboxIfProfitable):
* dfg/DFGPredictionPropagationPhase.cpp:
(JSC::DFG::PredictionPropagationPhase::doRoundOfDoubleVoting):
* dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::checkArgumentTypes):
* dfg/DFGVariableAccessData.h:
(JSC::DFG::VariableAccessData::VariableAccessData):
(JSC::DFG::VariableAccessData::mergeIsCaptured):
(JSC::DFG::VariableAccessData::mergeIsProfitableToUnbox):
(VariableAccessData):
(JSC::DFG::VariableAccessData::isProfitableToUnbox):
(JSC::DFG::VariableAccessData::shouldUnboxIfPossible):
(JSC::DFG::VariableAccessData::mergeStructureCheckHoistingFailed):
(JSC::DFG::VariableAccessData::mergeIsArgumentsAlias):
(JSC::DFG::VariableAccessData::shouldUseDoubleFormat):
(JSC::DFG::VariableAccessData::mergeFlags):

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

8 years agoImplement StorageAreaProxy::getItem and StorageAreaProxy::setItem
andersca@apple.com [Wed, 27 Feb 2013 01:20:27 +0000 (01:20 +0000)]
Implement StorageAreaProxy::getItem and StorageAreaProxy::setItem
https://bugs.webkit.org/show_bug.cgi?id=110927

Reviewed by Sam Weinig.

Source/WebCore:

Export StorageMap::getItem and StorageMap::setItem.

* WebCore.exp.in:

Source/WebKit2:

* UIProcess/Storage/StorageManager.cpp:
(WebKit::StorageManager::setItem):
* UIProcess/Storage/StorageManager.h:
Add empty stub.

* UIProcess/Storage/StorageManager.messages.in:
Add SetItem message.

* WebProcess/Storage/StorageAreaProxy.cpp:
(WebKit::StorageAreaProxy::getItem):
Fill the storage map and get the item from it.

(WebKit::StorageAreaProxy::setItem):
Update the storage map and send a SetItem message to the UI process.

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

8 years ago[chromium] Remove WebLayerTreeViewClient::(will|did)BeginFrame
jamesr@google.com [Wed, 27 Feb 2013 01:09:52 +0000 (01:09 +0000)]
[chromium] Remove WebLayerTreeViewClient::(will|did)BeginFrame
https://bugs.webkit.org/show_bug.cgi?id=110928

Reviewed by Adrienne Walker.

Source/Platform:

* chromium/public/WebLayerTreeViewClient.h:

Source/WebKit/chromium:

* src/WebViewImpl.cpp:
* src/WebViewImpl.h:
* tests/WebLayerTreeViewTestCommon.h:

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

8 years agoParsing of HTML tags in MathML Text Insertion Points leads to bogus parser behavior
adamk@chromium.org [Wed, 27 Feb 2013 01:05:07 +0000 (01:05 +0000)]
Parsing of HTML tags in MathML Text Insertion Points leads to bogus parser behavior
https://bugs.webkit.org/show_bug.cgi?id=110808

Reviewed by Adam Barth.

Source/WebCore:

When looking for various table tags in the HTMLElementStack, compare
QualifiedNames rather than just local names, where necessary.

Note that not all uses have been "fixed"; I've only changed for which
I could write a test with differing behavior. A followup patch to
rationalize the use of QualifiedName vs local names would be ideal.

Tests: html5lib/generated/run-math-data.html
       html5lib/generated/run-math-write.html

* html/parser/HTMLElementStack.cpp:
(WebCore::inScopeCommon): Added a version of inScopeCommon that
handles QualifiedNames instead of just localNames.
(WebCore::HTMLElementStack::inTableScope): When given a QualifiedName,
call the new version of inScopeCommon().
* html/parser/HTMLTreeBuilder.cpp:
(WebCore::HTMLTreeBuilder::processStartTag):
(WebCore::HTMLTreeBuilder::processEndTagForInTableBody):
(WebCore::HTMLTreeBuilder::processTrEndTagForInRow):

LayoutTests:

* html5lib/generated/run-math-data-expected.txt: Added.
* html5lib/generated/run-math-data.html: Added.
* html5lib/generated/run-math-write-expected.txt: Added.
* html5lib/generated/run-math-write.html: Added.
* html5lib/resources/math.dat: Added.

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

8 years agoFix windows build.
oliver@apple.com [Wed, 27 Feb 2013 01:01:19 +0000 (01:01 +0000)]
Fix windows build.

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

8 years agoNotification.requestPermission callback should be optional
kaustubh@motorola.com [Wed, 27 Feb 2013 00:52:25 +0000 (00:52 +0000)]
Notification.requestPermission callback should be optional
https://bugs.webkit.org/show_bug.cgi?id=108196

Reviewed by Adam Barth.

Source/WebCore:

Spec says it should be optional.
http://notifications.spec.whatwg.org/#notification

Test: fast/notifications/notifications-request-permission-optional.html

* GNUmakefile.list.am:
* Modules/notifications/Notification.h:
(Notification):
* Modules/notifications/Notification.idl:
* Target.pri:
* UseJSC.cmake:
* UseV8.cmake:
* WebCore.gypi:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.vcxproj/WebCore.vcxproj:
* WebCore.vcxproj/WebCore.vcxproj.filters:
* WebCore.xcodeproj/project.pbxproj:
* bindings/js/JSNotificationCustom.cpp: Removed.
* bindings/scripts/CodeGeneratorJS.pm:
(GenerateParametersCheck):
* bindings/v8/custom/V8NotificationCustom.cpp: Removed.

LayoutTests:

Specs says it should be optional.
http://notifications.spec.whatwg.org/#notification

* fast/notifications/notifications-request-permission-optional-expected.txt: Added.
* fast/notifications/notifications-request-permission-optional.html: Added.

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

8 years agoIndexedDB: Add temporary diagnostic code to IDBRequest.result getter
jsbell@chromium.org [Wed, 27 Feb 2013 00:45:56 +0000 (00:45 +0000)]
IndexedDB: Add temporary diagnostic code to IDBRequest.result getter
https://bugs.webkit.org/show_bug.cgi?id=110916

Reviewed by Kentaro Hara.

Implement a custom getter for IDBRequest.result that does one additional hidden
property set, to try and isolate the flaky crash seen in wkbug.com/105363 which is
difficult to repro locally. If the crash moves to the new line it will point
the investigation in a new direction. Also add an assertion that probes string
wrappers (the expected type).

* Modules/indexeddb/IDBRequest.idl: Mark attribute as [Custom]
* WebCore.gypi: New file.
* bindings/v8/custom/V8IDBRequestCustom.cpp: Added.
(WebCore::V8IDBRequest::resultAttrGetterCustom): Implementation - copy/paste from
generated code, plus extra setNamedHiddenReference call and string ASSERT.

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

8 years ago[chromium] GIFImageDecoderTest.parseAndDecodeByteByByte failing on Android
hclam@chromium.org [Wed, 27 Feb 2013 00:44:58 +0000 (00:44 +0000)]
[chromium] GIFImageDecoderTest.parseAndDecodeByteByByte failing on Android
https://bugs.webkit.org/show_bug.cgi?id=110922

Unreviewed. Build fix.

* tests/GIFImageDecoderTest.cpp:
(WebKit):

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

8 years ago[Chromium] TestExpectations addition
schenney@chromium.org [Wed, 27 Feb 2013 00:42:35 +0000 (00:42 +0000)]
[Chromium] TestExpectations addition

Unreviewed addition of fast/js/regress/inlined-put-by-id-transition.html which crashes occasionally.

* platform/chromium/TestExpectations:

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

8 years agoWeb Inspector: REGRESSION: [JSC] SourceProvider reuses IDs
oliver@apple.com [Wed, 27 Feb 2013 00:38:14 +0000 (00:38 +0000)]
Web Inspector: REGRESSION: [JSC] SourceProvider reuses IDs
https://bugs.webkit.org/show_bug.cgi?id=99674

Reviewed by Gavin Barraclough.

Simple incrementing counter for SourceProvider IDs.  Uses a
lock to incrementing the counter so we don't increment reuse
counter values or reassign the ID for a given SourceProvider.

* parser/SourceProvider.cpp:
(JSC::SourceProvider::SourceProvider):
(JSC):
(JSC::SourceProvider::getID):
* parser/SourceProvider.h:
(JSC::SourceProvider::asID):
(SourceProvider):

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

8 years agoNew baselines after feDisplacementMap fix
schenney@chromium.org [Wed, 27 Feb 2013 00:34:33 +0000 (00:34 +0000)]
New baselines after feDisplacementMap fix
https://bugs.webkit.org/show_bug.cgi?id=10592

Unreviewed expectations update.

* platform/chromium-linux-x86/svg/filters/feDisplacementMap-expected.png: Removed.
* platform/chromium-linux/svg/filters/feDisplacementMap-expected.png: Removed.
* platform/chromium-mac-lion/svg/W3C-SVG-1.1/filters-displace-01-f-expected.png:
* platform/chromium-mac-lion/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-in-attr-expected.png:
* platform/chromium-mac-lion/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-in2-attr-expected.png:
* platform/chromium-mac-lion/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-scale-attr-expected.png:
* platform/chromium-mac-lion/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-xChannelSelector-attr-expected.png:
* platform/chromium-mac-lion/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-yChannelSelector-attr-expected.png:
* platform/chromium-mac-lion/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-in-prop-expected.png:
* platform/chromium-mac-lion/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-in2-prop-expected.png:
* platform/chromium-mac-lion/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-scale-prop-expected.png:
* platform/chromium-mac-lion/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-xChannelSelector-prop-expected.png:
* platform/chromium-mac-lion/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-yChannelSelector-prop-expected.png:
* platform/chromium-mac-snowleopard/svg/W3C-SVG-1.1/filters-displace-01-f-expected.png:
* platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-in-attr-expected.png:
* platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-in2-attr-expected.png:
* platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-scale-attr-expected.png:
* platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-xChannelSelector-attr-expected.png:
* platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-yChannelSelector-attr-expected.png:
* platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-in-prop-expected.png:
* platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-in2-prop-expected.png:
* platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-scale-prop-expected.png:
* platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-xChannelSelector-prop-expected.png:
* platform/chromium-mac-snowleopard/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-yChannelSelector-prop-expected.png:
* platform/chromium-mac-snowleopard/svg/filters/feDisplacementMap-expected.png: Removed.
* platform/chromium-mac/svg/W3C-SVG-1.1/filters-displace-01-f-expected.png:
* platform/chromium-mac/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-in-attr-expected.png:
* platform/chromium-mac/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-in2-attr-expected.png:
* platform/chromium-mac/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-scale-attr-expected.png:
* platform/chromium-mac/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-xChannelSelector-attr-expected.png:
* platform/chromium-mac/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-yChannelSelector-attr-expected.png:
* platform/chromium-mac/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-in-prop-expected.png:
* platform/chromium-mac/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-in2-prop-expected.png:
* platform/chromium-mac/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-scale-prop-expected.png:
* platform/chromium-mac/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-xChannelSelector-prop-expected.png:
* platform/chromium-mac/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-yChannelSelector-prop-expected.png:
* platform/chromium-mac/svg/filters/feDisplacementMap-expected.png:
* platform/chromium-mac/svg/filters/filterRes-expected.png:
* platform/chromium-win/svg/W3C-SVG-1.1/filters-displace-01-f-expected.png:
* platform/chromium-win/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-in-attr-expected.png:
* platform/chromium-win/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-in2-attr-expected.png:
* platform/chromium-win/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-scale-attr-expected.png:
* platform/chromium-win/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-xChannelSelector-attr-expected.png:
* platform/chromium-win/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-yChannelSelector-attr-expected.png:
* platform/chromium-win/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-in-prop-expected.png:
* platform/chromium-win/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-in2-prop-expected.png:
* platform/chromium-win/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-scale-prop-expected.png:
* platform/chromium-win/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-xChannelSelector-prop-expected.png:
* platform/chromium-win/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-yChannelSelector-prop-expected.png:
* platform/chromium-win/svg/filters/feDisplacementMap-expected.png:
* platform/chromium-win/svg/filters/filterRes-expected.png:
* platform/chromium/TestExpectations:

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

8 years ago[chromium] Remove unused WebLayerTreeViewClient calls
jamesr@google.com [Wed, 27 Feb 2013 00:31:11 +0000 (00:31 +0000)]
[chromium] Remove unused WebLayerTreeViewClient calls
https://bugs.webkit.org/show_bug.cgi?id=110923

Reviewed by Adrienne Walker.

These notifications existed for instrumentation, but now the instrumentation routes
through WebDevToolsAgent.

Source/Platform:

* chromium/public/WebLayerTreeViewClient.h:

Source/WebKit/chromium:

* src/WebViewImpl.cpp:
* src/WebViewImpl.h:
* tests/WebLayerTreeViewTestCommon.h:

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

8 years agoAdd a couple of symbols needed by WebKit2.
andersca@apple.com [Wed, 27 Feb 2013 00:28:23 +0000 (00:28 +0000)]
Add a couple of symbols needed by WebKit2.

* WebCore.exp.in:

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

8 years ago[CSS Shaders] Implement color and luminosity non-separable blend modes
michelangelo@webkit.org [Wed, 27 Feb 2013 00:19:05 +0000 (00:19 +0000)]
[CSS Shaders] Implement color and luminosity non-separable blend modes
https://bugs.webkit.org/show_bug.cgi?id=106226

Source/WebCore:

Added the following GLSL helper functions to the CustomFilterValidatedProgram:

    - css_Lum(C): returns the luminosity for the color C
    - css_ClipColor(C): clips color C
    - css_SetLum(C, l): sets the luminosity l on the color C

The above functions are being used for the "color" and "luminosity" non-separable
blend modes, the relevant spec for such modes is at URL:
https://dvcs.w3.org/hg/FXTF/rawfile/tip/compositing/index.html#blendingnonseparable

Reviewed by Dean Jackson.

Tests: css3/filters/custom/custom-filter-nonseparable-blend-mode-color.html
       css3/filters/custom/custom-filter-nonseparable-blend-mode-luminosity.html

* platform/graphics/filters/CustomFilterValidatedProgram.cpp:
(WebCore::CustomFilterValidatedProgram::blendFunctionString):

LayoutTests:

Added relevant tests for the "color" and "luminosity" non-separable blend modes.
These tests are currently skipped on Mac due to a slight color difference; please
see relevant bug: http://webkit.org/b/107487.

Reviewed by Dean Jackson.

* css3/filters/custom/custom-filter-nonseparable-blend-mode-color-expected.html: Added.
* css3/filters/custom/custom-filter-nonseparable-blend-mode-color.html: Added.
* css3/filters/custom/custom-filter-nonseparable-blend-mode-luminosity-expected.html: Added.
* css3/filters/custom/custom-filter-nonseparable-blend-mode-luminosity.html: Added.

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

8 years agoStorageAreaProxy should hold on to a StorageMap and not a HashMap
andersca@apple.com [Wed, 27 Feb 2013 00:13:12 +0000 (00:13 +0000)]
StorageAreaProxy should hold on to a StorageMap and not a HashMap
https://bugs.webkit.org/show_bug.cgi?id=110919

Reviewed by Jessie Berlin.

Source/WebCore:

StorageMap should be a private header.

* WebCore.xcodeproj/project.pbxproj:

Source/WebKit2:

Create a storage map instead of a hash map.

* WebProcess/Storage/StorageAreaProxy.cpp:
(WebKit::StorageAreaProxy::length):
(WebKit::StorageAreaProxy::loadValuesIfNeeded):
* WebProcess/Storage/StorageAreaProxy.h:
(WebCore):
(StorageAreaProxy):

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

8 years ago[chromium] Re-enable the fixed version of freetype on linux
dpranke@chromium.org [Tue, 26 Feb 2013 23:43:08 +0000 (23:43 +0000)]
[chromium] Re-enable the fixed version of freetype on linux
https://bugs.webkit.org/show_bug.cgi?id=110542

Reviewed by Tony Chang.

Tools:

Re-land the change in r143794 to switch to building with a fixed
version of FreeType for just DumpRenderTree. This allows us to share
one version of pixel baselines for both Lucid and Precise, and run the
layout tests in a stock Precise install (instead of a Lucid chroot).
Going forward, this approach isolates us from os-level changes to the
version of FreeType. Note that Chromium itself still uses the system
FreeType and is unaffected by this change.

This setting can still be turned off (at compile/gyp-time) by
manually setting use_custom_freetype=0.

* DumpRenderTree/DumpRenderTree.gyp/DumpRenderTree.gyp:

LayoutTests:

Re-add entries for two tests that pass on Lucid but fail on Precise
even with the Freetype change. This isn't worth adding in
Lucid and Precise keywords for just these two tests.

* platform/chromium/TestExpectations:

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

8 years agoRoll Chromium DEPS from r183905 -> r184646.
dpranke@chromium.org [Tue, 26 Feb 2013 23:18:05 +0000 (23:18 +0000)]
Roll Chromium DEPS from r183905 -> r184646.

Unreviewed.

* DEPS:

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

8 years agoFix a copy/paste error in WebLoaderClient::didBlockInsecurePluginVersion
andersca@apple.com [Tue, 26 Feb 2013 23:06:17 +0000 (23:06 +0000)]
Fix a copy/paste error in WebLoaderClient::didBlockInsecurePluginVersion
https://bugs.webkit.org/show_bug.cgi?id=110914
<rdar://problem/13297581>

Reviewed by Beth Dakin.

Pass kWKErrorCodeInsecurePlugInVersion to the pluginDidFail callback.

* UIProcess/WebLoaderClient.cpp:
(WebKit::WebLoaderClient::didBlockInsecurePluginVersion):

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

8 years agoUnreviewed, rolling out r144074.
commit-queue@webkit.org [Tue, 26 Feb 2013 22:57:17 +0000 (22:57 +0000)]
Unreviewed, rolling out r144074.
http://trac.webkit.org/changeset/144074
https://bugs.webkit.org/show_bug.cgi?id=110897

Causing 20+ crashes on Mac (Requested by bradee-oh on
#webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2013-02-26

* CMakeLists.txt:
* GNUmakefile.list.am:
* JavaScriptCore.gypi:
* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
* JavaScriptCore.vcxproj/JavaScriptCore.vcxproj:
* JavaScriptCore.xcodeproj/project.pbxproj:
* Target.pri:
* runtime/JSGlobalData.cpp:
(JSC::JSGlobalData::JSGlobalData):
* runtime/JSGlobalData.h:
(JSGlobalData):
* runtime/PropertyMapHashTable.h:
(PropertyTable):
(JSC::PropertyTable::PropertyTable):
(JSC):
(JSC::PropertyTable::~PropertyTable):
(JSC::PropertyTable::copy):
* runtime/PropertyTable.cpp: Removed.
* runtime/Structure.cpp:
(JSC::Structure::materializePropertyMap):
(JSC::Structure::addPropertyTransition):
(JSC::Structure::changePrototypeTransition):
(JSC::Structure::despecifyFunctionTransition):
(JSC::Structure::attributeChangeTransition):
(JSC::Structure::toDictionaryTransition):
(JSC::Structure::preventExtensionsTransition):
(JSC::Structure::nonPropertyTransition):
(JSC::Structure::copyPropertyTable):
(JSC::Structure::copyPropertyTableForPinning):
(JSC::Structure::putSpecificValue):
(JSC::Structure::createPropertyMap):
(JSC::Structure::visitChildren):
* runtime/Structure.h:
(JSC):
(JSC::Structure::putWillGrowOutOfLineStorage):
(JSC::Structure::checkOffsetConsistency):
(Structure):
* runtime/StructureInlines.h:

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

8 years ago[chromium] Remove unused WebWidget::instrument calls
commit-queue@webkit.org [Tue, 26 Feb 2013 22:49:36 +0000 (22:49 +0000)]
[chromium] Remove unused WebWidget::instrument calls
https://bugs.webkit.org/show_bug.cgi?id=110906

Patch by James Robinson <jamesr@chromium.org> on 2013-02-26
Reviewed by Jochen Eisinger.

These calls are now routed through WebDevToolsAgent.

* public/WebWidget.h:
* src/WebViewImpl.cpp:
(WebKit::WebViewImpl::willBeginFrame):
* src/WebViewImpl.h:

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

8 years agoUnreviewed. AppleWin VS2010 build fix.
roger_fong@apple.com [Tue, 26 Feb 2013 22:40:55 +0000 (22:40 +0000)]
Unreviewed. AppleWin VS2010 build fix.

* JavaScriptCore.vcxproj/JavaScriptCoreExportGenerator/JavaScriptCoreExportGeneratorCommon.props:

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

8 years agofeDisplacementMap filter gets color space wrong
schenney@chromium.org [Tue, 26 Feb 2013 22:33:28 +0000 (22:33 +0000)]
feDisplacementMap filter gets color space wrong
https://bugs.webkit.org/show_bug.cgi?id=105929

Reviewed by Dirk Schulze.

Source/WebCore:

Tests: svg/filters/feDisplacementMap-color-interpolation-filters-expected.svg
       svg/filters/feDisplacementMap-color-interpolation-filters.svg
       svg/filters/feDisplacementMap-filterUnits-expected.svg
       svg/filters/feDisplacementMap-filterUnits.svg

According to the spec, the SVG feDisplacementMap filter should not
change the color space on its first input, and other vendors seem to
agree that this also means that the output should be in the first
input's color space. That makes sense: we are displacing the input,
not otherwise manipulating colors.

This change improves color space handling for filters by more
explicitly tracking which color space is used for the filter's
operation and which is used for the filter's result. It provides a
means for filter effects to override the color-interpolation-filters
property as defined by the spec. feFlood and feDisplacementMap use
this new feature to enforce the spec requirements.

* platform/graphics/filters/FEDisplacementMap.cpp:
(WebCore::FEDisplacementMap::setResultColorSpace): Override the default color space with the
    same color space as the first input filter.
(WebCore):
(WebCore::FEDisplacementMap::transformResultColorSpace): Only transform the color space on
    the second filter input.
(WebCore::FEDisplacementMap::platformApplySoftware): Make the application code more efficient,
    and give slightly better numerical accuracy.
* platform/graphics/filters/FEDisplacementMap.h:
(FEDisplacementMap): Declare setResultColorSpace.
* platform/graphics/filters/FEFlood.cpp:
(WebCore::FEFlood::platformApplySoftware): Remove the call that forces
    the result color space. We do it now in the setResultColorSpace.
* platform/graphics/filters/FEFlood.h:
(FEFlood): Add setResultColorSPace override that enforces sRGB color space. But not if using
    CG, which apparently does this this already internally.
* platform/graphics/filters/FilterEffect.cpp:
(WebCore::FilterEffect::FilterEffect): Rename m_colorSpace to m_operatingColorSpace.
(WebCore::FilterEffect::apply): Allow filter effects to
    override the color space conversion of their inputs.
(WebCore::FilterEffect::createImageBufferResult): Always create the
    image buffer with the result color space.
* platform/graphics/filters/FilterEffect.h:
(WebCore::FilterEffect::operatingColorSpace): New accessor.
(WebCore::FilterEffect::setOperatingColorSpace): New accessor.
(WebCore::FilterEffect::resultColorSpace): New accessor.
(WebCore::FilterEffect::setResultColorSpace): New accessor.
(FilterEffect):
(WebCore::FilterEffect::transformResultColorSpace): A new virtual
    method that allows filter effects individual control over the color
    space conversion of their inputs.
* platform/graphics/filters/SourceGraphic.h:
(WebCore::SourceGraphic::SourceGraphic): Variable rename.
* rendering/FilterEffectRenderer.cpp:
(WebCore::FilterEffectRenderer::build): Use accessors to set color
    space to enable per-effect overrides.
* rendering/svg/RenderSVGResourceFilter.cpp:
(WebCore::RenderSVGResourceFilter::buildPrimitives): Use accessors to set color.

LayoutTests:

       Add two new feDisplacementMap tests to get better coverage. And update some results.

* platform/chromium-linux/svg/W3C-SVG-1.1/filters-displace-01-f-expected.png:
* platform/chromium-linux/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-in-attr-expected.png:
* platform/chromium-linux/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-in2-attr-expected.png:
* platform/chromium-linux/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-scale-attr-expected.png:
* platform/chromium-linux/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-xChannelSelector-attr-expected.png:
* platform/chromium-linux/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-yChannelSelector-attr-expected.png:
* platform/chromium-linux/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-in-prop-expected.png:
* platform/chromium-linux/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-in2-prop-expected.png:
* platform/chromium-linux/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-scale-prop-expected.png:
* platform/chromium-linux/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-xChannelSelector-prop-expected.png:
* platform/chromium-linux/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-yChannelSelector-prop-expected.png:
* platform/chromium-linux/svg/filters/feDisplacementMap-expected.png:
* platform/chromium-linux/svg/filters/filterRes-expected.png:
* svg/filters/feDisplacementMap-color-interpolation-filters-expected.svg: Added.
* svg/filters/feDisplacementMap-color-interpolation-filters.svg: Added.
* svg/filters/feDisplacementMap-filterUnits-expected.svg: Added.
* svg/filters/feDisplacementMap-filterUnits.svg: Added.

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

8 years agoUnreviewed AppleWin build fix following r143996.
roger_fong@apple.com [Tue, 26 Feb 2013 22:29:41 +0000 (22:29 +0000)]
Unreviewed AppleWin build fix following r143996.

* WebKit.vcproj/WebKitExportGeneratorCommon.vsprops:
* WebKit.vcxproj/WebKitExportGenerator/WebKitExportGeneratorCommon.props:

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

8 years agoX-Frame-Options should accept ALLOWALL as a valid value.
mkwst@chromium.org [Tue, 26 Feb 2013 22:00:08 +0000 (22:00 +0000)]
X-Frame-Options should accept ALLOWALL as a valid value.
https://bugs.webkit.org/show_bug.cgi?id=110857

Reviewed by Adam Barth.

Source/WebCore:

DoubleClick, among others, serves ALLOWALL as a 'X-Frame-Options' value
with the intent of (shock!) allowing a resource to be framed by all
origins. Given its prevelance, and the fact that IE supports the header,
we shouldn't call it out as invalid.

This patch tweaks the warning logic to only throw the warning if the
header's value isn't 'ALLOWALL', 'DENY', or 'SAMEORIGIN'.

Test: http/tests/security/XFrameOptions/x-frame-options-allowall.html

* loader/FrameLoader.cpp:
(WebCore::FrameLoader::shouldInterruptLoadForXFrameOptions):

LayoutTests:

* http/tests/security/XFrameOptions/resources/x-frame-options-allowall.cgi: Added.
* http/tests/security/XFrameOptions/x-frame-options-allowall-expected.txt: Added.
* http/tests/security/XFrameOptions/x-frame-options-allowall.html: Added.
    Exciting new test!
* http/tests/security/XFrameOptions/x-frame-options-cached-expected.txt:
    Exciting new baseline for an old test that was already using ALLOWALL!

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

8 years agoCSS Flexbox: dynamically applied align-items doesn't affect item alignment
tony@chromium.org [Tue, 26 Feb 2013 21:58:36 +0000 (21:58 +0000)]
CSS Flexbox: dynamically applied align-items doesn't affect item alignment
https://bugs.webkit.org/show_bug.cgi?id=110341

Reviewed by Ojan Vafai.

Source/WebCore:

If flex items don't change width, we don't lay them out again. This causes problems
when an item goes from stretch to non-stretch since we need to relayout to get the
smaller height. Fix this by marking flex items that were stretch as needing layout.

Test: css3/flexbox/relayout-align-items.html

* rendering/RenderFlexibleBox.cpp:
(WebCore::resolveAlignment): Pull out common code for computing flex item style.
(WebCore::RenderFlexibleBox::styleDidChange): Mark children as needing layout.
(WebCore::RenderFlexibleBox::alignmentForChild): Use resolveAlignment.
* rendering/RenderFlexibleBox.h:

LayoutTests:

Also fix a typo causing align-self-* classes from not applying. There
was only one test that tried to use the align-self classes and it was
testing all values behaved the same.

* css3/flexbox/relayout-align-items-expected.txt: Added.
* css3/flexbox/relayout-align-items.html: Added.
* css3/flexbox/resources/flexbox.css:
(.align-self-auto):
(.align-self-flex-start):
(.align-self-flex-end):
(.align-self-center):
(.align-self-baseline):
(.align-self-stretch):

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

8 years agoStorageMap can just import an entire map of items at once
andersca@apple.com [Tue, 26 Feb 2013 21:54:50 +0000 (21:54 +0000)]
StorageMap can just import an entire map of items at once
https://bugs.webkit.org/show_bug.cgi?id=110904

Reviewed by Beth Dakin.

Instead of iterating over the map inside StorageAreaSync, just pass it directly
(through StorageAreaImpl) to StorageMap and iterate over it there.

* storage/StorageAreaImpl.cpp:
(WebCore::StorageAreaImpl::importItems):
* storage/StorageAreaImpl.h:
(StorageAreaImpl):
* storage/StorageAreaSync.cpp:
(WebCore::StorageAreaSync::performImport):
* storage/StorageMap.cpp:
(WebCore::StorageMap::importItems):
* storage/StorageMap.h:
(StorageMap):

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

8 years ago[JSC] static methods with Callback should not have this pointer
rgf748@motorola.com [Tue, 26 Feb 2013 21:40:08 +0000 (21:40 +0000)]
[JSC] static methods with Callback should not have this pointer
https://bugs.webkit.org/show_bug.cgi?id=110846

Reviewed by Kentaro Hara.

Fixing the JSC Codegenerator not to use 'this' pointer in static methods.

No new tests.

* bindings/scripts/CodeGeneratorJS.pm:
(GenerateParametersCheck):
* bindings/scripts/test/JS/JSTestObj.cpp:
(WebCore::jsTestObjConstructorFunctionStaticMethodWithCallbackAndOptionalArg):
(WebCore::jsTestObjConstructorFunctionStaticMethodWithCallbackArg):
* bindings/scripts/test/JS/JSTestObj.h:
* bindings/scripts/test/TestObj.idl:
* bindings/scripts/test/V8/V8TestObj.cpp:
(WebCore::TestObjV8Internal::staticMethodWithCallbackAndOptionalArgMethod):
(TestObjV8Internal):
(WebCore::TestObjV8Internal::staticMethodWithCallbackAndOptionalArgMethodCallback):
(WebCore::TestObjV8Internal::staticMethodWithCallbackArgMethod):
(WebCore::TestObjV8Internal::staticMethodWithCallbackArgMethodCallback):
(WebCore::ConfigureV8TestObjTemplate):

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

8 years agoGIFImageReader to read from source data directly
hclam@chromium.org [Tue, 26 Feb 2013 21:38:10 +0000 (21:38 +0000)]
GIFImageReader to read from source data directly
https://bugs.webkit.org/show_bug.cgi?id=109662

Reviewed by Stephen White.

Source/WebCore:

This is the first patch to improve GIF image decoding.

GIFImageReader has an internal 256 bytes buffer to saving incoming
bytes. This mechanism is out-dated because WebKit holds the entire
file in memory and it is not necessary to hold data in an intermediate
buffer.

This is also a blocker for later work to parse and decode GIF
incrementally.

This change removed the imtermediate 'hold' buffer and uses an index
for data position to keep track of parsing of the GIF file. Buffer for
global colormap and local colormap are also removed because they can be
referenced from the data stream.

This change is tested by:

Layout tests
All tests passed under fast/images.

Unit tests
Added GIFImageDecoderTest for Chromium.

Local testing
I tested this implementation against a set of 50k GIF images and
there's no crashes and produces bit-exact results as previous code.

* platform/image-decoders/gif/GIFImageDecoder.cpp:
(WebCore::GIFImageDecoder::setData):
(WebCore::GIFImageDecoder::frameCount):
(WebCore::GIFImageDecoder::haveDecodedRow):
(WebCore::GIFImageDecoder::decode):
* platform/image-decoders/gif/GIFImageReader.cpp:
(GIFImageReader::doLZW):
(GIFImageReader::decode):
(GIFImageReader::decodeInternal):
(GIFImageReader::setRemainingBytes):
* platform/image-decoders/gif/GIFImageReader.h:
(GIFFrameContext):
(GIFFrameContext::GIFFrameContext):
(GIFFrameContext::~GIFFrameContext):
(GIFImageReader::GIFImageReader):
(GIFImageReader::~GIFImageReader):
(GIFImageReader::setData):
(GIFImageReader):
(GIFImageReader::globalColormap):
(GIFImageReader::localColormap):
(GIFImageReader::localColormapSize):
(GIFImageReader::data):
(GIFImageReader::colormap):

Source/WebKit/chromium:

Added the following unit tests to test new logic in GIFImageDecoder:

GIFImageDecoderTest.decodeTwoFrames
Test that it can decode a multi-frame GIF image correctly.

GIFImageDecoderTest.parseAndDecode
First perform a parse operation and then a decode operation. Expect
that parse and decode operates correctly.

GIFImageDecoderTest.parseByteByByte
Test that multi-frame GIF image can be parsed correctly byte by byte.

GIFImageDecoderTest.parseAndDecodeByteByByte
Run a loop to feed decoder byte by byte, perform a parse and then
decode operation and make sure frames are decoded correctly.

GIFImageDecoderTest.brokenSecondFrame
Decode a GIF image with second frame broken. Expect that the first
frame can be decoded correctly.

* WebKit.gypi:
* tests/GIFImageDecoderTest.cpp: Added.
(WebKit):
(WebKit::readFile):
(WebKit::TEST):
* tests/data/broken.gif: Added.

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

8 years agoEmpty <button>s should collapse; empty <input type="button"> should not collapse
commit-queue@webkit.org [Tue, 26 Feb 2013 21:08:52 +0000 (21:08 +0000)]
Empty <button>s should collapse; empty <input type="button"> should not collapse
https://bugs.webkit.org/show_bug.cgi?id=110654

Patch by Christian Biesinger <cbiesinger@chromium.org> on 2013-02-26
Reviewed by Ojan Vafai.

Source/WebCore:

This patch also fixes other height computation issues with flex boxes
related to scroll bars and hasLineIfEmpty()=true. See below for
details.

Tests: css3/flexbox/button.html
       css3/flexbox/position-absolute-child-with-contenteditable.html

* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::layoutBlock): Add a FIXME to make
border/padding/scrollbar inclusion more consistent with other
renderers.
* rendering/RenderButton.h:
(WebCore::RenderButton::hasLineIfEmpty): We only want a line for
<input type=button|submit|reset>, for consistency with Firefox.

* rendering/RenderFlexibleBox.cpp:
(WebCore::RenderFlexibleBox::layoutBlock): Start out layoutBlock by
setting the logical height to border + padding + scrollbar height to
ensure that we have space for the scrollbar even without children. The
layoutFlexItems change below is not enough because we also need this
when hasLineIfEmpty() is false.
(WebCore::RenderFlexibleBox::layoutFlexItems): Ensure we have a line
when hasLineIfEmpty() is true by calling setLogicalHeight(border+
padding+scrollbar+lineHeight()) if we don't have a flex line.

LayoutTests:

* css3/flexbox/button-expected.png: Added.
* css3/flexbox/button-expected.txt: Added.
* css3/flexbox/button.html: Added.
Test empty buttons, <input type=button>, and buttons with
overflow:scroll;

* css3/flexbox/position-absolute-child-with-contenteditable-expected.html: Added.
* css3/flexbox/position-absolute-child-with-contenteditable.html: Added.
Test flex boxes with hasLineIfEmpty()=true and absolute positioned
children. Uses contenteditable=true to get that effect.

* platform/chromium-linux/css2.1/20110323/replaced-elements-001-expected.png:
* platform/chromium-linux/css2.1/20110323/replaced-elements-001-expected.txt:
* platform/chromium-linux/svg/custom/foreign-object-skew-expected.png:
* platform/chromium-linux/svg/custom/foreign-object-skew-expected.txt:
* platform/chromium-linux/tables/mozilla/bugs/bug92647-2-expected.png:
* platform/chromium-linux/tables/mozilla/bugs/bug92647-2-expected.txt:
Regenerate test cases that use <input type=button>.

* platform/chromium/TestExpectations:
* platform/efl/TestExpectations:
* platform/gtk/TestExpectations:
* platform/mac/TestExpectations:
* platform/qt/TestExpectations:
* platform/win/TestExpectations:
Mark tests for rebaselining.

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

8 years agoUnreviewed, rolling out r143941.
commit-queue@webkit.org [Tue, 26 Feb 2013 20:52:51 +0000 (20:52 +0000)]
Unreviewed, rolling out r143941.
http://trac.webkit.org/changeset/143941
https://bugs.webkit.org/show_bug.cgi?id=110901

This is a step in the wrong direction as it ties us to what
grid-{row|column} expect (see
https://bugs.webkit.org/show_bug.cgi?id=110777 for the right
direction) (Requested by jchaffraix on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2013-02-26

* css/CSSComputedStyleDeclaration.cpp:
(WebCore::valueForGridPosition):
(WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
* css/StyleResolver.cpp:
(WebCore::createGridPosition):
(WebCore::StyleResolver::applyProperty):
* rendering/RenderGrid.cpp:
(WebCore::RenderGrid::maximumIndexInDirection):
(WebCore::RenderGrid::placeItemsOnGrid):
(WebCore::RenderGrid::placeSpecifiedMajorAxisItemsOnGrid):
(WebCore::RenderGrid::placeAutoMajorAxisItemsOnGrid):
(WebCore::RenderGrid::placeAutoMajorAxisItemOnGrid):
(WebCore::RenderGrid::autoPlacementMajorAxisPositionForChild):
(WebCore::RenderGrid::autoPlacementMinorAxisPositionForChild):
* rendering/RenderGrid.h:
* rendering/style/GridPosition.h:
* rendering/style/RenderStyle.h:
* rendering/style/StyleGridItemData.h:
(StyleGridItemData):

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

8 years agoUnreviewed build fix; use correct macro for platform name in FeatureDefines.xcconfig.
jer.noble@apple.com [Tue, 26 Feb 2013 20:51:43 +0000 (20:51 +0000)]
Unreviewed build fix; use correct macro for platform name in FeatureDefines.xcconfig.

Source/JavaScriptCore:

* Configurations/FeatureDefines.xcconfig:

Source/WebCore:

* Configurations/FeatureDefines.xcconfig:

Source/WebKit/mac:

* Configurations/FeatureDefines.xcconfig:

Source/WebKit2:

* Configurations/FeatureDefines.xcconfig:

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

8 years ago[BlackBerry] Animated images not animating on accelerated compositing layers
commit-queue@webkit.org [Tue, 26 Feb 2013 20:13:36 +0000 (20:13 +0000)]
[BlackBerry] Animated images not animating on accelerated compositing layers
https://bugs.webkit.org/show_bug.cgi?id=110886

Patch by Andrew Lo <anlo@rim.com> on 2013-02-26
Reviewed by Rob Buis.

Internally reviewed by Arvid Nilsson.
Internal PR 299598.

Animated images on AC layers call GraphicsLayer::setContentsToImage
on each frame with the same Image.

We need to set needs display in that case so that the frames are
displayed.

No new tests are needed since there is no new functionality.

* platform/graphics/blackberry/LayerWebKitThread.cpp:
(WebCore::LayerWebKitThread::setContents):

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

8 years agoUnreviewed, rolling out r144065.
commit-queue@webkit.org [Tue, 26 Feb 2013 19:43:39 +0000 (19:43 +0000)]
Unreviewed, rolling out r144065.
http://trac.webkit.org/changeset/144065
https://bugs.webkit.org/show_bug.cgi?id=110896

Causing failures and crashes on Chromium Win7 and Win XP
(Requested by schenney on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2013-02-26

Source/WebCore:

* platform/graphics/harfbuzz/HarfBuzzShaper.cpp:
(WebCore::normalizeCharacters):
(WebCore::HarfBuzzShaper::HarfBuzzShaper):
* platform/graphics/harfbuzz/HarfBuzzShaperBase.cpp:
(WebCore::HarfBuzzShaperBase::setNormalizedBuffer):

Source/WebKit/chromium:

* features.gypi:

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

8 years agoPotential crash in YARR JIT generated code when building 64 bit
msaboff@apple.com [Tue, 26 Feb 2013 19:37:53 +0000 (19:37 +0000)]
Potential crash in YARR JIT generated code when building 64 bit
https://bugs.webkit.org/show_bug.cgi?id=110893

Reviewed by Gavin Barraclough.

The ABI doesn't define the behavior for the upper bits of a value that takes less than 64 bits.
Therefore, we zero extend both the count and length registers to assure that these unsigned values
don't have garbage upper bits.

* yarr/YarrJIT.cpp:
(JSC::Yarr::YarrGenerator::generateEnter):

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

8 years agoUnreviewed. Build fix for VS2010 solution, take 2.
roger_fong@apple.com [Tue, 26 Feb 2013 19:25:42 +0000 (19:25 +0000)]
Unreviewed. Build fix for VS2010 solution, take 2.

* WTF.vcxproj/work-around-vs-dependency-tracking-bugs.py:

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

8 years ago[chromium] content shell drt: Enable WebKit::setLayoutTestMode()
thakis@chromium.org [Tue, 26 Feb 2013 19:21:26 +0000 (19:21 +0000)]
[chromium] content shell drt: Enable WebKit::setLayoutTestMode()
https://bugs.webkit.org/show_bug.cgi?id=110890

Reviewed by Jochen Eisinger.

Several functions in webkit check that bit to change rendering
in layout test mode. For example, platform/graphics/skia/FrontSkia.cpp
disables font smoothing in this mode. TestShell and DRT both set
this flag, so content shell drt should set it too.

* DumpRenderTree/chromium/TestRunner/src/TestInterfaces.cpp:
(WebTestRunner::TestInterfaces::TestInterfaces):

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

8 years agoUnreviewed. Unreviewed build fix for VS2010 solution.
roger_fong@apple.com [Tue, 26 Feb 2013 19:12:22 +0000 (19:12 +0000)]
Unreviewed. Unreviewed build fix for VS2010 solution.

* WTF.vcxproj/work-around-vs-dependency-tracking-bugs.py:

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

8 years agoUnreviewed gardening.
zandobersek@gmail.com [Tue, 26 Feb 2013 19:03:50 +0000 (19:03 +0000)]
Unreviewed gardening.

Adding failure expectations for three html5lib tests that are failing after r144032
on EFL and GTK, most likely due to the ports sharing Libsoup as the network backend.

* platform/efl/TestExpectations:
* platform/gtk/TestExpectations:

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

8 years ago[TexMap] Ignore layer repaint request when drawsContent is false
allan.jensen@digia.com [Tue, 26 Feb 2013 19:00:07 +0000 (19:00 +0000)]
[TexMap] Ignore layer repaint request when drawsContent is false
https://bugs.webkit.org/show_bug.cgi?id=110888

Reviewed by Noam Rosenthal.

As long as drawsContent is false we should ignore requests for repaints.
A full repaint will be requested when drawsContent is changed to true.

* platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:
(WebCore::GraphicsLayerTextureMapper::setNeedsDisplay):
(WebCore::GraphicsLayerTextureMapper::setNeedsDisplayInRect):
(WebCore::GraphicsLayerTextureMapper::setDrawsContent):

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

8 years agoFix the atomicIncrement implementation for MIPS GCC
commit-queue@webkit.org [Tue, 26 Feb 2013 18:55:12 +0000 (18:55 +0000)]
Fix the atomicIncrement implementation for MIPS GCC
https://bugs.webkit.org/show_bug.cgi?id=106739

Patch by Balazs Kilvady <kilvadyb@homejinni.com> on 2013-02-26
Reviewed by Oliver Hunt.

Implementation of missing __sync_[add|sub]_and_fetch_8 functions.

Some architectures, like MIPS32, don't have GCC implementation for
builtin __sync_* functions with 64 bits variable size. GCC answer
for the problem: If a target doesn't support atomic operations on
certain variable sizes, you are out of luck with atomicity in that
case (http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56296). GCC >= 4.8
will support __atomic_* builtin functions for this purpose for all
the GCC targets, but for current compilers we have to include our
own implementation.

* GNUmakefile.list.am:
* WTF.pro:
* wtf/Atomics.cpp: Added.
(WTF):
(WTF::getSwapLock):
(WTF::atomicStep):
* wtf/CMakeLists.txt:

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

8 years agonew-commit-bot: Fix the unit test newcommitbot-unittest.py due to r144040
vivek.vg@samsung.com [Tue, 26 Feb 2013 18:50:58 +0000 (18:50 +0000)]
new-commit-bot: Fix the unit test newcommitbot-unittest.py due to r144040
https://bugs.webkit.org/show_bug.cgi?id=110884

Reviewed by Csaba Osztrogon√°c.

Adding the missing spaces before ':' in the unit test.

* Scripts/webkitpy/tool/commands/newcommitbot_unittest.py:

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

8 years agoIndexedDB: IDBObjectStore.index() doesn't report errors after deleteIndex()
jsbell@chromium.org [Tue, 26 Feb 2013 18:44:04 +0000 (18:44 +0000)]
IndexedDB: IDBObjectStore.index() doesn't report errors after deleteIndex()
https://bugs.webkit.org/show_bug.cgi?id=110792

Reviewed by Tony Chang.

Source/WebCore:

The object store's metadata wasn't updated if the index hadn't been accessed
by script and hence placed in the name->object map. Make sure the metadata
is always updated.

Test: storage/indexeddb/deleteIndex-bug110792.html

* Modules/indexeddb/IDBObjectStore.cpp:
(WebCore::IDBObjectStore::deleteIndex): Always update the object store's metadata.

LayoutTests:

Added regression test for bug.

* storage/indexeddb/deleteIndex-bug110792-expected.txt: Added.
* storage/indexeddb/deleteIndex-bug110792.html: Added.

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

8 years agoUnused Structure property tables waste 14MB on Membuster.
akling@apple.com [Tue, 26 Feb 2013 18:43:24 +0000 (18:43 +0000)]
Unused Structure property tables waste 14MB on Membuster.
<http://webkit.org/b/110854>
<rdar://problem/13292104>

Reviewed by Filip Pizlo.

Turn PropertyTable into a GC object and have Structure drop unpinned tables when marking.
14 MB progression on Membuster3.

* CMakeLists.txt:
* GNUmakefile.list.am:
* JavaScriptCore.gypi:
* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
* JavaScriptCore.vcxproj/JavaScriptCore.vcxproj:
* JavaScriptCore.xcodeproj/project.pbxproj:
* Target.pri:

    Added PropertyTable.cpp.

* runtime/PropertyTable.cpp: Added.
(JSC::PropertyTable::create):
(JSC::PropertyTable::clone):
(JSC::PropertyTable::PropertyTable):
(JSC::PropertyTable::destroy):
(JSC::PropertyTable::~PropertyTable):
(JSC::PropertyTable::visitChildren):

    Moved marking of property table values here from Structure::visitChildren().

* runtime/StructureInlines.h:
(JSC::Structure::putWillGrowOutOfLineStorage):
(JSC::Structure::checkOffsetConsistency):

    Moved these to StructureInlines.h to break header dependency cycle between Structure/PropertyTable.

* runtime/Structure.cpp:
(JSC::Structure::visitChildren):

    Null out m_propertyTable if the table is unpinned. This'll cause the table to get GC'd.

(JSC::Structure::materializePropertyMap):
(JSC::Structure::addPropertyTransition):
(JSC::Structure::changePrototypeTransition):
(JSC::Structure::despecifyFunctionTransition):
(JSC::Structure::attributeChangeTransition):
(JSC::Structure::toDictionaryTransition):
(JSC::Structure::preventExtensionsTransition):
(JSC::Structure::nonPropertyTransition):
(JSC::Structure::copyPropertyTable):
(JSC::Structure::copyPropertyTableForPinning):
(JSC::Structure::putSpecificValue):
(JSC::Structure::createPropertyMap):
* runtime/Structure.h:
(Structure):
* runtime/JSGlobalData.cpp:
(JSC::JSGlobalData::JSGlobalData):
* runtime/JSGlobalData.h:
(JSGlobalData):
* runtime/PropertyMapHashTable.h:
(PropertyTable):
(JSC::PropertyTable::createStructure):
(JSC::PropertyTable::copy):

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

8 years agoUnreviewed, rolling out r144019.
commit-queue@webkit.org [Tue, 26 Feb 2013 18:38:39 +0000 (18:38 +0000)]
Unreviewed, rolling out r144019.
http://trac.webkit.org/changeset/144019
https://bugs.webkit.org/show_bug.cgi?id=110892

due to 8% perf regression on chromium-win7 intl1 page cycler,
see https://bugs.webkit.org/show_bug.cgi?id=110872 (Requested
by gasubic on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2013-02-26

Source/WebCore:

* platform/text/LineBreakIteratorPoolICU.h:
(WebCore::LineBreakIteratorPool::take):
(WebCore::LineBreakIteratorPool::put):
(LineBreakIteratorPool):
* platform/text/TextBreakIterator.h:
(WebCore):
(WebCore::LazyLineBreakIterator::LazyLineBreakIterator):
(WebCore::LazyLineBreakIterator::get):
(WebCore::LazyLineBreakIterator::reset):
(LazyLineBreakIterator):
* platform/text/TextBreakIteratorICU.cpp:
(WebCore::acquireLineBreakIterator):
(WebCore::releaseLineBreakIterator):
* rendering/RenderBlockLineLayout.cpp:
(WebCore::RenderBlock::LineBreaker::nextSegmentBreak):
* rendering/RenderText.cpp:
(WebCore::RenderText::computePreferredLogicalWidths):
* rendering/RenderText.h:
(WebCore):
* rendering/break_lines.cpp:
(WebCore):
(WebCore::isBreakableSpace):
(WebCore::needsLineBreakIterator):
(WebCore::nextBreakablePosition):
(WebCore::nextBreakablePositionIgnoringNBSP):
* rendering/break_lines.h:
(WebCore):
(WebCore::isBreakable):

LayoutTests:

* platform/mac/TestExpectations:

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

8 years agoCreate the SharedGraphicsContext3D through its own method.
danakj@chromium.org [Tue, 26 Feb 2013 18:35:26 +0000 (18:35 +0000)]
Create the SharedGraphicsContext3D through its own method.
https://bugs.webkit.org/show_bug.cgi?id=109345

Reviewed by James Robinson.

Source/Platform:

Add Platform API methods to get shared contexts from the embedder.

* chromium/public/Platform.h:
(Platform):
(WebKit::Platform::sharedOffscreenGraphicsContext3D):
(WebKit::Platform::sharedOffscreenGrContext):

Source/WebCore:

Allow creating a GraphicsContext3DPrivate from an externally owned
WebGraphicsContext3D and GrContext. Then create the shared graphics
context from these provided by the embedder.

This falls back to the old path if the new methods return NULL to
let us land this immediately and then transition the chromium side
over to this path.

* platform/chromium/support/GraphicsContext3DPrivate.cpp:
(WebCore::GraphicsContext3DPrivate::GraphicsContext3DPrivate):
(WebCore):
(WebCore::GraphicsContext3DPrivate::createGraphicsContextFromExternalWebContextAndGrContext):
(WebCore::GraphicsContext3DPrivate::grContext):
* platform/chromium/support/GraphicsContext3DPrivate.h:
(GraphicsContext3DPrivate):
(WebCore::GraphicsContext3DPrivate::webContext):
* platform/graphics/gpu/SharedGraphicsContext3D.cpp:
(WebCore::SharedGraphicsContext3DImpl::getOrCreateContext):

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

8 years agoAppease the QT bots.
oliver@apple.com [Tue, 26 Feb 2013 18:32:09 +0000 (18:32 +0000)]
Appease the QT bots.

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

8 years ago[WK2][GTK] REGRESSION (r143463): unit test failure in WebKit2APITests/TestContextMenu
commit-queue@webkit.org [Tue, 26 Feb 2013 18:29:27 +0000 (18:29 +0000)]
[WK2][GTK] REGRESSION (r143463): unit test failure in WebKit2APITests/TestContextMenu
https://bugs.webkit.org/show_bug.cgi?id=110869

Patch by Manuel Rego Casasnovas <rego@igalia.com> on 2013-02-26
Reviewed by Martin Robinson.

Test was failing because of new media controls needs more space to be
painted than just 10x10 pixels.

* UIProcess/API/gtk/tests/TestContextMenu.cpp:
(testContextMenuDefaultMenu): Modified test in order to give more space
to the media controls.

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

8 years ago[BlackBerry] Use APIEntryShim when making JS call
yoli@rim.com [Tue, 26 Feb 2013 18:04:38 +0000 (18:04 +0000)]
[BlackBerry] Use APIEntryShim when making JS call
https://bugs.webkit.org/show_bug.cgi?id=110787

Reviewed by Rob Buis.

PR# 301451.
Use APIEntryShim to fix an assert and ensure it is thread-safe.

* Api/WebPage.cpp:
(BlackBerry::WebKit::WebPage::executeJavaScriptFunction):

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

8 years agoREGRESSION(r143986): fast/files/revoke-blob-url.html asserts
antti@apple.com [Tue, 26 Feb 2013 17:50:46 +0000 (17:50 +0000)]
REGRESSION(r143986): fast/files/revoke-blob-url.html asserts
https://bugs.webkit.org/show_bug.cgi?id=110885

Reviewed by Alexey Proskuryakov.

The ResourceRequest string constructor assumes that the string is a valid URL. Use KURL constructor instead.

* html/DOMURL.cpp:
(WebCore::DOMURL::revokeObjectURL):

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

8 years agoDraw intermediate snapshots if possible
dino@apple.com [Tue, 26 Feb 2013 17:16:35 +0000 (17:16 +0000)]
Draw intermediate snapshots if possible
https://bugs.webkit.org/show_bug.cgi?id=110811

Reviewed by Simon Fraser.

After http://webkit.org/b/110495 we delayed snapshotting until we've
received a nice image, but this made the page look like it is broken.
We should draw any intermediate snapshots that we find, which might
include content such as progress bars/spinners.

Source/WebCore:

* html/HTMLPlugInElement.h:
(WebCore::HTMLPlugInElement::isPlugInImageElement): Expose virtual method
to indicate if this is a HTMLPlugInImageElement or not.
* html/HTMLPlugInImageElement.cpp:
(WebCore::HTMLPlugInImageElement::updateSnapshot): If we have
a RenderEmbeddedObject renderer, then tell it to repaint.
* html/HTMLPlugInImageElement.h:
(WebCore::HTMLPlugInImageElement::snapshotImage): Expose an
accessor for snapshot images.
* rendering/RenderEmbeddedObject.cpp:
(WebCore::RenderEmbeddedObject::paintSnapshotImage): New helper
method to render an image directly. This code is similar to
that in RenderSnapshottedPlugIn.
(WebCore::RenderEmbeddedObject::paintContents): The virtual implementation
of this method for use when we have a snapshot to paint. If we are a plugin that is
in the process of being snapshotted, ask our HTMLPlugInImageElement for a
snapshot and paint that instead. In the case where we are not snapshotting,
or we do not yet have a snapshot, this will call back into the RenderWidget code.
* rendering/RenderEmbeddedObject.h:
(RenderEmbeddedObject): New methods paintSnapshotImage and paintContents
* rendering/RenderWidget.cpp:
(WebCore::RenderWidget::paintContents): New method called in the middle
of paint() that can be overridden by RenderEmbeddedObject. The code here was
simply moved out of the previous paint().
(WebCore::RenderWidget::paint): Call paintContents at the appropriate time.
* rendering/RenderWidget.h:
(RenderWidget): New virtual method paintContents.

Source/WebKit2:

* WebProcess/Plugins/PluginView.cpp:
(WebKit): Reinstate 60 attempts at snapshots before giving up.
(WebKit::PluginView::isAcceleratedCompositingEnabled): We do not
want accelerated compositing enabled when we are trying to capture
snapshots.

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

8 years agoRemove nonexistent StringPairVector.h from Target.pri after r142839
abecsi@webkit.org [Tue, 26 Feb 2013 17:15:38 +0000 (17:15 +0000)]
Remove nonexistent StringPairVector.h from Target.pri after r142839

Unreviewed gardening.

* Target.pri:

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

8 years agoAdd support for 8 bit TextRuns for Chromium/HarfBuzz
leviw@chromium.org [Tue, 26 Feb 2013 17:08:05 +0000 (17:08 +0000)]
Add support for 8 bit TextRuns for Chromium/HarfBuzz
https://bugs.webkit.org/show_bug.cgi?id=99393

Reviewed by Eric Seidel.

Source/WebCore:

Adding support for 8 bit TextRuns for platforms using HarfBuzz. To accomplish this,
8 bit text runs are upconverted to 16 bit in the complex text path during string
normalization, as HarfBuzz operates on UChars.

No new tests. No change in behavior.

(WebCore::HarfBuzzShaperBase::setNormalizedBuffer):
* platform/graphics/harfbuzz/HarfBuzzShaperBase.h:
* platform/graphics/harfbuzz/HarfBuzzShaper.cpp:
(WebCore::normalizeCharacters):
(WebCore::HarfBuzzShaper::HarfBuzzShaper):

Source/WebKit/chromium:

Enabling 8 bit text runs for Chromium.

* features.gypi:

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

8 years agoMerged Tip and Debug log levels for web console.
commit-queue@webkit.org [Tue, 26 Feb 2013 16:37:50 +0000 (16:37 +0000)]
Merged Tip and Debug log levels for web console.
https://bugs.webkit.org/show_bug.cgi?id=109919

Patch by Dmitry Zvorygin <zvorygin@chromium.org> on 2013-02-26
Reviewed by Pavel Feldman.

In every component either TIP or DEBUG level was used for reporting,
but not both. This patch is prerequisite for Web Inspector console log filtering.

Source/WebCore:

* css/MediaList.cpp:
(WebCore::addResolutionWarningMessageToConsole):
* inspector/ConsoleMessage.cpp:
(WebCore::messageLevelValue):
* loader/appcache/ApplicationCacheGroup.cpp:
(WebCore::ApplicationCacheGroup::abort):
* page/Console.cpp:
(WebCore::printMessageSourceAndLevelPrefix):
* page/ConsoleTypes.h:
* xml/XSLTProcessorLibxslt.cpp:
(WebCore::XSLTProcessor::parseErrorFunc):
* xml/XSLTProcessorQt.cpp:
(WebCore::XSLTMessageHandler::handleMessage):

Source/WebKit/chromium:

* public/WebConsoleMessage.h:
* src/AssertMatchingEnums.cpp:
* src/WebFrameImpl.cpp:
(WebKit::WebFrameImpl::addMessageToConsole):

Source/WebKit/mac:

* WebCoreSupport/WebChromeClient.mm:
(stringForMessageLevel):
* WebView/WebUIDelegatePrivate.h:

Source/WebKit/wx:

* WebView.h:

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

8 years ago[BlackBerry] Upstream the datalist support UI
commit-queue@webkit.org [Tue, 26 Feb 2013 16:28:24 +0000 (16:28 +0000)]
[BlackBerry] Upstream the datalist support UI
https://bugs.webkit.org/show_bug.cgi?id=110736

Patch by Alberto Garcia <agarcia@igalia.com> on 2013-02-26
Reviewed by Rob Buis.

Original code by Otto Derek Cheung <otcheung@rim.com>

Source/WebCore:

* css/themeBlackBerry.css:
(input::-webkit-suggestion-dropdown-box):
(input::-webkit-suggestion-dropdown-box-item):
(input::-webkit-suggestion-prefix-text):
(input::-webkit-suggestion-dropdown-box-item-last):
* platform/blackberry/RenderThemeBlackBerry.cpp:
(WebCore::RenderThemeBlackBerry::supportsDataListUI):
(WebCore):
* platform/blackberry/RenderThemeBlackBerry.h:
(RenderThemeBlackBerry):

Source/WebKit:

* PlatformBlackBerry.cmake:

Source/WebKit/blackberry:

* WebCoreSupport/SuggestionBoxElement.cpp: Added.
(WebCore):
(WebCore::SuggestionBoxElement::SuggestionBoxElement):
(WebCore::SuggestionBoxElement::~SuggestionBoxElement):
(WebCore::SuggestionBoxElement::create):
(WebCore::SuggestionBoxElement::defaultEventHandler):
* WebCoreSupport/SuggestionBoxElement.h: Added.
(WebCore):
(SuggestionBoxElement):
* WebCoreSupport/SuggestionBoxHandler.cpp: Added.
(WebCore):
(WebCore::SuggestionBoxHandler::SuggestionBoxHandler):
(WebCore::SuggestionBoxHandler::~SuggestionBoxHandler):
(WebCore::SuggestionBoxHandler::create):
(WebCore::SuggestionBoxHandler::setInputElementAndUpdateDisplay):
(WebCore::SuggestionBoxHandler::showDropdownBox):
(WebCore::SuggestionBoxHandler::hideDropdownBox):
(WebCore::SuggestionBoxHandler::changeInputElementInnerTextValue):
(WebCore::SuggestionBoxHandler::parseSuggestions):
(WebCore::SuggestionBoxHandler::insertSuggestionsToDropdownBox):
(WebCore::adjustDropdownBoxPosition):
(WebCore::SuggestionBoxHandler::buildDropdownBoxTree):
* WebCoreSupport/SuggestionBoxHandler.h: Added.
(WebCore):
(SuggestionBoxHandler):
(WebCore::SuggestionBoxHandler::focusedElement):
* WebKitSupport/InputHandler.cpp:
(BlackBerry::WebKit::InputHandler::setElementUnfocused):
(BlackBerry::WebKit::InputHandler::updateFormState):
* WebKitSupport/InputHandler.h:
(WebCore):
(InputHandler):
* WebKitSupport/TouchEventHandler.cpp:
(BlackBerry::WebKit::TouchEventHandler::handleTouchPoint):

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

8 years agoSource/WebCore: Web Inspector: plumb trace events to Timeline agent
caseq@chromium.org [Tue, 26 Feb 2013 16:22:55 +0000 (16:22 +0000)]
Source/WebCore: Web Inspector: plumb trace events to Timeline agent
https://bugs.webkit.org/show_bug.cgi?id=105796

Reviewed by Pavel Feldman.

- plumb trace events to Timeline;
- add TimelineTraceEventProcessor to process selected trace events;
- emit timeline events from TimelineTraceEventProcessor.

Note that actual event processing logic is a separate change.

* CMakeLists.txt: Added TimelineTraceEventProcessor.{h,cpp}.
* GNUmakefile.list.am:  Ditto.
* Target.pri: Ditto.
* WebCore.gypi: Ditto.
* WebCore.vcproj/WebCore.vcproj: Ditto.
* WebCore.xcodeproj/project.pbxproj: Ditto.
* inspector/InspectorAllInOne.cpp: Ditto.
* inspector/InspectorClient.h:
(InspectorClient):
(WebCore::InspectorClient::setTraceEventCallback):
* inspector/InspectorTimelineAgent.cpp: create/destroy trace event processor on start/stop.
(WebCore::InspectorTimelineAgent::start):
(WebCore::InspectorTimelineAgent::stop):
(WebCore::InspectorTimelineAgent::InspectorTimelineAgent):
(WebCore::InspectorTimelineAgent::page):
(WebCore):
* inspector/InspectorTimelineAgent.h:
(WebCore):
(InspectorTimelineAgent):
* inspector/TimelineTraceEventProcessor.cpp: Added.
(WebCore::TimelineTraceEventProcessor::TimelineTraceEventProcessor):
(WebCore):
(WebCore::TimelineTraceEventProcessor::~TimelineTraceEventProcessor):
(WebCore::TimelineTraceEventProcessor::TraceEvent::parameter):
(WebCore::TimelineTraceEventProcessor::processEventOnAnyThread):
(WebCore::TimelineTraceEventProcessor::processEvent):
(WebCore::TimelineTraceEventProcessor::sendTimelineRecord):
(WebCore::TimelineTraceEventProcessor::processBackgroundEvents):
* inspector/TimelineTraceEventProcessor.h: Added.
(WebCore):
(TimelineTraceEventProcessor):
(TraceEvent):
(WebCore::TimelineTraceEventProcessor::TraceEvent::TraceEvent):
(WebCore::TimelineTraceEventProcessor::TraceEvent::timestamp):
(WebCore::TimelineTraceEventProcessor::TraceEvent::phase):
(WebCore::TimelineTraceEventProcessor::TraceEvent::name):
(WebCore::TimelineTraceEventProcessor::TraceEvent::threadIdentifier):
(WebCore::TimelineTraceEventProcessor::TraceEvent::argumentCount):
(WebCore::TimelineTraceEventProcessor::TraceEvent::asBool):
(WebCore::TimelineTraceEventProcessor::TraceEvent::asInt):
(WebCore::TimelineTraceEventProcessor::TraceEvent::asUInt):
(WebCore::TimelineTraceEventProcessor::TraceEvent::asDouble):
(WebCore::TimelineTraceEventProcessor::TraceEvent::asString):
(WebCore::TimelineTraceEventProcessor::EventTypeEntry::EventTypeEntry):
(EventTypeEntry):

Source/WebKit/chromium: Plumbing trace events to Timeline

Web Inspector: plumb trace events to Timeline agent
https://bugs.webkit.org/show_bug.cgi?id=105796

Reviewed by Pavel Feldman.

* public/WebDevToolsAgentClient.h:
(WebDevToolsAgentClient):
(WebKit::WebDevToolsAgentClient::setTraceEventCallback):
* src/InspectorClientImpl.cpp:
(WebKit::InspectorClientImpl::setTraceEventCallback):
(WebKit):
* src/InspectorClientImpl.h:
(InspectorClientImpl):
* src/WebDevToolsAgentImpl.cpp:
(WebKit::WebDevToolsAgentImpl::setTraceEventCallback):
(WebKit):
* src/WebDevToolsAgentImpl.h:
(WebDevToolsAgentImpl):

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

8 years agoWeb Inspector: Web Inspector: Specify return type of WebInspector.UIString
eustas@chromium.org [Tue, 26 Feb 2013 16:14:12 +0000 (16:14 +0000)]
Web Inspector: Web Inspector: Specify return type of WebInspector.UIString
https://bugs.webkit.org/show_bug.cgi?id=110095

Reviewed by Pavel Feldman.

Specify return type of WebInspector.UIString.
Fix new js-compiler warnings.

This change will increase type coverage by 0.4% (to 81%)

* inspector/front-end/ObjectPropertiesSection.js: Fix type errors.
* inspector/front-end/UIString.js:
(WebInspector.UIString): Return type specified.

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

8 years agoWeb Inspector: [Resources] Cookies table looks empty.
eustas@chromium.org [Tue, 26 Feb 2013 16:08:33 +0000 (16:08 +0000)]
Web Inspector: [Resources] Cookies table looks empty.
https://bugs.webkit.org/show_bug.cgi?id=110870

Reviewed by Pavel Feldman.

Fixed data-grid selector.

* inspector/front-end/resourcesPanel.css:
(.storage-view .data-grid): Fixed selector.

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

8 years ago[Chromium] New baselines for css3-modsel-15c
schenney@chromium.org [Tue, 26 Feb 2013 16:05:34 +0000 (16:05 +0000)]
[Chromium] New baselines for css3-modsel-15c

Unreviewed test expectations update.

* platform/chromium-linux-x86/css3/selectors3/xml: Removed.
* platform/chromium-linux/css3/selectors3/xml/css3-modsel-15c-expected.png: Added.
* platform/chromium-mac-lion/css3/selectors3/xml/css3-modsel-15c-expected.png: Added.
* platform/chromium-mac-snowleopard/css3/selectors3/xml/css3-modsel-15c-expected.png: Added.
* platform/chromium-win/css3/selectors3/xml/css3-modsel-15c-expected.png: Added.
* platform/chromium-win/css3/selectors3/xml/css3-modsel-15c-expected.txt: Added.
* platform/chromium/css3/selectors3/xml/css3-modsel-15c-expected.png: Removed.
* platform/chromium/css3/selectors3/xml/css3-modsel-15c-expected.txt: Removed.

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

8 years agoWeb Inspector: Migrate FileSystem inspection support to ResourceTreeModel's SecurityO...
vsevik@chromium.org [Tue, 26 Feb 2013 15:59:46 +0000 (15:59 +0000)]
Web Inspector: Migrate FileSystem inspection support to ResourceTreeModel's SecurityOriginAdded/Removed events.
https://bugs.webkit.org/show_bug.cgi?id=110878

Reviewed by Alexander Pavlov.

Recently added SecurityOriginAdded/Removed events support was essentially duplicated in
FileSystemModel. This patch migrates FileSystem inspection support to new events.

* inspector/front-end/FileSystemModel.js:
(WebInspector.FileSystemModel):
(WebInspector.FileSystemModel.prototype._reset):
(WebInspector.FileSystemModel.prototype._securityOriginAdded):
(WebInspector.FileSystemModel.prototype._securityOriginRemoved):
(WebInspector.FileSystemModel.prototype._addOrigin):
(WebInspector.FileSystemModel.prototype._removeOrigin):
(WebInspector.FileSystemModel.prototype.refreshFileSystemList):

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

8 years agoWeb Inspector: Cannot deep expand an element that has previously been partially expanded
graouts@apple.com [Tue, 26 Feb 2013 15:57:50 +0000 (15:57 +0000)]
Web Inspector: Cannot deep expand an element that has previously been partially expanded
https://bugs.webkit.org/show_bug.cgi?id=110424

In the case where the children from the provided node have already been pushed, traverse children at the depth provided until we find children that have not been pushed yet.

Reviewed by Pavel Feldman.

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

8 years agoUnreviewed, rolling out r144054.
akling@apple.com [Tue, 26 Feb 2013 15:53:23 +0000 (15:53 +0000)]
Unreviewed, rolling out r144054.
http://trac.webkit.org/changeset/144054
https://bugs.webkit.org/show_bug.cgi?id=110854

broke builds

* CMakeLists.txt:
* GNUmakefile.list.am:
* JavaScriptCore.gypi:
* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
* JavaScriptCore.vcxproj/JavaScriptCore.vcxproj:
* JavaScriptCore.xcodeproj/project.pbxproj:
* Target.pri:
* runtime/JSGlobalData.cpp:
(JSC::JSGlobalData::JSGlobalData):
* runtime/JSGlobalData.h:
(JSGlobalData):
* runtime/PropertyMapHashTable.h:
(PropertyTable):
(JSC::PropertyTable::PropertyTable):
(JSC):
(JSC::PropertyTable::~PropertyTable):
(JSC::PropertyTable::copy):
* runtime/PropertyTable.cpp: Removed.
* runtime/Structure.cpp:
(JSC::Structure::materializePropertyMap):
(JSC::Structure::addPropertyTransition):
(JSC::Structure::changePrototypeTransition):
(JSC::Structure::despecifyFunctionTransition):
(JSC::Structure::attributeChangeTransition):
(JSC::Structure::toDictionaryTransition):
(JSC::Structure::preventExtensionsTransition):
(JSC::Structure::nonPropertyTransition):
(JSC::Structure::copyPropertyTable):
(JSC::Structure::copyPropertyTableForPinning):
(JSC::Structure::putSpecificValue):
(JSC::Structure::createPropertyMap):
(JSC::Structure::visitChildren):
* runtime/Structure.h:
(JSC):
(JSC::Structure::putWillGrowOutOfLineStorage):
(JSC::Structure::checkOffsetConsistency):
(Structure):
* runtime/StructureInlines.h:

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

8 years agoREGRESSION (r143619): Crashes in three layout tests
commit-queue@webkit.org [Tue, 26 Feb 2013 15:43:07 +0000 (15:43 +0000)]
REGRESSION (r143619): Crashes in three layout tests
https://bugs.webkit.org/show_bug.cgi?id=110588

Patch by Martin Robinson <mrobinson@igalia.com> on 2013-02-26
Reviewed by Gustavo Noronha Silva.

Source/WebKit/gtk:

Guard against null main resource identifiers. The main resource
identifier can be null at various times during the load. A null
identifier is never equal to the ones we are looking to remove.

* WebCoreSupport/FrameLoaderClientGtk.cpp:
(WebKit::FrameLoaderClient::dispatchDidFinishLoading): Use the new webkitWebViewRemoveSubresource helper.
(WebKit::FrameLoaderClient::dispatchDidFailLoading): ditto.
* webkit/webkitwebview.cpp:
(webkitWebViewRemoveSubresource): Added this helper which removes a subresource, but
never touches the main resource. This is adapted from the old method, for which the
main resource branch was dead code.
* webkit/webkitwebviewprivate.h: Update the method list.

LayoutTests:

* platform/gtk/TestExpectations: Unskip some tests which are no longer
crashing.

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

8 years agoUnused Structure property tables waste 14MB on Membuster.
akling@apple.com [Tue, 26 Feb 2013 15:32:30 +0000 (15:32 +0000)]
Unused Structure property tables waste 14MB on Membuster.
<http://webkit.org/b/110854>
<rdar://problem/13292104>

Reviewed by Filip Pizlo.

Turn PropertyTable into a GC object and have Structure drop unpinned tables when marking.
14 MB progression on Membuster3.

* CMakeLists.txt:
* GNUmakefile.list.am:
* JavaScriptCore.gypi:
* JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
* JavaScriptCore.vcxproj/JavaScriptCore.vcxproj:
* JavaScriptCore.xcodeproj/project.pbxproj:
* Target.pri:

    Added PropertyTable.cpp.

* runtime/PropertyTable.cpp: Added.
(JSC::PropertyTable::create):
(JSC::PropertyTable::clone):
(JSC::PropertyTable::PropertyTable):
(JSC::PropertyTable::destroy):
(JSC::PropertyTable::~PropertyTable):
(JSC::PropertyTable::visitChildren):

    Moved marking of property table values here from Structure::visitChildren().

* runtime/StructureInlines.h:
(JSC::Structure::putWillGrowOutOfLineStorage):
(JSC::Structure::checkOffsetConsistency):

    Moved these to StructureInlines.h to break header dependency cycle between Structure/PropertyTable.

* runtime/Structure.cpp:
(JSC::Structure::visitChildren):

    Null out m_propertyTable if the table is unpinned. This'll cause the table to get GC'd.

(JSC::Structure::materializePropertyMap):
(JSC::Structure::addPropertyTransition):
(JSC::Structure::changePrototypeTransition):
(JSC::Structure::despecifyFunctionTransition):
(JSC::Structure::attributeChangeTransition):
(JSC::Structure::toDictionaryTransition):
(JSC::Structure::preventExtensionsTransition):
(JSC::Structure::nonPropertyTransition):
(JSC::Structure::copyPropertyTable):
(JSC::Structure::copyPropertyTableForPinning):
(JSC::Structure::putSpecificValue):
(JSC::Structure::createPropertyMap):
* runtime/Structure.h:
(Structure):
* runtime/JSGlobalData.cpp:
(JSC::JSGlobalData::JSGlobalData):
* runtime/JSGlobalData.h:
(JSGlobalData):
* runtime/PropertyMapHashTable.h:
(PropertyTable):
(JSC::PropertyTable::createStructure):
(JSC::PropertyTable::copy):

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

8 years agoUnreviewed, rolling out r144041, r144044, and r144048.
caseq@chromium.org [Tue, 26 Feb 2013 14:22:26 +0000 (14:22 +0000)]
Unreviewed, rolling out r144041, r144044, and r144048.
http://trac.webkit.org/changeset/144041
http://trac.webkit.org/changeset/144044
http://trac.webkit.org/changeset/144048
https://bugs.webkit.org/show_bug.cgi?id=105796

Broke build

Source/WebCore:

* CMakeLists.txt:
* GNUmakefile.list.am:
* Target.pri:
* WebCore.gypi:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
* inspector/InspectorAllInOne.cpp:
* inspector/InspectorClient.h:
* inspector/InspectorInstrumentation.cpp:
(WebCore):
(WebCore::InspectorInstrumentation::willPaintImpl):
* inspector/InspectorInstrumentation.h:
* inspector/InspectorTimelineAgent.cpp:
(TimelineRecordType):
(WebCore::InspectorTimelineAgent::start):
(WebCore::InspectorTimelineAgent::stop):
(WebCore::InspectorTimelineAgent::didBeginFrame):
(WebCore::InspectorTimelineAgent::InspectorTimelineAgent):
* inspector/InspectorTimelineAgent.h:
(WebCore):
(InspectorTimelineAgent):
* inspector/TimelineRecordFactory.cpp:
* inspector/TimelineRecordFactory.h:
* inspector/TimelineTraceEventProcessor.cpp: Removed.
* inspector/TimelineTraceEventProcessor.h: Removed.
* inspector/front-end/TimelineModel.js:
* inspector/front-end/TimelinePresentationModel.js:
(WebInspector.TimelinePresentationModel._initRecordStyles):

Source/WebKit/chromium:

* public/WebDevToolsAgentClient.h:
* src/InspectorClientImpl.cpp:
* src/InspectorClientImpl.h:
(InspectorClientImpl):
* src/WebDevToolsAgentImpl.cpp:
* src/WebDevToolsAgentImpl.h:
(WebDevToolsAgentImpl):

LayoutTests:

* inspector/timeline/timeline-enum-stability-expected.txt:

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

8 years agoWeb Inspector: Migrate IndexedDB support to ResourceTreeModel's SecurityOriginAdded...
vsevik@chromium.org [Tue, 26 Feb 2013 14:20:26 +0000 (14:20 +0000)]
Web Inspector: Migrate IndexedDB support to ResourceTreeModel's SecurityOriginAdded/Removed events.
https://bugs.webkit.org/show_bug.cgi?id=110863

Reviewed by Alexander Pavlov.

Source/WebCore:

Recently added SecurityOriginAdded/Removed events support was essentially duplicated in
IndexedDBModel. This patch migrates IndexedDB support to new events.

* inspector/Inspector.json:
* inspector/InspectorIndexedDBAgent.cpp:
(WebCore):
(WebCore::InspectorIndexedDBAgent::requestDatabaseNames):
(WebCore::InspectorIndexedDBAgent::requestDatabase):
(WebCore::InspectorIndexedDBAgent::requestData):
* inspector/InspectorIndexedDBAgent.h:
(InspectorIndexedDBAgent):
* inspector/front-end/IndexedDBModel.js:
(WebInspector.IndexedDBModel):
(WebInspector.IndexedDBModel.prototype._reset):
(WebInspector.IndexedDBModel.prototype.refreshDatabaseNames):
(WebInspector.IndexedDBModel.prototype._securityOriginAdded):
(WebInspector.IndexedDBModel.prototype._securityOriginRemoved):
(WebInspector.IndexedDBModel.prototype._addOrigin):
(WebInspector.IndexedDBModel.prototype._removeOrigin):
(WebInspector.IndexedDBModel.prototype._updateOriginDatabaseNames):
(WebInspector.IndexedDBModel.prototype._loadDatabaseNames):
(WebInspector.IndexedDBModel.prototype._loadDatabase):
(WebInspector.IndexedDBModel.prototype.):
(WebInspector.IndexedDBModel.prototype._requestData):
* inspector/front-end/ResourceTreeModel.js:
(WebInspector.ResourceTreeModel.prototype.securityOrigins):

LayoutTests:

* http/tests/inspector/indexeddb/database-names-expected.txt:
* http/tests/inspector/indexeddb/database-names.html:

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

8 years agoUnreviewed fix after r144032.
ossy@webkit.org [Tue, 26 Feb 2013 13:57:36 +0000 (13:57 +0000)]
Unreviewed fix after r144032.
https://bugs.webkit.org/show_bug.cgi?id=110734

Update expected files due to JSC/V8 differences.

Patch by Csaba Osztrogon√°c <ossy@webkit.org> on 2013-02-26

* TestExpectations: Skip 2 failing tests until proper fix.
* html5lib/generated/run-template-write.html:
* html5lib/generated/run-tests1-data-expected.txt:
* html5lib/generated/run-tests1-write-expected.txt:
* html5lib/generated/run-tests18-data-expected.txt:
* html5lib/generated/run-tests18-write-expected.txt:
* html5lib/generated/run-tests7-data-expected.txt:
* html5lib/generated/run-tests7-write-expected.txt:
* platform/chromium/html5lib/generated/run-tests1-data-expected.txt: Copied from LayoutTests/html5lib/generated/run-tests1-data-expected.txt.
* platform/chromium/html5lib/generated/run-tests1-write-expected.txt: Copied from LayoutTests/html5lib/generated/run-tests1-write-expected.txt.
* platform/chromium/html5lib/generated/run-tests18-data-expected.txt: Copied from LayoutTests/html5lib/generated/run-tests18-data-expected.txt.
* platform/chromium/html5lib/generated/run-tests18-write-expected.txt: Copied from LayoutTests/html5lib/generated/run-tests18-write-expected.txt.
* platform/chromium/html5lib/generated/run-tests7-data-expected.txt: Copied from LayoutTests/html5lib/generated/run-tests7-data-expected.txt.
* platform/chromium/html5lib/generated/run-tests7-write-expected.txt: Copied from LayoutTests/html5lib/generated/run-tests7-write-expected.txt.

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

8 years agoUnreviewed chromium test expectations update.
vsevik@chromium.org [Tue, 26 Feb 2013 13:51:58 +0000 (13:51 +0000)]
Unreviewed chromium test expectations update.

* platform/chromium/TestExpectations:

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

8 years agoWeb Inspector: in protocol make field "securityOrigin" in type Page.Frame mandatory
apavlov@chromium.org [Tue, 26 Feb 2013 13:51:16 +0000 (13:51 +0000)]
Web Inspector: in protocol make field "securityOrigin" in type Page.Frame mandatory
https://bugs.webkit.org/show_bug.cgi?id=80857

Reviewed by Vsevolod Vlasov.

Frame.securityOrigin has always been set to a valid value, so this change just fixes
the protocol flaw.

* inspector/Inspector.json:
* inspector/InspectorPageAgent.cpp:
(WebCore::InspectorPageAgent::buildObjectForFrame):
* inspector/front-end/ResourceTreeModel.js:
(WebInspector.ResourceTreeFrame):
(WebInspector.ResourceTreeFrame.prototype._navigate):

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

8 years agoUnreviewed build fix following r144041.
caseq@chromium.org [Tue, 26 Feb 2013 13:44:38 +0000 (13:44 +0000)]
Unreviewed build fix following r144041.

* inspector/TimelineTraceEventProcessor.h:
(WebCore::TimelineTraceEventProcessor::TraceEvent::TraceEvent):

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

8 years agoWeb Inspector: DataGrid should reveal and select next/previous DataGridNode upon...
vivek.vg@samsung.com [Tue, 26 Feb 2013 13:43:03 +0000 (13:43 +0000)]
Web Inspector: DataGrid should reveal and select next/previous DataGridNode upon deletion of selected node
https://bugs.webkit.org/show_bug.cgi?id=110862

Reviewed by Alexander Pavlov.

While deleting entries in the DataGrid, deleting of selected node should trigger selection of
next possible (backward/forward) DataGridNode.

* inspector/front-end/DataGrid.js:
(WebInspector.DataGrid.prototype._keyDown):
(WebInspector.DataGridNode.prototype.get leftPadding):
(WebInspector.DataGridNode.prototype.isEventWithinDisclosureTriangle):

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

8 years ago[Chromium] TestExpectations cleanup.
schenney@chromium.org [Tue, 26 Feb 2013 13:42:18 +0000 (13:42 +0000)]
[Chromium] TestExpectations cleanup.

Unreviewed removal of expectations for tests that are now passing.

* platform/chromium/TestExpectations:

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

8 years agoREGRESSION (r143931): set-cookie-on-redirect.html breaks subsequent tests
commit-queue@webkit.org [Tue, 26 Feb 2013 13:37:27 +0000 (13:37 +0000)]
REGRESSION (r143931): set-cookie-on-redirect.html breaks subsequent tests
https://bugs.webkit.org/show_bug.cgi?id=110844

Patch by Sergio Villar Senin <svillar@igalia.com> on 2013-02-26
Reviewed by Alexey Proskuryakov.

Clean up cookies at the beginning and after finishing the test in
order not to break other tests behavior.

* http/tests/cookies/resources/set-cookie-on-redirect.php: clear cookie before returning.
* http/tests/cookies/set-cookie-on-redirect.html: clear all cookies before starting the test.

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

8 years agoSource/WebCore: Web Inspector: show raster tasks on Timeline
caseq@chromium.org [Tue, 26 Feb 2013 13:12:28 +0000 (13:12 +0000)]
Source/WebCore: Web Inspector: show raster tasks on Timeline
https://bugs.webkit.org/show_bug.cgi?id=105851

- add PaintLayer, Paint & RasterTask trace events handling to trace event processor;
- upon begin frame, emit aggregated background event for all raster tasks related to the inspected page.

Reviewed by Pavel Feldman.

* inspector/InspectorInstrumentation.cpp:
(WebCore):
(WebCore::InspectorInstrumentation::willPaintImpl):
(InstrumentationEvents):
(InstrumentationEventArguments):
* inspector/InspectorInstrumentation.h:
(InstrumentationEvents):
(WebCore):
(InstrumentationEventArguments):
* inspector/InspectorTimelineAgent.cpp:
(TimelineRecordType):
(WebCore::InspectorTimelineAgent::stop):
(WebCore::InspectorTimelineAgent::didBeginFrame):
* inspector/InspectorTimelineAgent.h:
(TimelineRecordType):
(WebCore):
* inspector/TimelineRecordFactory.cpp:
(WebCore::TimelineRecordFactory::createRasterData):
(WebCore):
* inspector/TimelineRecordFactory.h:
(TimelineRecordFactory):
* inspector/TimelineTraceEventProcessor.cpp:
(WebCore::TimelineTraceEventProcessor::TimelineTraceEventProcessor):
(WebCore::TimelineTraceEventProcessor::~TimelineTraceEventProcessor):
(WebCore):
(WebCore::TimelineTraceEventProcessor::registerHandler):
(WebCore::TimelineTraceEventProcessor::shutdown):
(WebCore::TimelineTraceEventProcessor::TraceEvent::findParameter):
(WebCore::TimelineTraceEventProcessor::TraceEvent::parameter):
(WebCore::TimelineTraceEventProcessor::processEventOnAnyThread):
(WebCore::TimelineTraceEventProcessor::onBeginFrame):
(WebCore::TimelineTraceEventProcessor::onPaintLayerBegin):
(WebCore::TimelineTraceEventProcessor::onPaintLayerEnd):
(WebCore::TimelineTraceEventProcessor::onRasterTaskBegin):
(WebCore::TimelineTraceEventProcessor::onRasterTaskEnd):
(WebCore::TimelineTraceEventProcessor::onLayerDeleted):
(WebCore::TimelineTraceEventProcessor::onPaint):
(WebCore::TimelineTraceEventProcessor::flushRasterizerStatistics):
(WebCore::TimelineTraceEventProcessor::sendTimelineRecord):
(WebCore::TimelineTraceEventProcessor::processBackgroundEvents):
* inspector/TimelineTraceEventProcessor.h:
(WebCore::TimelineTraceEventProcessor::TraceEvent::TraceEvent):
(WebCore::TimelineTraceEventProcessor::TraceEvent::id):
(WebCore::TimelineTraceEventProcessor::TraceEvent::asBool):
(WebCore::TimelineTraceEventProcessor::TraceEvent::asInt):
(WebCore::TimelineTraceEventProcessor::TraceEvent::asUInt):
(WebCore::TimelineTraceEventProcessor::TraceEvent::asDouble):
(TimelineTraceEventProcessor):
* inspector/front-end/TimelineModel.js:
* inspector/front-end/TimelinePresentationModel.js:
(WebInspector.TimelinePresentationModel._initRecordStyles):

LayoutTests: Web Inspector: show deferred paints on Timeline
https://bugs.webkit.org/show_bug.cgi?id=105851

Reviewed by Pavel Feldman.

* inspector/timeline/timeline-enum-stability-expected.txt: Added "Rasterize" record type.

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

8 years agoImplement JIT on Windows 64 bits
jocelyn.turcotte@digia.com [Tue, 26 Feb 2013 13:04:28 +0000 (13:04 +0000)]
Implement JIT on Windows 64 bits
https://bugs.webkit.org/show_bug.cgi?id=107965

Reviewed by Simon Hausmann.

Source/JavaScriptCore:

1. MSVC doesn't support inline assembly for 64 bits, implements the trampoline in a separate ASM file.

2. Windows 64 bits has a different calling convention than other OSes following the AMD64 ABI.
Differences that we have to handle here:
- Registers passed parameters are RCX, RDX, R8 and R9 instead of RDI, RSI, RDX, RCX, R8 and R9
- RDI and RSI must be preserved by callee
- Only return values <= 8 bytes can be returned by register (RDX can't be used to return a second word)
- There is no red-zone after RIP on the stack, but instead 4 reserved words before it

* Target.pri:
* jit/JITStubs.cpp:
* jit/JITStubs.h:
(JSC):
(JITStackFrame):
(JSC::JITStackFrame::returnAddressSlot):
* jit/JITStubsMSVC64.asm: Added.
* jit/JSInterfaceJIT.h:
(JSInterfaceJIT):
* jit/ThunkGenerators.cpp:
(JSC::nativeForGenerator):
* yarr/YarrJIT.cpp:
(YarrGenerator):
(JSC::Yarr::YarrGenerator::generateEnter):
(JSC::Yarr::YarrGenerator::generateReturn):

Source/WTF:

* wtf/Platform.h:

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

8 years agoWork around a MSVC 2012 Update 1 bug causing a crash on x86
jocelyn.turcotte@digia.com [Tue, 26 Feb 2013 13:01:59 +0000 (13:01 +0000)]
Work around a MSVC 2012 Update 1 bug causing a crash on x86
https://bugs.webkit.org/show_bug.cgi?id=110488

Reviewed by Anders Carlsson.

The crash happens when building with /O2, where TextEncodingNameHash::equal is
incorrectly optimized with the inlined toASCIILower and uses a register already in use.
The function returns false incorrectly, causing a mismatch of text encoding name which
then results in a null pointer access.

Slightly rewording the use of the inline function lets the compiler produce correct code.

The bug has already been reported and should be fixed in the next release of MSVS later this year.
https://connect.microsoft.com/VisualStudio/feedback/details/777533/vs2012-c-optimizing-bug-when-using-inline-and-char-return-type-x86-target-only

* platform/text/TextEncodingRegistry.cpp:

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

8 years agoWeb Inspector: plumb trace events to Timeline agent
caseq@chromium.org [Tue, 26 Feb 2013 12:52:33 +0000 (12:52 +0000)]
Web Inspector: plumb trace events to Timeline agent
https://bugs.webkit.org/show_bug.cgi?id=105796

Reviewed by Pavel Feldman.

Source/WebCore:

- plumb trace events to Timeline;
- add TimelineTraceEventProcessor to process selected trace events;
- emit timeline events from TimelineTraceEventProcessor.

Note that actual event processing logic is a separate change.

* CMakeLists.txt:
* GNUmakefile.list.am:
* Target.pri:
* WebCore.gypi:
* WebCore.vcproj/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
* inspector/Inspector.json:
* inspector/InspectorAllInOne.cpp:
* inspector/InspectorClient.h:
(InspectorClient):
(WebCore::InspectorClient::setTraceEventCallback):
* inspector/InspectorTimelineAgent.cpp:
(WebCore::InspectorTimelineAgent::start):
(WebCore::InspectorTimelineAgent::stop):
(WebCore::InspectorTimelineAgent::InspectorTimelineAgent):
(WebCore::InspectorTimelineAgent::appendBackgroundThreadRecord):
(WebCore):
(WebCore::InspectorTimelineAgent::page):
* inspector/InspectorTimelineAgent.h:
(WebCore):
(InspectorTimelineAgent):
* inspector/TimelineTraceEventProcessor.cpp: Added.
(WebCore::TimelineTraceEventProcessor::TimelineTraceEventProcessor):
(WebCore):
(WebCore::TimelineTraceEventProcessor::~TimelineTraceEventProcessor):
(WebCore::TimelineTraceEventProcessor::TraceEvent::parameter):
(WebCore::TimelineTraceEventProcessor::processEventOnAnyThread):
(WebCore::TimelineTraceEventProcessor::processEvent):
(WebCore::TimelineTraceEventProcessor::sendTimelineRecord):
(WebCore::TimelineTraceEventProcessor::processBackgroundEvents):
* inspector/TimelineTraceEventProcessor.h: Added.
(WebCore):
(TimelineTraceEventProcessor):
(TraceEvent):
(WebCore::TimelineTraceEventProcessor::TraceEvent::TraceEvent):
(WebCore::TimelineTraceEventProcessor::TraceEvent::timestamp):
(WebCore::TimelineTraceEventProcessor::TraceEvent::phase):
(WebCore::TimelineTraceEventProcessor::TraceEvent::name):
(WebCore::TimelineTraceEventProcessor::TraceEvent::threadIdentifier):
(WebCore::TimelineTraceEventProcessor::TraceEvent::argumentCount):
(WebCore::TimelineTraceEventProcessor::TraceEvent::asBool):
(WebCore::TimelineTraceEventProcessor::TraceEvent::asInt):
(WebCore::TimelineTraceEventProcessor::TraceEvent::asUInt):
(WebCore::TimelineTraceEventProcessor::TraceEvent::asDouble):
(WebCore::TimelineTraceEventProcessor::TraceEvent::asString):
(WebCore::TimelineTraceEventProcessor::EventTypeEntry::EventTypeEntry):
(EventTypeEntry):
* inspector/front-end/TimelineFrameController.js:
(WebInspector.TimelineFrameController.prototype._addRecord):
* inspector/front-end/TimelinePanel.js:
(WebInspector.TimelineRecordListRow.prototype.update):
(WebInspector.TimelineRecordGraphRow.prototype.update):
* inspector/front-end/TimelinePresentationModel.js:
(WebInspector.TimelinePresentationModel.Record):
(WebInspector.TimelinePresentationModel.insertRetrospecitveRecord):
(WebInspector.TimelinePresentationModel.Record.prototype.get isBackground):
* inspector/front-end/timelinePanel.css:
(.timeline-tree-item.background .timeline-tree-icon):
(.timeline-graph-side.background .timeline-graph-bar):

Source/WebKit/chromium:

Plumb trace events to Inspector.

* public/WebDevToolsAgentClient.h:
(WebDevToolsAgentClient):
(WebKit::WebDevToolsAgentClient::setTraceEventCallback):
* src/InspectorClientImpl.cpp:
(WebKit::InspectorClientImpl::setTraceEventCallback):
(WebKit):
* src/InspectorClientImpl.h:
(InspectorClientImpl):
* src/WebDevToolsAgentImpl.cpp:
(WebKit::WebDevToolsAgentImpl::setTraceEventCallback):
(WebKit):
* src/WebDevToolsAgentImpl.h:
(WebDevToolsAgentImpl):

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

8 years agonew-commit-bot: Some IRC clients doesn't linkify rollout messages
vivek.vg@samsung.com [Tue, 26 Feb 2013 12:52:32 +0000 (12:52 +0000)]
new-commit-bot: Some IRC clients doesn't linkify rollout messages
https://bugs.webkit.org/show_bug.cgi?id=110861

Reviewed by Ryosuke Niwa.

Adding the space before ':' in order to fix the links shown for the rollout message.

* Scripts/webkitpy/tool/commands/newcommitbot.py:
(NewCommitBot._summarize_commit_log):

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

8 years agoWeb Inspector: display background events on Timeline
caseq@chromium.org [Tue, 26 Feb 2013 12:42:58 +0000 (12:42 +0000)]
Web Inspector: display background events on Timeline
https://bugs.webkit.org/show_bug.cgi?id=108599

Reviewed by Pavel Feldman.

- add optional `thread' field to timeline event;
- if thread field is present, display the event as 'background' (hollow bar / list icon), align to nearest foreground event;
- do not account background events in Frame mode of overview.

* inspector/Inspector.json:
* inspector/InspectorTimelineAgent.cpp:
(WebCore::InspectorTimelineAgent::appendBackgroundThreadRecord):
(WebCore):
* inspector/InspectorTimelineAgent.h:
(InspectorTimelineAgent):
* inspector/front-end/TimelineFrameController.js:
(WebInspector.TimelineFrameController.prototype._addRecord):
* inspector/front-end/TimelinePanel.js:
(WebInspector.TimelineRecordListRow.prototype.update):
(WebInspector.TimelineRecordGraphRow.prototype.update):
* inspector/front-end/TimelinePresentationModel.js:
(WebInspector.TimelinePresentationModel.Record):
(WebInspector.TimelinePresentationModel.insertRetrospecitveRecord):
(WebInspector.TimelinePresentationModel.Record.prototype.get isBackground):
* inspector/front-end/timelinePanel.css:
(.timeline-tree-item.background .timeline-tree-icon):
(.timeline-graph-side.background .timeline-graph-bar):

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

8 years ago[V8] Rename BatchedCallback to BatchedMethod
haraken@chromium.org [Tue, 26 Feb 2013 12:33:03 +0000 (12:33 +0000)]
[V8] Rename BatchedCallback to BatchedMethod
https://bugs.webkit.org/show_bug.cgi?id=110791

Reviewed by Adam Barth.

Now 'Callback' is used to refer to functions that are called back
by V8. DOM methods should be referred to as 'Method's.

No tests. No change in behavior.

* bindings/scripts/CodeGeneratorV8.pm:
(GenerateImplementation):
* bindings/scripts/test/V8/V8Float64Array.cpp:
(WebCore):
(WebCore::ConfigureV8Float64ArrayTemplate):
* bindings/scripts/test/V8/V8TestCustomNamedGetter.cpp:
(WebCore):
(WebCore::ConfigureV8TestCustomNamedGetterTemplate):
* bindings/scripts/test/V8/V8TestEventTarget.cpp:
(WebCore):
(WebCore::ConfigureV8TestEventTargetTemplate):
* bindings/scripts/test/V8/V8TestInterface.cpp:
(WebCore):
(WebCore::ConfigureV8TestInterfaceTemplate):
* bindings/scripts/test/V8/V8TestMediaQueryListListener.cpp:
(WebCore):
(WebCore::ConfigureV8TestMediaQueryListListenerTemplate):
* bindings/scripts/test/V8/V8TestObj.cpp:
(WebCore):
(WebCore::ConfigureV8TestObjTemplate):
* bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.cpp:
(WebCore):
(WebCore::ConfigureV8TestSerializedScriptValueInterfaceTemplate):
* bindings/scripts/test/V8/V8TestTypedefs.cpp:
(WebCore):
(WebCore::ConfigureV8TestTypedefsTemplate):
* bindings/v8/V8DOMConfiguration.cpp:
(WebCore::V8DOMConfiguration::batchConfigureCallbacks):
(WebCore::V8DOMConfiguration::configureTemplate):
* bindings/v8/V8DOMConfiguration.h:
(V8DOMConfiguration):

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

8 years agoAdd User-Agent header in opening handshake headers.
toyoshim@chromium.org [Tue, 26 Feb 2013 12:01:24 +0000 (12:01 +0000)]
Add User-Agent header in opening handshake headers.
https://bugs.webkit.org/show_bug.cgi?id=110601

Reviewed by Alexey Proskuryakov.

RFC-6455 doesn't require to send User-Agent header, but allow it.
Many web application developers want to have it, and Firefox already
did it. This patch adds User-Agent header in opening handshake also in
WebKit ports.

Test: http/tests/websocket/tests/hybi/useragent-in-openinghandshake.html

Source/WebCore:

* Modules/websockets/WebSocketHandshake.cpp:
(WebCore::WebSocketHandshake::clientHandshakeMessage):
(WebCore::WebSocketHandshake::clientHandshakeRequest):

LayoutTests:

* http/tests/websocket/tests/hybi/sendback_ua_wsh.py: Added.
(web_socket_do_extra_handshake):
(web_socket_transfer_data):
* http/tests/websocket/tests/hybi/useragent-in-openinghandshake-expected.txt: Added.
* http/tests/websocket/tests/hybi/useragent-in-openinghandshake.html: Added.

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

8 years agoXSSAuditor: Don't rely on implicit casting when copying the document's KURL to String.
mkwst@chromium.org [Tue, 26 Feb 2013 11:41:23 +0000 (11:41 +0000)]
XSSAuditor: Don't rely on implicit casting when copying the document's KURL to String.
https://bugs.webkit.org/show_bug.cgi?id=110859

Reviewed by Jochen Eisinger.

XSSAuditor::init should explicitly make a thread-safe copy of the
document's URL as a String rather than relying on implicit casting from
a copy of the KURL.

This shouldn't change any visible behavior; all existing XSSAuditor
tests should continue to pass. They'll now just be a bit more smug while
doing so.

* html/parser/XSSAuditor.cpp:
(WebCore::XSSAuditor::init):

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

8 years agoUnreviewed GTK gardening.
zandobersek@gmail.com [Tue, 26 Feb 2013 11:31:02 +0000 (11:31 +0000)]
Unreviewed GTK gardening.

* platform/gtk/TestExpectations: Updating expectations for two inspector tests.
Expanding expectation for media/encrypted-media/encrypted-media-syntax.html to expect timeouts as well.
Adding a flaky failure expectation for svg/custom/animation-currentColor.svg.

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

8 years ago[chromium] add content shell specific TestExpectations
jochen@chromium.org [Tue, 26 Feb 2013 11:22:45 +0000 (11:22 +0000)]
[chromium] add content shell specific TestExpectations
https://bugs.webkit.org/show_bug.cgi?id=110710

Reviewed by Eric Seidel.

For now, add tests that pass on content shell but fail on DRT.
Next, I will file bugs for all the remaining failing tests and skip
them here to ease the transition from DRT.

* platform/chromium/ContentShellTestExpectations: Added.

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

8 years ago[Qt] Unreviewed gardening.
zarvai@inf.u-szeged.hu [Tue, 26 Feb 2013 11:09:16 +0000 (11:09 +0000)]
[Qt] Unreviewed gardening.

* platform/qt-5.0-wk1/http/tests/navigation/forward-and-cancel-expected.txt: Renamed from LayoutTests/platform/qt/http/tests/navigation/forward-and-cancel-expected.txt.
* platform/qt-5.0-wk1/http/tests/navigation/postredirect-frames-expected.txt: Renamed from LayoutTests/platform/qt/http/tests/navigation/postredirect-frames-expected.txt.
* platform/qt-5.0-wk1/http/tests/navigation/postredirect-goback2-expected.txt: Renamed from LayoutTests/platform/qt/http/tests/navigation/postredirect-goback2-expected.txt.

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

8 years agoLayout Test Multiple html5lib/ tests are too slow and should be split.
eric@webkit.org [Tue, 26 Feb 2013 11:05:17 +0000 (11:05 +0000)]
Layout Test Multiple html5lib/ tests are too slow and should be split.
https://bugs.webkit.org/show_bug.cgi?id=110734

Reviewed by Adam Barth.

Split all of the html5lib tests into write and data variants
instead of running both in sequence in each test.
I added a script to autogenerate all of the test harness files
from the *.dat files in resources/ (which we sync with the
upstream html5lib tests.

I removed all the old tests and expectations as well as TestExpectation entries.
All of these tests should now be fast enough to avoid timeout on all platforms.
I set the expectations from my chromium-linux (v8) machine, thus someone
from a jsc port will need to rebaseline appropriately from their machine.

* TestExpectations:
* html5lib/generate-test-wrappers.py: Added.
(WrapperGenerator):
(_files_in_directory_with_suffix):
(_last_path_component_removing_suffix):
(_remove_harness_prefix):
(_remove_harness_type):
(_test_name_from_harness_name):
(_remove_stale_tests):
(_input_path):
(_harness_path):
(_harness_content):
(_write_harness):
(main):
* html5lib/generated/run-adoption01-data-expected.txt: Added.
* html5lib/generated/run-adoption01-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-adoption01-write-expected.txt: Added.
* html5lib/generated/run-adoption01-write.html: Renamed from LayoutTests/html5lib/generated/run-template.html.
* html5lib/generated/run-adoption02-data-expected.txt: Added.
* html5lib/generated/run-adoption02-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-adoption02-write-expected.txt: Added.
* html5lib/generated/run-adoption02-write.html: Renamed from LayoutTests/html5lib/generated/run-tests11.html.
* html5lib/generated/run-comments01-data-expected.txt: Added.
* html5lib/generated/run-comments01-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-comments01-write-expected.txt: Added.
* html5lib/generated/run-comments01-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-doctype01-data-expected.txt: Added.
* html5lib/generated/run-doctype01-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-doctype01-write-expected.txt: Added.
* html5lib/generated/run-doctype01-write.html: Renamed from LayoutTests/html5lib/generated/run-tests10.html.
* html5lib/generated/run-domjs-unsafe-data-expected.txt: Added.
* html5lib/generated/run-domjs-unsafe-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-domjs-unsafe-write-expected.txt: Added.
* html5lib/generated/run-domjs-unsafe-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-entities01-data-expected.txt: Added.
* html5lib/generated/run-entities01-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-entities01-write-expected.txt: Added.
* html5lib/generated/run-entities01-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-entities02-data-expected.txt: Added.
* html5lib/generated/run-entities02-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-entities02-write-expected.txt: Added.
* html5lib/generated/run-entities02-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-html5test-com-data-expected.txt: Added.
* html5lib/generated/run-html5test-com-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-html5test-com-write-expected.txt: Added.
* html5lib/generated/run-html5test-com-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-inbody01-data-expected.txt: Added.
* html5lib/generated/run-inbody01-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-inbody01-write-expected.txt: Added.
* html5lib/generated/run-inbody01-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-isindex-data-expected.txt: Added.
* html5lib/generated/run-isindex-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-isindex-write-expected.txt: Added.
* html5lib/generated/run-isindex-write.html: Renamed from LayoutTests/html5lib/generated/run-tests2.html.
* html5lib/generated/run-pending-spec-changes-data-expected.txt: Added.
* html5lib/generated/run-pending-spec-changes-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-pending-spec-changes-plain-text-unsafe-data-expected.txt: Added.
* html5lib/generated/run-pending-spec-changes-plain-text-unsafe-data.html: Added.
* html5lib/generated/run-pending-spec-changes-plain-text-unsafe-write-expected.txt: Added.
* html5lib/generated/run-pending-spec-changes-plain-text-unsafe-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-pending-spec-changes-write-expected.txt: Added.
* html5lib/generated/run-pending-spec-changes-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-plain-text-unsafe-data-expected.txt: Added.
* html5lib/generated/run-plain-text-unsafe-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-plain-text-unsafe-write-expected.txt: Added.
* html5lib/generated/run-plain-text-unsafe-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-scriptdata01-data-expected.txt: Added.
* html5lib/generated/run-scriptdata01-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-scriptdata01-write-expected.txt: Added.
* html5lib/generated/run-scriptdata01-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tables01-data-expected.txt: Added.
* html5lib/generated/run-tables01-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tables01-write-expected.txt: Added.
* html5lib/generated/run-tables01-write.html: Renamed from LayoutTests/html5lib/generated/run-tests22.html.
* html5lib/generated/run-template-data-expected.txt: Added.
* html5lib/generated/run-template-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-template-expected.txt: Removed.
* html5lib/generated/run-template-write-expected.txt: Added.
* html5lib/generated/run-template-write.html: Renamed from LayoutTests/html5lib/generated/run-tests3.html.
* html5lib/generated/run-tests1-data-expected.txt: Added.
* html5lib/generated/run-tests1-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests1-expected.txt: Removed.
* html5lib/generated/run-tests1-write-expected.txt: Added.
* html5lib/generated/run-tests1-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests10-data-expected.txt: Added.
* html5lib/generated/run-tests10-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests10-expected.txt: Removed.
* html5lib/generated/run-tests10-write-expected.txt: Added.
* html5lib/generated/run-tests10-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests11-data-expected.txt: Added.
* html5lib/generated/run-tests11-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests11-expected.txt: Removed.
* html5lib/generated/run-tests11-write-expected.txt: Added.
* html5lib/generated/run-tests11-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests12-data-expected.txt: Added.
* html5lib/generated/run-tests12-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests12-expected.txt: Removed.
* html5lib/generated/run-tests12-write-expected.txt: Added.
* html5lib/generated/run-tests12-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests12.html: Removed.
* html5lib/generated/run-tests14-data-expected.txt: Added.
* html5lib/generated/run-tests14-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests14-expected.txt: Removed.
* html5lib/generated/run-tests14-write-expected.txt: Added.
* html5lib/generated/run-tests14-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests14.html: Removed.
* html5lib/generated/run-tests15-data-expected.txt: Added.
* html5lib/generated/run-tests15-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests15-expected.txt: Removed.
* html5lib/generated/run-tests15-write-expected.txt: Added.
* html5lib/generated/run-tests15-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests15.html: Removed.
* html5lib/generated/run-tests16-data-expected.txt: Added.
* html5lib/generated/run-tests16-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests16-expected.txt: Removed.
* html5lib/generated/run-tests16-write-expected.txt: Added.
* html5lib/generated/run-tests16-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests16.html: Removed.
* html5lib/generated/run-tests17-data-expected.txt: Added.
* html5lib/generated/run-tests17-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests17-expected.txt: Removed.
* html5lib/generated/run-tests17-write-expected.txt: Added.
* html5lib/generated/run-tests17-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests17.html: Removed.
* html5lib/generated/run-tests18-data-expected.txt: Added.
* html5lib/generated/run-tests18-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests18-expected.txt: Removed.
* html5lib/generated/run-tests18-write-expected.txt: Added.
* html5lib/generated/run-tests18-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests18.html: Removed.
* html5lib/generated/run-tests19-data-expected.txt: Added.
* html5lib/generated/run-tests19-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests19-expected.txt: Removed.
* html5lib/generated/run-tests19-write-expected.txt: Added.
* html5lib/generated/run-tests19-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests19.html: Removed.
* html5lib/generated/run-tests2-data-expected.txt: Added.
* html5lib/generated/run-tests2-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests2-expected.txt: Removed.
* html5lib/generated/run-tests2-write-expected.txt: Added.
* html5lib/generated/run-tests2-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests20-data-expected.txt: Added.
* html5lib/generated/run-tests20-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests20-expected.txt: Removed.
* html5lib/generated/run-tests20-write-expected.txt: Added.
* html5lib/generated/run-tests20-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests20.html: Removed.
* html5lib/generated/run-tests21-data-expected.txt: Added.
* html5lib/generated/run-tests21-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests21-expected.txt: Removed.
* html5lib/generated/run-tests21-write-expected.txt: Added.
* html5lib/generated/run-tests21-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests21.html: Removed.
* html5lib/generated/run-tests22-data-expected.txt: Added.
* html5lib/generated/run-tests22-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests22-expected.txt: Removed.
* html5lib/generated/run-tests22-write-expected.txt: Added.
* html5lib/generated/run-tests22-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests23-data-expected.txt: Added.
* html5lib/generated/run-tests23-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests23-expected.txt: Removed.
* html5lib/generated/run-tests23-write-expected.txt: Added.
* html5lib/generated/run-tests23-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests23.html: Removed.
* html5lib/generated/run-tests24-data-expected.txt: Added.
* html5lib/generated/run-tests24-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests24-expected.txt: Removed.
* html5lib/generated/run-tests24-write-expected.txt: Added.
* html5lib/generated/run-tests24-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests24.html: Removed.
* html5lib/generated/run-tests25-data-expected.txt: Added.
* html5lib/generated/run-tests25-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests25-expected.txt: Removed.
* html5lib/generated/run-tests25-write-expected.txt: Added.
* html5lib/generated/run-tests25-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests25.html: Removed.
* html5lib/generated/run-tests26-data-expected.txt: Added.
* html5lib/generated/run-tests26-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests26-expected.txt: Removed.
* html5lib/generated/run-tests26-write-expected.txt: Added.
* html5lib/generated/run-tests26-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests26.html: Removed.
* html5lib/generated/run-tests3-data-expected.txt: Added.
* html5lib/generated/run-tests3-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests3-expected.txt: Removed.
* html5lib/generated/run-tests3-write-expected.txt: Added.
* html5lib/generated/run-tests3-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests4-data-expected.txt: Added.
* html5lib/generated/run-tests4-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests4-expected.txt: Removed.
* html5lib/generated/run-tests4-write-expected.txt: Added.
* html5lib/generated/run-tests4-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests4.html: Removed.
* html5lib/generated/run-tests5-data-expected.txt: Added.
* html5lib/generated/run-tests5-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests5-expected.txt: Removed.
* html5lib/generated/run-tests5-write-expected.txt: Added.
* html5lib/generated/run-tests5-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests5.html: Removed.
* html5lib/generated/run-tests6-data-expected.txt: Added.
* html5lib/generated/run-tests6-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests6-expected.txt: Removed.
* html5lib/generated/run-tests6-write-expected.txt: Added.
* html5lib/generated/run-tests6-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests6.html: Removed.
* html5lib/generated/run-tests7-data-expected.txt: Added.
* html5lib/generated/run-tests7-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests7-expected.txt: Removed.
* html5lib/generated/run-tests7-write-expected.txt: Added.
* html5lib/generated/run-tests7-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests7.html: Removed.
* html5lib/generated/run-tests8-data-expected.txt: Added.
* html5lib/generated/run-tests8-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests8-expected.txt: Removed.
* html5lib/generated/run-tests8-write-expected.txt: Added.
* html5lib/generated/run-tests8-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests8.html: Removed.
* html5lib/generated/run-tests9-data-expected.txt: Added.
* html5lib/generated/run-tests9-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests9-expected.txt: Removed.
* html5lib/generated/run-tests9-write-expected.txt: Added.
* html5lib/generated/run-tests9-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests9.html: Removed.
* html5lib/generated/run-tests_innerHTML_1-data-expected.txt: Added.
* html5lib/generated/run-tests_innerHTML_1-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tests_innerHTML_1-write-expected.txt: Added.
* html5lib/generated/run-tests_innerHTML_1-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tricky01-data-expected.txt: Added.
* html5lib/generated/run-tricky01-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-tricky01-write-expected.txt: Added.
* html5lib/generated/run-tricky01-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-webkit01-data-expected.txt: Added.
* html5lib/generated/run-webkit01-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-webkit01-write-expected.txt: Added.
* html5lib/generated/run-webkit01-write.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-webkit02-data-expected.txt: Added.
* html5lib/generated/run-webkit02-data.html: Copied from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/generated/run-webkit02-write-expected.txt: Added.
* html5lib/generated/run-webkit02-write.html: Renamed from LayoutTests/html5lib/generated/run-tests1.html.
* html5lib/resources/runner.js:
(window.onload):
* html5lib/runner-expected.txt: Removed.
* html5lib/runner.html: Removed.
* platform/chromium/TestExpectations:
* platform/chromium/html5lib/generated/run-tests1-expected.txt: Removed.
* platform/chromium/html5lib/generated/run-tests18-expected.txt: Removed.
* platform/chromium/html5lib/generated/run-tests7-expected.txt: Removed.

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

8 years agoShadow DOM styles appear to be over-eagerly shared
tasak@google.com [Tue, 26 Feb 2013 10:51:58 +0000 (10:51 +0000)]
Shadow DOM styles appear to be over-eagerly shared
https://bugs.webkit.org/show_bug.cgi?id=110797

Reviewed by Dimitri Glazkov.

Source/WebCore:

A style of a distributed node should not be shared, because the node
might be affected by styles in a shadow dom tree, i.e. :distributed
or something.

Test: fast/dom/shadow/no-style-sharing-with-distributed-nodes.html

* css/StyleResolver.cpp:
(WebCore::StyleResolver::locateCousinList):
Skip shadow hosts, because children of shadow hosts are distributed
nodes and cannot share their styles.

LayoutTests:

* fast/dom/shadow/no-style-sharing-with-distributed-nodes-expected.html: Added.
* fast/dom/shadow/no-style-sharing-with-distributed-nodes.html: Added.

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