Unreviewed, rolling out r144157.
http://trac.webkit.org/changeset/144157
https://bugs.webkit.org/show_bug.cgi?id=110794

It broke chromium windows build

* bindings/scripts/CodeGeneratorV8.pm:
(GenerateNamedConstructor):
* bindings/scripts/test/V8/V8TestNamedConstructor.cpp:
(WebCore::V8TestNamedConstructorConstructorCallback):
(WebCore::V8TestNamedConstructorConstructor::GetTemplate):
* bindings/v8/custom/V8HTMLImageElementConstructor.cpp:
(WebCore::v8HTMLImageElementConstructorMethodCustom):
(WebCore::V8HTMLImageElementConstructor::GetTemplate):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@144322 268f45cc-cd09-0410-ab3c-d52691b4dbfc
IndexedDB: IO error when checking schema should destroy LevelDB directory
https://bugs.webkit.org/show_bug.cgi?id=110675

Reviewed by Adam Barth.

Source/WebCore:

Also some refactoring to remove IDBBackingStore's dependence on
static LevelDBDatabase methods. This facilitated the unit test.

New unit test - IDBIOErrorTest.CleanUpTest

* Modules/indexeddb/IDBBackingStore.cpp:
(DefaultLevelDBFactory):
Wraps the previous behavior.
(WebCore::IDBBackingStore::open):
The default parameter provides the previous behavior, which is what
non-tests want.
* Modules/indexeddb/IDBBackingStore.h:
* platform/leveldb/LevelDBDatabase.h:

Source/WebKit/chromium:

* WebKit.gyp:
This was cargo-culted. The component build wouldn't run otherwise.

* WebKit.gypi:
* tests/IDBCleanupOnIOErrorTest.cpp: Added.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@144323 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Don't install unused XPCServices on Lion
<rdar://problem/13264712>

Rubber-stamped by Anders Carlsson

* Configurations/BaseXPCService.xcconfig:

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

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@144325 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[BlackBerry] Handle Set-Cookie immediately even when loading is deferred
https://bugs.webkit.org/show_bug.cgi?id=111083

Patch by Joe Mason <jmason@rim.com> on 2013-02-28
Reviewed by Yong Li.

Internal PR: 298805
Internally Reviewed By: Leo Yang

Handle Set-Cookie headers immediately, even if loading is being deferred, since any request
created while loading is deferred should include all cookies received. (This especially
affects Set-Cookie headers sent with a 401 response - often this causes an auth dialog to be
opened, which defers loading, but the followup request using the credentials from the dialog
needs to include the cookie.)

This is safe because handleSetCookieHeader only updates the cookiejar, it doesn't call back
into the loader.

* platform/network/blackberry/NetworkJob.cpp:
(WebCore::NetworkJob::notifyHeadersReceived):
(WebCore::NetworkJob::handleNotifyHeaderReceived):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@144326 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Factor SourceBuffer methods out of MediaSourcePrivate & WebMediaSource
into SourceBufferPrivate & WebSourceBuffer respectively.
https://bugs.webkit.org/show_bug.cgi?id=110798

Reviewed by Adam Barth, Jer Noble.

Source/WebCore:

No new tests. No user visible behavior has changed.

* Modules/mediasource/MediaSource.cpp:
(WebCore::MediaSource::addSourceBuffer):
(WebCore::MediaSource::removeSourceBuffer):
* Modules/mediasource/MediaSource.h:
(MediaSource):
* Modules/mediasource/SourceBuffer.cpp:
(WebCore::SourceBuffer::create):
(WebCore):
(WebCore::SourceBuffer::SourceBuffer):
(WebCore::SourceBuffer::buffered):
(WebCore::SourceBuffer::setTimestampOffset):
(WebCore::SourceBuffer::append):
(WebCore::SourceBuffer::abort):
(WebCore::SourceBuffer::removedFromMediaSource):
(WebCore::SourceBuffer::isRemoved):
(WebCore::SourceBuffer::isOpen):
(WebCore::SourceBuffer::isEnded):
* Modules/mediasource/SourceBuffer.h:
(WebCore):
(SourceBuffer):
* Modules/mediasource/SourceBufferList.cpp:
(WebCore::SourceBufferList::SourceBufferList):
(WebCore::SourceBufferList::remove):
(WebCore::SourceBufferList::clear):
* Modules/mediasource/SourceBufferList.h:
(SourceBufferList):
* html/HTMLMediaElement.cpp:
* platform/graphics/MediaSourcePrivate.h:
(WebCore):
(MediaSourcePrivate):
* platform/graphics/SourceBufferPrivate.h:
(WebCore):
(SourceBufferPrivate): Contains methods extracted from MediaPlayerPrivate.
(WebCore::SourceBufferPrivate::SourceBufferPrivate):
(WebCore::SourceBufferPrivate::~SourceBufferPrivate):

Source/WebKit/chromium:

* WebKit.gyp:
* public/WebMediaSourceClient.h:
(WebKit):
(WebMediaSourceClient):
* public/WebSourceBuffer.h:
(WebKit):
(WebSourceBuffer): Contains SourceBuffer methods extracted from WebMediaSource.
(WebKit::WebSourceBuffer::~WebSourceBuffer):
* src/AssertMatchingEnums.cpp:
* src/MediaSourcePrivateImpl.cpp:
(WebKit):
(WebKit::MediaSourcePrivateImpl::MediaSourcePrivateImpl):
(WebKit::MediaSourcePrivateImpl::addSourceBuffer):
(WebKit::MediaSourcePrivateImpl::duration):
(WebKit::MediaSourcePrivateImpl::setDuration):
(WebKit::MediaSourcePrivateImpl::endOfStream):
* src/MediaSourcePrivateImpl.h:
(WebKit):
(MediaSourcePrivateImpl): Adapts MediaSourcePrivate interface to WebMediaSourceClient.
(WebKit::MediaSourcePrivateImpl::~MediaSourcePrivateImpl):
* src/SourceBufferPrivateImpl.cpp:
(WebKit):
(WebKit::SourceBufferPrivateImpl::SourceBufferPrivateImpl):
(WebKit::SourceBufferPrivateImpl::buffered):
(WebKit::SourceBufferPrivateImpl::append):
(WebKit::SourceBufferPrivateImpl::abort):
(WebKit::SourceBufferPrivateImpl::setTimestampOffset):
(WebKit::SourceBufferPrivateImpl::removedFromMediaSource):
* src/SourceBufferPrivateImpl.h:
(WebKit):
(SourceBufferPrivateImpl): Adapts SourceBufferPrivate interface to WebSourceBuffer.
(WebKit::SourceBufferPrivateImpl::~SourceBufferPrivateImpl):
* src/WebMediaPlayerClientImpl.cpp:
(WebMediaSourceClientImpl):
(WebKit):
(WebSourceBufferImpl): Temporary implementation of WebSourceBuffer to keep things working
                       until the Chromium side changes land.
(WebKit::WebMediaSourceClientImpl::addSourceBuffer):
(WebKit::WebMediaSourceClientImpl::duration):
(WebKit::WebMediaSourceClientImpl::setDuration):
(WebKit::WebMediaSourceClientImpl::endOfStream):
(WebKit::WebSourceBufferImpl::WebSourceBufferImpl):
(WebKit::WebSourceBufferImpl::buffered):
(WebKit::WebSourceBufferImpl::append):
(WebKit::WebSourceBufferImpl::abort):
(WebKit::WebSourceBufferImpl::setTimestampOffset):
(WebKit::WebSourceBufferImpl::removedFromMediaSource):
* src/WebMediaSourceImpl.cpp:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@144328 268f45cc-cd09-0410-ab3c-d52691b4dbfc
IndexedDB: Histogram all exits from IDBBackingStore::open
https://bugs.webkit.org/show_bug.cgi?id=110677

Reviewed by Tony Chang.

No tests because this only changes logging code.

* Modules/indexeddb/IDBBackingStore.cpp:
(WebCore::IDBBackingStore::open):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@144330 268f45cc-cd09-0410-ab3c-d52691b4dbfc
This timeout also happens in Release.

* platform/chromium/TestExpectations:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@144331 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Add new webkit API to invoke a context menu.
https://bugs.webkit.org/show_bug.cgi?id=111040

Patch by Varun Jain <varunjain@chromium.org> on 2013-02-28
Reviewed by Adam Barth.

* public/WebView.h:
(WebView):
* src/WebViewImpl.cpp:
(WebKit::WebViewImpl::showContextMenu):
(WebKit):
* src/WebViewImpl.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@144332 268f45cc-cd09-0410-ab3c-d52691b4dbfc
PDFPlugin: PDF orientation isn't respected when printing or print-previewing
https://bugs.webkit.org/show_bug.cgi?id=110925
<rdar://problem/13008621>

Reviewed by Alexey Proskuryakov.

* WebProcess/WebPage/mac/WebPageMac.mm:
(WebKit::drawPDFPage): Teach drawPDFPage about PDFPage's rotation property, and use it
to swap the PDF's cropbox. Painting now matches PDFViewController's historical behavior.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@144333 268f45cc-cd09-0410-ab3c-d52691b4dbfc
WebSpeech: support the boundary event
https://bugs.webkit.org/show_bug.cgi?id=107350

Reviewed by Beth Dakin.

Source/WebCore:

Generate boundary events for speech synthesis and have them fire the appropriate events.
This implements for the Mac platform, as well as simulating these events in the mock
synthesizer for testing purposes.

Test: platform/mac/fast/speechsynthesis/speech-synthesis-boundary-events.html

* Modules/speech/SpeechSynthesis.cpp:
(WebCore):
(WebCore::SpeechSynthesis::boundaryEventOccurred):
* Modules/speech/SpeechSynthesis.h:
(SpeechSynthesis):
* platform/PlatformSpeechSynthesizer.h:
(WebCore):
(PlatformSpeechSynthesizerClient):
* platform/mac/PlatformSpeechSynthesizerMac.mm:
(-[WebSpeechSynthesisWrapper speechSynthesizer:willSpeakWord:ofString:]):
* platform/mock/PlatformSpeechSynthesizerMock.cpp:
(WebCore::PlatformSpeechSynthesizerMock::speak):

LayoutTests:

* platform/mac/fast/speechsynthesis/speech-synthesis-boundary-events-expected.txt: Added.
* platform/mac/fast/speechsynthesis/speech-synthesis-boundary-events.html: Added.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@144335 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Mac] use HAVE() macro instead of version check
https://bugs.webkit.org/show_bug.cgi?id=111087

Reviewed by Dean Jackson.

Source/WebCore:

No new tests, covered by existing tests.

* page/CaptionUserPreferencesMac.h: Use HAVE(MEDIA_ACCESSIBILITY_FRAMEWORK).
* page/CaptionUserPreferencesMac.mm: Ditto.
(WebCore::CaptionUserPreferencesMac::CaptionUserPreferencesMac): Ditto.
(WebCore::CaptionUserPreferencesMac::~CaptionUserPreferencesMac): Ditto.

* page/PageGroup.cpp:
(WebCore::PageGroup::captionPreferences): Ditto.

Source/WTF:

* wtf/Platform.h: Define HAVE_MEDIA_ACCESSIBILITY_FRAMEWORK.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@144336 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Enable DFG JIT for Qt on Mac
https://bugs.webkit.org/show_bug.cgi?id=111095

Rubber-stamped by Simon Hausmann

* wtf/Platform.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@144337 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Source/WebCore: Crash in CachedRawResource::responseReceived().
https://bugs.webkit.org/show_bug.cgi?id=110482

Reviewed by Adam Barth.

Test: http/tests/security/XFrameOptions/x-frame-options-deny-multiple-clients.html

* loader/cache/CachedRawResource.cpp:
(WebCore::CachedRawResource::responseReceived):

LayoutTests: Test for https://bugs.webkit.org/show_bug.cgi?id=110482

Reviewed by Adam Barth.

* http/tests/security/XFrameOptions/x-frame-options-deny-multiple-clients-expected.txt: Added.
* http/tests/security/XFrameOptions/x-frame-options-deny-multiple-clients.html: Added.
* platform/chromium/http/tests/security/XFrameOptions/x-frame-options-deny-multiple-clients-expected.txt: Added.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@144338 268f45cc-cd09-0410-ab3c-d52691b4dbfc
DFG CFA should leave behind information in Edge that says if the Edge's type check is proven to succeed
https://bugs.webkit.org/show_bug.cgi?id=110840

Reviewed by Mark Hahnenberg.
        
This doesn't add any observable functionality to the compiler, yet. But it does give
every phase that runs after CFA the ability to know, in O(1) time, whether an edge
will need to execute a type check.

* dfg/DFGAbstractState.h:
(JSC::DFG::AbstractState::filterEdgeByUse):
(JSC::DFG::AbstractState::filterByType):
* dfg/DFGCommon.cpp:
(WTF):
(WTF::printInternal):
* dfg/DFGCommon.h:
(JSC::DFG::isProved):
(DFG):
(JSC::DFG::proofStatusForIsProved):
(WTF):
* dfg/DFGEdge.cpp:
(JSC::DFG::Edge::dump):
* dfg/DFGEdge.h:
(JSC::DFG::Edge::Edge):
(JSC::DFG::Edge::setNode):
(JSC::DFG::Edge::useKindUnchecked):
(JSC::DFG::Edge::setUseKind):
(Edge):
(JSC::DFG::Edge::proofStatusUnchecked):
(JSC::DFG::Edge::proofStatus):
(JSC::DFG::Edge::setProofStatus):
(JSC::DFG::Edge::isProved):
(JSC::DFG::Edge::needsCheck):
(JSC::DFG::Edge::shift):
(JSC::DFG::Edge::makeWord):



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@144340 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed, rolling out r144126 and r144176.
http://trac.webkit.org/changeset/144126
http://trac.webkit.org/changeset/144176
https://bugs.webkit.org/show_bug.cgi?id=111096

Caused fast/notifications/notifications-request-
permission.html to crash (Requested by abarth on #webkit).

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

Source/WebCore:

* 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: Added.
(WebCore):
(WebCore::JSNotification::requestPermission):
* bindings/scripts/CodeGeneratorJS.pm:
(GenerateParametersCheck):
* bindings/scripts/test/JS/JSTestObj.cpp:
* bindings/v8/custom/V8NotificationCustom.cpp: Added.
(WebCore):
(WebCore::V8Notification::requestPermissionMethodCustom):

LayoutTests:

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

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@144341 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Remove these supressions now that we've reverted http://trac.webkit.org/changeset/144126.

* platform/chromium/TestExpectations:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@144343 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Remove the quirk margin bits from RenderObject and put them back in RenderBlock.
https://bugs.webkit.org/show_bug.cgi?id=111089

Reviewed by Dan Bernstein.

This patch removes the marginBeforeQuirk and marginAfterQuirk bits from RenderObject
and puts them into RenderBlock instead. I also did some renaming and clean-up after
moving them, e.g., to hasMarginBeforeQuirk and hasMarginAfterQuirk.
        
Even though it's pretty irrelevant, I also made the code writing-mode-correct so that
the correct child margin quirk is propagated across differing writing mode
boundaries.

* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::MarginInfo::MarginInfo):
(WebCore::RenderBlock::RenderBlock):
(WebCore::RenderBlock::layoutBlock):
(WebCore::RenderBlock::collapseMargins):
(WebCore::RenderBlock::marginBeforeEstimateForChild):
(WebCore::RenderBlock::setCollapsedBottomMargin):
(WebCore::RenderBlock::handleAfterSideOfBlock):
(WebCore::RenderBlock::hasMarginBeforeQuirk):
(WebCore):
(WebCore::RenderBlock::hasMarginAfterQuirk):
* rendering/RenderBlock.h:
(WebCore::RenderBlock::setHasMarginBeforeQuirk):
(WebCore::RenderBlock::setHasMarginAfterQuirk):
(RenderBlock):
(WebCore::RenderBlock::hasMarginBeforeQuirk):
(WebCore::RenderBlock::hasMarginAfterQuirk):
(MarginInfo):
(WebCore::RenderBlock::MarginInfo::setHasMarginBeforeQuirk):
(WebCore::RenderBlock::MarginInfo::setHasMarginAfterQuirk):
(WebCore::RenderBlock::MarginInfo::hasMarginBeforeQuirk):
(WebCore::RenderBlock::MarginInfo::hasMarginAfterQuirk):
* rendering/RenderObject.h:
(RenderObject):
(WebCore::RenderObject::RenderObjectBitfields::RenderObjectBitfields):
(RenderObjectBitfields):
* rendering/style/RenderStyle.h:



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@144344 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Chromium] Unreviewed gardening, update expectation

* platform/chromium/TestExpectations: Add Win modifier for compositing/rtl/rtl-iframe-fixed-overflow-scrolled.html
    and remove modifiers for fast/forms/textarea/textarea-state-restore.html


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@144345 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Crash in JSC::MarkedBlock::FreeList JSC::MarkedBlock::sweepHelper
https://bugs.webkit.org/show_bug.cgi?id=111059

Reviewed by Ryosuke Niwa.

Sometimes C++'s implicit operator conversion rules suck.
Add explicit operator== and !=.

* wtf/FastMalloc.cpp:
(WTF::HardenedSLL::operator!=):
(WTF::HardenedSLL::operator==):
(HardenedSLL):

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