Add windows native versions of bison, flex and gperf.

Patch by Scott Graham <scottmg@chromium.org> on 2012-07-20
Reviewed by Tony Chang.

* DEPS:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@123274 268f45cc-cd09-0410-ab3c-d52691b4dbfc
IndexedDB: "ASSERTION FAILED: !m_requestFinished" hit in IDBRequest::dispatchEvent
https://bugs.webkit.org/show_bug.cgi?id=86911

Reviewed by Tony Chang.

Source/WebCore:

Clean up the IDBRequest/IDBCursor relationship and the IDBRequest lifecycle.

The IDBRequest's m_cursor/setCursor() calls are renamed to m_pendingCursor/setPendingCursor() to
clarify that the request will move between two states - either there's a cursor request in-flight
c/o a continue() or advance() call, or the result has come in (cursor, null-for-done, or error).
Since they were only ever used together, resetReadyState() is merged into setResultCursor(). The
m_requestFinished flag becomes redundant and is dropped - the ASSERT reported in the bug
becomes an ASSERT(m_readyState == PENDING) and m_readyState tracking is already correct.

Test: storage/indexeddb/request-continue-abort.html

* Modules/indexeddb/IDBCursor.cpp:
(WebCore::IDBCursor::advance): Unreachable code path now dead and gone.
(WebCore::IDBCursor::continueFunction): Ditto.
* Modules/indexeddb/IDBRequest.cpp: Most functions just add state assertions.
(WebCore::IDBRequest::IDBRequest):
(WebCore::IDBRequest::abort):
(WebCore::IDBRequest::setCursorDetails):
(WebCore::IDBRequest::setPendingCursor): Merge with old resetReadyState().
(WebCore):
(WebCore::IDBRequest::getResultCursor): Helper, since digging cursor out of IDBAny is pesky.
(WebCore::IDBRequest::setResultCursor): Just moved in the file to be with its friends.
(WebCore::IDBRequest::finishCursor):
(WebCore::IDBRequest::onError): Just assertions, re-ordering, re-naming.
(WebCore::IDBRequest::onSuccess):
(WebCore::IDBRequest::onSuccessWithContinuation):
(WebCore::IDBRequest::hasPendingActivity):
(WebCore::IDBRequest::dispatchEvent): Simplify!
(WebCore::IDBRequest::enqueueEvent):
* Modules/indexeddb/IDBRequest.h:
(IDBRequest):

LayoutTests:

Added regression test based on repro steps in the bug.

* storage/indexeddb/request-continue-abort-expected.txt: Added.
* storage/indexeddb/request-continue-abort.html: Added.
* storage/indexeddb/resources/request-continue-abort.js: Added.
(test.request.onsuccess.request.onsuccess.request.onsuccess):
(test.request.onsuccess.request.onsuccess):
(test.request.onsuccess):
(test):
(onUpgrade):
(testCursor.request.onsuccess):
(testCursor.request.onerror):
(testCursor.transaction.onabort):
(testCursor):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@123275 268f45cc-cd09-0410-ab3c-d52691b4dbfc
IndexedDB: Simplify backend interface classes
https://bugs.webkit.org/show_bug.cgi?id=91901

Reviewed by Tony Chang.

Source/WebCore:

The IDBTransactionBackendInterface included several methods only used by the
real implementation objects, not via the interfaces. Expose a static Impl::from(Interface)
method for transaction, and migrate all of the backend-internal uses from Interface to Impl.

No new tests - no functional changes.

* Modules/indexeddb/IDBCursorBackendImpl.cpp:
(WebCore::IDBCursorBackendImpl::IDBCursorBackendImpl):
* Modules/indexeddb/IDBCursorBackendImpl.h:
(WebCore):
(WebCore::IDBCursorBackendImpl::create):
(IDBCursorBackendImpl):
* Modules/indexeddb/IDBDatabaseBackendImpl.cpp:
(WebCore::IDBDatabaseBackendImpl::createObjectStore):
(WebCore::IDBDatabaseBackendImpl::createObjectStoreInternal):
(WebCore::IDBDatabaseBackendImpl::objectStore):
(WebCore::IDBDatabaseBackendImpl::deleteObjectStore):
(WebCore::IDBDatabaseBackendImpl::deleteObjectStoreInternal):
(WebCore::IDBDatabaseBackendImpl::setVersion):
(WebCore::IDBDatabaseBackendImpl::setVersionInternal):
(WebCore::IDBDatabaseBackendImpl::transactionStarted):
(WebCore::IDBDatabaseBackendImpl::transactionFinished):
(WebCore::IDBDatabaseBackendImpl::transaction):
* Modules/indexeddb/IDBDatabaseBackendImpl.h:
(WebCore):
(IDBDatabaseBackendImpl):
* Modules/indexeddb/IDBIndexBackendImpl.cpp:
(WebCore::IDBIndexBackendImpl::openCursorInternal):
(WebCore::IDBIndexBackendImpl::openCursor):
(WebCore::IDBIndexBackendImpl::openKeyCursor):
(WebCore::IDBIndexBackendImpl::countInternal): Drop unused transaction argument.
(WebCore::IDBIndexBackendImpl::count):
(WebCore::IDBIndexBackendImpl::get):
(WebCore::IDBIndexBackendImpl::getKey):
* Modules/indexeddb/IDBIndexBackendImpl.h:
(IDBIndexBackendImpl):
* Modules/indexeddb/IDBObjectStoreBackendImpl.cpp:
(WebCore::IDBObjectStoreBackendImpl::get):
(WebCore::IDBObjectStoreBackendImpl::put):
(WebCore::IDBObjectStoreBackendImpl::putWithIndexKeys):
(WebCore):
(WebCore::IDBObjectStoreBackendImpl::putInternal):
(WebCore::IDBObjectStoreBackendImpl::deleteFunction):
(WebCore::IDBObjectStoreBackendImpl::clear):
(WebCore::IDBObjectStoreBackendImpl::createIndex):
(WebCore::IDBObjectStoreBackendImpl::createIndexInternal):
(WebCore::IDBObjectStoreBackendImpl::deleteIndex):
(WebCore::IDBObjectStoreBackendImpl::deleteIndexInternal):
(WebCore::IDBObjectStoreBackendImpl::openCursor):
(WebCore::IDBObjectStoreBackendImpl::openCursorInternal):
(WebCore::IDBObjectStoreBackendImpl::count):
(WebCore::IDBObjectStoreBackendImpl::countInternal): Drop unused transaction argument.
* Modules/indexeddb/IDBObjectStoreBackendImpl.h:
(WebCore):
(IDBObjectStoreBackendImpl):
* Modules/indexeddb/IDBTransactionBackendImpl.cpp:
(WebCore::IDBTransactionBackendImpl::objectStore):
* Modules/indexeddb/IDBTransactionBackendImpl.h:
(WebCore::IDBTransactionBackendImpl::from):
(IDBTransactionBackendImpl):
(WebCore::IDBTransactionBackendImpl::mode):
* Modules/indexeddb/IDBTransactionBackendInterface.h:
(IDBTransactionBackendInterface):

Source/WebKit/chromium:

Remove unnecessary method stubs from proxy class.

* src/IDBTransactionBackendProxy.cpp:
* src/IDBTransactionBackendProxy.h:
(IDBTransactionBackendProxy):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@123276 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Qt] svg/text rebaseline after new test fonts (part 4)
https://bugs.webkit.org/show_bug.cgi?id=91905

Unreviewed.

Two tests, svg/text/foreignObject-text-clipping-bug.xml and
svg/text/scaling-font-with-geometric-precision.html, still have incorrect results.

This is not a regression because they were incorrect before, but had expected files with
the wrong results. Instead of updating wrong expectations, I kept them skipped but created
a new bug to track each one.

* platform/qt-5.0/Skipped:
* platform/qt/svg/text/font-size-below-point-five-2-expected.png:
* platform/qt/svg/text/font-size-below-point-five-2-expected.txt:
* platform/qt/svg/text/font-size-below-point-five-expected.png:
* platform/qt/svg/text/font-size-below-point-five-expected.txt:
* platform/qt/svg/text/lengthAdjust-text-metrics-expected.txt:
* platform/qt/svg/text/modify-text-node-in-tspan-expected.png:
* platform/qt/svg/text/modify-text-node-in-tspan-expected.txt:
* platform/qt/svg/text/remove-text-node-from-tspan-expected.png:
* platform/qt/svg/text/remove-text-node-from-tspan-expected.txt:
* platform/qt/svg/text/remove-tspan-from-text-expected.png:
* platform/qt/svg/text/remove-tspan-from-text-expected.txt:
* platform/qt/svg/text/text-altglyph-01-b-expected.png:
* platform/qt/svg/text/text-altglyph-01-b-expected.txt:
* platform/qt/svg/text/text-deco-01-b-expected.png:
* platform/qt/svg/text/text-deco-01-b-expected.txt:
* platform/qt/svg/text/text-fill-opacity-expected.png:
* platform/qt/svg/text/text-fill-opacity-expected.txt:
* platform/qt/svg/text/text-fonts-02-t-expected.png:
* platform/qt/svg/text/text-fonts-02-t-expected.txt:
* platform/qt/svg/text/text-gradient-positioning-expected.png:
* platform/qt/svg/text/text-gradient-positioning-expected.txt:
* platform/qt/svg/text/text-midpoint-split-bug-expected.png:
* platform/qt/svg/text/text-midpoint-split-bug-expected.txt:
* platform/qt/svg/text/text-path-middle-align-expected.txt:
* platform/qt/svg/text/text-repaint-rects-expected.png:
* platform/qt/svg/text/text-repaint-rects-expected.txt:
* platform/qt/svg/text/text-spacing-01-b-expected.png:
* platform/qt/svg/text/text-spacing-01-b-expected.txt:
* platform/qt/svg/text/text-tref-01-b-expected.png:
* platform/qt/svg/text/text-tref-01-b-expected.txt:
* platform/qt/svg/text/text-viewbox-rescale-expected.png:
* platform/qt/svg/text/text-viewbox-rescale-expected.txt:
* platform/qt/svg/text/textPathBoundsBug-expected.txt:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@123277 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[chromium] Unreviewed, land new baselines after r123272.

* platform/chromium-linux/media/controls-styling-strict-expected.png: Added.
* platform/chromium-mac-snowleopard/fast/layers/video-layer-expected.png:
* platform/chromium-mac-snowleopard/fullscreen/full-screen-stacking-context-expected.png:
* platform/chromium-mac-snowleopard/media/audio-controls-rendering-expected.png:
* platform/chromium-mac-snowleopard/media/audio-repaint-expected.png:
* platform/chromium-mac-snowleopard/media/controls-after-reload-expected.png:
* platform/chromium-mac-snowleopard/media/controls-layout-direction-expected.png:
* platform/chromium-mac-snowleopard/media/controls-strict-expected.png:
* platform/chromium-mac-snowleopard/media/controls-styling-expected.png:
* platform/chromium-mac-snowleopard/media/controls-styling-strict-expected.png: Added.
* platform/chromium-mac-snowleopard/media/controls-without-preload-expected.png:
* platform/chromium-mac-snowleopard/media/media-controls-clone-expected.png:
* platform/chromium-mac-snowleopard/media/video-controls-rendering-expected.png:
* platform/chromium-mac-snowleopard/media/video-display-toggle-expected.png:
* platform/chromium-mac-snowleopard/media/video-empty-source-expected.png:
* platform/chromium-mac-snowleopard/media/video-no-audio-expected.png:
* platform/chromium-mac-snowleopard/media/video-playing-and-pause-expected.png:
* platform/chromium-mac/css1/basic/inheritance-expected.png:
* platform/chromium-mac/fast/layers/video-layer-expected.png:
* platform/chromium-mac/fullscreen/full-screen-stacking-context-expected.png:
* platform/chromium-mac/media/audio-controls-rendering-expected.png:
* platform/chromium-mac/media/audio-repaint-expected.png:
* platform/chromium-mac/media/controls-after-reload-expected.png:
* platform/chromium-mac/media/controls-layout-direction-expected.png:
* platform/chromium-mac/media/controls-strict-expected.png:
* platform/chromium-mac/media/controls-styling-expected.png:
* platform/chromium-mac/media/controls-styling-strict-expected.png: Added.
* platform/chromium-mac/media/controls-styling-strict-expected.txt: Added.
* platform/chromium-mac/media/controls-without-preload-expected.png:
* platform/chromium-mac/media/media-controls-clone-expected.png:
* platform/chromium-mac/media/video-controls-rendering-expected.png:
* platform/chromium-mac/media/video-display-toggle-expected.png:
* platform/chromium-mac/media/video-empty-source-expected.png:
* platform/chromium-mac/media/video-no-audio-expected.png:
* platform/chromium-mac/media/video-playing-and-pause-expected.png:
* platform/chromium-mac/media/video-zoom-controls-expected.png:
* platform/chromium-win/fast/layers/video-layer-expected.png:
* platform/chromium-win/fullscreen/full-screen-stacking-context-expected.png:
* platform/chromium-win/media/audio-controls-rendering-expected.png:
* platform/chromium-win/media/audio-repaint-expected.png:
* platform/chromium-win/media/controls-after-reload-expected.png:
* platform/chromium-win/media/controls-layout-direction-expected.png:
* platform/chromium-win/media/controls-strict-expected.png:
* platform/chromium-win/media/controls-styling-expected.png:
* platform/chromium-win/media/controls-styling-strict-expected.png: Added.
* platform/chromium-win/media/controls-styling-strict-expected.txt: Added.
* platform/chromium-win/media/controls-without-preload-expected.png:
* platform/chromium-win/media/media-controls-clone-expected.png:
* platform/chromium-win/media/video-controls-rendering-expected.png:
* platform/chromium-win/media/video-display-toggle-expected.png:
* platform/chromium-win/media/video-empty-source-expected.png:
* platform/chromium-win/media/video-no-audio-expected.png:
* platform/chromium-win/media/video-playing-and-pause-expected.png:
* platform/chromium-win/media/video-zoom-controls-expected.png:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@123278 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Chromium-Android] Store test pipes in /data/local/tmp
https://bugs.webkit.org/show_bug.cgi?id=91909

In the previous change (bug 91873, r123258) we placed the pipes in /sdcard/native_tests.
However after tests we found some devices don't allow the app to create pipes there.
So /data/local/tmp is a better place for the pipes.

Reviewed by Adam Barth.

* Scripts/webkitpy/layout_tests/port/chromium_android.py:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@123279 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[chromium] Unreviewed, one more new baselines after r123272.

* platform/chromium-linux/http/tests/media/video-buffered-range-contains-currentTime-expected.png:
* platform/chromium-mac-snowleopard/http/tests/media/video-buffered-range-contains-currentTime-expected.png:
* platform/chromium-mac/http/tests/media/video-buffered-range-contains-currentTime-expected.png:
* platform/chromium-win/http/tests/media/video-buffered-range-contains-currentTime-expected.png:

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