[BlackBerry] Fix history navigation for error pages.
https://bugs.webkit.org/show_bug.cgi?id=96410

Reviewed by Rob Buis.

Fix how history navigation handles restoring view state when navigating between error pages.

* WebCoreSupport/FrameLoaderClientBlackBerry.cpp:
(WebCore::FrameLoaderClientBlackBerry::FrameLoaderClientBlackBerry):
(WebCore::FrameLoaderClientBlackBerry::saveViewStateToItem):
(WebCore::FrameLoaderClientBlackBerry::restoreViewState):
* WebCoreSupport/FrameLoaderClientBlackBerry.h:
(FrameLoaderClientBlackBerry):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@128211 268f45cc-cd09-0410-ab3c-d52691b4dbfc
IndexedDB: Optimize key decode and comparison operations
https://bugs.webkit.org/show_bug.cgi?id=96037

Reviewed by Tony Chang.

Eliminate memory allocations in code identified as CPU bottlenecks in IDB profiling.

No new tests - just performance work.

* Modules/indexeddb/IDBLevelDBCoding.cpp:
(WebCore::IDBLevelDBCoding::extractEncodedIDBKey): Avoid incremental allocations.
(WebCore::IDBLevelDBCoding::compareEncodedIDBKeys): Rename confusing variables p and q.
(IDBLevelDBCoding):
(WebCore::IDBLevelDBCoding::compare): Rename from decodeAndCompare, and add specializations
for frequently encountered types (e.g. object/index data) that can be compared without a
full decode.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@128212 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Garden-o-matic should ignore a wider variety of warnings in buildbot json
https://bugs.webkit.org/show_bug.cgi?id=96411

Reviewed by Adam Barth.

Previously only the exact string "warning" was treated as a warning
result. This patch treats any string with "warning" as a substring
as a warning (e.g., "warnings", as seen on the cr-win buildbots).

* BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/builders.js:
(.):
* BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/builders_unittests.js:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@128213 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed chromium gardening.

Mark compositing/overflow/overflow-scaled-descendant-overflapping as
failing on cr-mac after r127789 and remove bad rebaselines.

* platform/chromium-mac-snowleopard/compositing/overflow/overflow-scaled-descendant-overlapping-expected.png: Removed.
* platform/chromium-mac/compositing/overflow/overflow-scaled-descendant-overlapping-expected.png: Removed.
* platform/chromium/TestExpectations:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@128214 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Refactor computePercentageLogicalHeight to simplify the logic a bit
https://bugs.webkit.org/show_bug.cgi?id=96329

Reviewed by Tony Chang.

This makes it clear that the value we're computing as we go is the availableHeight.

* rendering/RenderBox.cpp:
(WebCore::RenderBox::computePercentageLogicalHeight):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@128215 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed chromium gardening.

Remove bogus rebaseline added in r128105, and remove "flaky"
expectation (since tests seems non-flaky).

* platform/chromium-win-xp/fast/hidpi/gradient-with-scaled-ancestor-expected.png: Removed.
* platform/chromium/TestExpectations:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@128216 268f45cc-cd09-0410-ab3c-d52691b4dbfc
IndexedDB: IDBObjectStore.count() is slow
https://bugs.webkit.org/show_bug.cgi?id=96033

Reviewed by Tony Chang.

Avoid decoding record values when performing count() iteration, and factor out common code
used for initializing object store and index cursors. Also, remove unused indexDataId()
methods (which date back to the SQLite backing store), and rename some p's and q's.

No new tests - no functional changes. Covered by existing test:
    LayoutTests/storage/indexeddb/objectstore-count.html

* Modules/indexeddb/IDBBackingStore.h: Expose new (internal) ObjectStoreKeyCursor
(IDBBackingStore):
* Modules/indexeddb/IDBLevelDBBackingStore.cpp:
(WebCore): Factor out common CursorOptions initialization code. The objectStoreCursorOptions()
function is needed for this patch. The indexCursorOptions() function is not, but eliminates
duplicated code and is a nearly identical refactor.
(WebCore::IDBLevelDBBackingStore::openObjectStoreCursor): Refactor.
(WebCore::IDBLevelDBBackingStore::openObjectStoreKeyCursor): Implement.
(WebCore::IDBLevelDBBackingStore::openIndexKeyCursor): Refactor.
(WebCore::IDBLevelDBBackingStore::openIndexCursor): Ditto.
* Modules/indexeddb/IDBLevelDBBackingStore.h:
(IDBLevelDBBackingStore):
* Modules/indexeddb/IDBObjectStoreBackendImpl.cpp:
(WebCore::IDBObjectStoreBackendImpl::countInternal): Use ObjectStoreKeyCursor for iteration.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@128217 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed.  Rolled DEPS.

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

* DEPS:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@128218 268f45cc-cd09-0410-ab3c-d52691b4dbfc
LLInt should optimize and profile array length accesses
https://bugs.webkit.org/show_bug.cgi?id=96417

Reviewed by Oliver Hunt.

This fixes the following hole in our array profiling strategy, where the array
is large (more than 1000 elements):
        
for (var i = 0; i < array.length; ++i) ...
        
The peeled use of array.length (in the array prologue) will execute only once
before DFG optimization kicks in from the loop's OSR point. Since it executed
only once, it executed in the LLInt. And prior to this patch, the LLInt did
not profile array.length accesses - so the DFG will assume, based on the lack
of profiling, that the access is in fact not an access to the JSArray length
property. That could then impede our ability to hoist the array structure
check, and may make us pessimistic in other ways as well, since the generic
GetById used for the array length access will be viewed as a side-effecting
operation.

* bytecode/CodeBlock.cpp:
(JSC::CodeBlock::printGetByIdCacheStatus):
(JSC::CodeBlock::finalizeUnconditionally):
* bytecode/GetByIdStatus.cpp:
(JSC::GetByIdStatus::computeFromLLInt):
* dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::parseBlock):
* dfg/DFGCapabilities.h:
(JSC::DFG::canCompileOpcode):
* dfg/DFGFixupPhase.cpp:
(JSC::DFG::FixupPhase::fixupNode):
* jit/JIT.cpp:
(JSC::JIT::privateCompileMainPass):
(JSC::JIT::privateCompileSlowCases):
* llint/LLIntSlowPaths.cpp:
(JSC::LLInt::LLINT_SLOW_PATH_DECL):
* llint/LowLevelInterpreter.asm:
* llint/LowLevelInterpreter32_64.asm:
* llint/LowLevelInterpreter64.asm:



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@128219 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed, rolling out r128212.
http://trac.webkit.org/changeset/128212
https://bugs.webkit.org/show_bug.cgi?id=96037

Assertion fails on linux 64

* Modules/indexeddb/IDBLevelDBCoding.cpp:
(WebCore::IDBLevelDBCoding::extractEncodedIDBKey):
(WebCore::IDBLevelDBCoding::compareEncodedIDBKeys):
(IDBLevelDBCoding):
(WebCore::IDBLevelDBCoding::compare):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@128220 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed, manually rolling out r128175.
The patch is causing crashes in debug builds.
http://trac.webkit.org/changeset/128175
https://bugs.webkit.org/show_bug.cgi?id=96284

Source/WebCore: 

* platform/network/soup/ResourceResponseSoup.cpp:
(WebCore::ResourceResponse::updateFromSoupMessage):

LayoutTests: 

* http/tests/misc/non-utf8-header-name-expected.txt: Removed.
* http/tests/misc/non-utf8-header-name.php: Removed.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@128221 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Crash on a long press gesture when touch adjustment is enabled.
https://bugs.webkit.org/show_bug.cgi?id=96313

Patch by Kevin Ellis <kevers@chromium.org> on 2012-09-11
Reviewed by Antonio Gomes.

Source/WebCore:

Fix to ensure that a long-press on a shadow-DOM element does not
trigger a crash in TouchAdjustment::providesContextMenuItems.
Prior to the patch, a null-pointer exception was trigger because
of a null renderer in the check.

Test: touchadjustment/context-menu-shadow-node.html

* page/TouchAdjustment.cpp:
(WebCore::TouchAdjustment::providesContextMenuItems):

LayoutTests:

Add test to ensure that a long-press on a shadow DOM element does
not trigger a crash when determining if an element provides a context
menu.

* touchadjustment/context-menu-shadow-node-expected.txt: Added.
* touchadjustment/context-menu-shadow-node.html: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@128222 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Source/WebCore: [skia] Switch FEComponentTransfer filter to use skia's SkColorFilter
https://bugs.webkit.org/show_bug.cgi?id=95238

Reviewed by Dirk Schulze.

Covered by existing tests in svg/, such as svg/custom/feComponentTransfer-Discrete.svg.

* WebCore.gypi:
* platform/graphics/filters/FEComponentTransfer.cpp:
(WebCore::FEComponentTransfer::platformApplySoftware):
Add a check for the skia implementation.
(WebCore::FEComponentTransfer::getValues):
* platform/graphics/filters/FEComponentTransfer.h:
Factor out the retrieval of LUT values into its own function, so we
can call it from the Skia implementation.
* platform/graphics/filters/skia/FEComponentTransferSkia.cpp: Added.
(WebCore::FEComponentTransfer::platformApplySkia):

LayoutTests: [chromium] Mark some tests as needing a rebaseline due to SVG filters change.
https://bugs.webkit.org/show_bug.cgi?id=95238

Reviewed by Dirk Schulze.

* platform/chromium/TestExpectations:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@128223 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[chromium] don't include content shell builders in the garden-o-matic view
https://bugs.webkit.org/show_bug.cgi?id=96418

Reviewed by James Robinson.

* BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/config.js:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@128224 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Clean up functions in RenderLayerBacking.h/.cpp
https://bugs.webkit.org/show_bug.cgi?id=96370

Patch by Rik Cabanier <cabanier@adobe.com> on 2012-09-11
Reviewed by Simon Fraser.

Remove 'layer' from function names in RenderLayerBacking

No new test. No change in functionality.

* rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::createPrimaryGraphicsLayer):
(WebCore::RenderLayerBacking::updateOpacity):
(WebCore::RenderLayerBacking::updateTransform):
(WebCore::RenderLayerBacking::updateFilters):
(WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
(WebCore::RenderLayerBacking::startTransition):
* rendering/RenderLayerBacking.h:
(RenderLayerBacking):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@128225 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[BlackBerry] make pickers/dialogs use appendLiteral
https://bugs.webkit.org/show_bug.cgi?id=96424

Reviewed by Antonio Gomes.

PR 204032

Other pickers were updated in r128204.

* WebCoreSupport/ColorPickerClient.cpp:
(WebCore::ColorPickerClient::generateHTML):
* WebCoreSupport/PagePopupBlackBerry.cpp:
(WebCore::PagePopupBlackBerry::generateHTML):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@128226 268f45cc-cd09-0410-ab3c-d52691b4dbfc
AX: title attribute is not exposed as the AXDescription on AXImage when there is no other fallback content
https://bugs.webkit.org/show_bug.cgi?id=96412

Reviewed by Jon Honeycutt.

Source/WebCore: 

Ensure that if an image has a title attribute, but no alt attribute, it will fallback to use the title attribute 
for the descriptive text.

Test: accessibility/img-fallsback-to-title.html

* accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::accessibilityDescription):

LayoutTests: 

* accessibility/img-fallsback-to-title.html: Added.
* platform/mac/accessibility/img-fallsback-to-title-expected.txt: Added.



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@128227 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Remove StyleResolver::setStyle, because it's no longer used.
https://bugs.webkit.org/show_bug.cgi?id=96423

Reviewed by Eric Seidel.

No new tests, simple refactoring.

* css/StyleResolver.h: Removed unused function.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@128228 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed gardening. Update some expectations to reference specific bugs.

* platform/chromium/TestExpectations:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@128229 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[BlackBerry] add a way to overscroll non-overflown content
https://bugs.webkit.org/show_bug.cgi?id=96331
PR #195305

Patch by Antonio Gomes <agomes@rim.com> on 2012-09-11
Reviewed by Yong Li.

Check -webkit-overflow-scrolling value for '-blackberry-touch' instead
of checking a custom HTML5 attribute.

No behavioural change. Mostly a rework of r128142.

* Api/InRegionScroller.cpp:
(BlackBerry::WebKit::canScrollRenderBox):

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