[Crash][Editing] VisibleSelection::adjustSelectionToAvoidCrossingEditingBoundaries() crashes in some Shadow DOM case.
https://bugs.webkit.org/show_bug.cgi?id=88500

Reviewed by Ryosuke Niwa.

Source/WebCore:

When selecting from a child of shadow host to an element in Shadow DOM, the start position of
Selection comes after the end position of Selection in some cases. This caused a crash.

For example, let's think '<div id="host">A</div>D' and host has a Shadow DOM whose innerHTML
is 'B<content></content>C'. When selecting from just after A (p1 = (PositionIsOffsetInAnchor,
#text, 1)) to just before B (p2 = (PositionIsOffsetInAnchor, shadowRoot, 0)), since
comparePosition always judge as p2 is before p1, m_start and m_end in VisibleSelection
will be p2 and p1 respectively.

However, the anchorNodes of p1 and p2 have the different tree scope, we have to adjust p2 to
the same tree scope as p1. Since p2 is m_start, m_start was adjusted to positionAfterNode(div).
This breaks the assumption that m_start is always before (or equal to) m_end.

This patch keeps the assumption. When we cannot move m_start to positionAfterNode(div),
we move m_start to positionBeforeNode(div). Note that we cannot always move m_start to
positionBeforeNode(div), because when selecting just after D (p3 = (PositionIsOffsetInAnchor,
D's parent, 2), we don't want to select A.

In this case, m_start should be adjusted to positionAfterNode(div).

Test: editing/shadow/breaking-editing-boundaries.html

* editing/VisibleSelection.cpp:
(WebCore::adjustPositionForEnd):
(WebCore):
(WebCore::adjustPositionForStart):
(WebCore::VisibleSelection::adjustSelectionToAvoidCrossingShadowBoundaries):
* editing/VisibleSelection.h:
(VisibleSelection):

LayoutTests:

* editing/shadow/breaking-editing-boundaries-expected.txt: Added.
* editing/shadow/breaking-editing-boundaries.html: Added.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120666 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Support File/DirectoryEntry access for <input type=file> if FileSystem API is enabled
https://bugs.webkit.org/show_bug.cgi?id=88293

Reviewed by Tony Chang.

Source/WebCore:

Proposal email on whatwg: http://lists.whatwg.org/pipermail/whatwg-whatwg.org/2011-November/033814.html
Proposal draft: http://wiki.whatwg.org/wiki/DragAndDropEntries

Test: fast/forms/file/input-file-entries.html

* Modules/filesystem/HTMLInputElementFileSystem.cpp: Added.
* Modules/filesystem/HTMLInputElementFileSystem.h: Added.
* Modules/filesystem/HTMLInputElementFileSystem.idl: Added.
* WebCore.gypi:
* html/FileInputType.cpp:
(WebCore::FileInputType::receiveDroppedFiles): Retrieves dropped file
system Id if the given DragData has it.
(WebCore::FileInputType::droppedFileSystemId): Added. This returns
dropped file system Id retrieved in receiveDroppedFiles, or an empty
string if the platform does not support isolated file system for
dropped files.
* html/FileInputType.h:
* html/HTMLInputElement.cpp:
(WebCore::HTMLInputElement::droppedFileSystemId): Added.
* html/HTMLInputElement.h:
* html/InputType.cpp:
(WebCore::InputType::droppedFileSystemId): Added.
* html/InputType.h:
* platform/DragData.cpp:
* platform/DragData.h:
* platform/chromium/DragDataChromium.cpp:
(WebCore::DragData::droppedFileSystemId): Added.

LayoutTests:

* fast/forms/file/input-file-entries-expected.txt: Added.
* fast/forms/file/input-file-entries.html: Added.
* fast/forms/resources/dir1/UTF8-2.txt: Added.
* fast/forms/resources/dir1/UTF8.txt: Added.
* fast/forms/resources/dir2/green.jpg: Added.
* platform/efl/Skipped:
* platform/efl/TestExpectations:
* platform/gtk/TestExpectations:
* platform/mac/Skipped:
* platform/qt/Skipped:
* platform/win/Skipped:
* platform/wincairo/Skipped:
* platform/wk2/Skipped:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120667 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Source/WebCore: Expose WEBGL_depth_texture extension to WebGL
https://bugs.webkit.org/show_bug.cgi?id=87029

Patch by Gregg Tavares <gman@google.com> on 2012-06-18
Reviewed by Kenneth Russell.

Test: fast/canvas/webgl/webgl-depth-texture.html

* CMakeLists.txt:
* DerivedSources.make:
* GNUmakefile.list.am:
* Target.pri:
* WebCore.gypi:
* bindings/js/JSWebGLRenderingContextCustom.cpp:
(WebCore::toJS):
* bindings/v8/custom/V8WebGLRenderingContextCustom.cpp:
(WebCore::toV8Object):
* html/canvas/WebGLDepthTexture.cpp: Copied from Source/WebCore/html/canvas/WebGLExtension.h.
(WebCore):
(WebCore::WebGLDepthTexture::WebGLDepthTexture):
(WebCore::WebGLDepthTexture::~WebGLDepthTexture):
(WebCore::WebGLDepthTexture::getName):
(WebCore::WebGLDepthTexture::create):
(WebCore::WebGLDepthTexture::supported):
* html/canvas/WebGLDepthTexture.h: Copied from Source/WebCore/html/canvas/WebGLExtension.h.
(WebCore):
(WebGLDepthTexture):
* html/canvas/WebGLDepthTexture.idl: Copied from Source/WebCore/html/canvas/WebGLExtension.h.
* html/canvas/WebGLExtension.h:
* html/canvas/WebGLFramebuffer.cpp:
(WebCore::WebGLFramebuffer::initializeAttachments):
* html/canvas/WebGLRenderingContext.cpp:
(WebCore):
(WebCore::WebGLRenderingContext::validateSettableTexFormat):
(WebCore::WebGLRenderingContext::copyTexImage2D):
(WebCore::WebGLRenderingContext::copyTexSubImage2D):
(WebCore::WebGLRenderingContext::generateMipmap):
(WebCore::WebGLRenderingContext::getExtension):
(WebCore::WebGLRenderingContext::getSupportedExtensions):
(WebCore::WebGLRenderingContext::texImage2DBase):
(WebCore::WebGLRenderingContext::texImage2D):
(WebCore::WebGLRenderingContext::texSubImage2DBase):
(WebCore::WebGLRenderingContext::texSubImage2D):
(WebCore::WebGLRenderingContext::validateTexFuncFormatAndType):
(WebCore::WebGLRenderingContext::validateTexFuncParameters):
(WebCore::WebGLRenderingContext::validateTexFuncData):
* html/canvas/WebGLRenderingContext.h:
(WebCore):
(WebGLRenderingContext):
* platform/graphics/GraphicsContext3D.cpp:
(WebCore::GraphicsContext3D::getClearBitsByAttachmentType):
(WebCore):
(WebCore::GraphicsContext3D::getClearBitsByFormat):
* platform/graphics/GraphicsContext3D.h:

LayoutTests: Expose WEBGL_depth_texture extension to WebGL
https://bugs.webkit.org/show_bug.cgi?id=87029

Patch by Gregg Tavares <gman@google.com> on 2012-06-18
Reviewed by Kenneth Russell.

* fast/canvas/webgl/resources/webgl-test-utils.js:
(WebGLTestUtils):
* fast/canvas/webgl/webgl-depth-texture-expected.txt: Added.
* fast/canvas/webgl/webgl-depth-texture.html: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120668 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Fix a typo that caused TestFailures to have a syntax error.

Sadly TestFailures is broken for another reason now too:
https://bugs.webkit.org/show_bug.cgi?id=89419

* BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ViewController.js:
(ViewController.prototype._domForBuildName):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120669 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed test fix for r120667: skip '.svn' directory from the test results.

* fast/forms/file/input-file-entries.html:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120670 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed. Updating email for committers.py script.

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

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120671 268f45cc-cd09-0410-ab3c-d52691b4dbfc
       Unreviewed gardening. Add missing expectation file.

* fast/text/title-crash-expected.txt: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120672 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Cairo] Fix memory leaks in GLContextGLX.cpp
https://bugs.webkit.org/show_bug.cgi?id=89346

Patch by Sudarsana Nagineni <sudarsana.nagineni@linux.intel.com> on 2012-06-18
Reviewed by Martin Robinson.

Fix memory leaks found in GLContextGLX.cpp.

* platform/graphics/glx/GLContextGLX.cpp:
(WebCore::GLContextGLX::cleanupActiveContextsAtExit): Removing element reduces
size of the vector, so the loop termination condition was failing in the last
iteration, when the vector contains more than one element. This patch fixes the
issue by iterating the vector backwards, so the termination condition doesn't
fail until the size() reaches 0.
(WebCore::GLContextGLX::createPbufferContext): Delete GLXPbuffer
returned by glXCreatePbuffer().
(WebCore::GLContextGLX::createPixmapContext): Delete XVisualInfo
returned by glXChooseVisual().

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120673 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed test fix (one more) for r120667: skip '.svn' directory from the test results.

* fast/forms/file/input-file-entries.html:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120674 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[EFL] Fontconfig can't be linked properly
https://bugs.webkit.org/show_bug.cgi?id=89418

Unreviewed build fix.

Make Fontconfig be linked correctly.

Source/WebCore:

No new tests. This is only a build fix.

* PlatformEfl.cmake: add FONTCONFIG_LIBRARIES to WebCore_LIBRARIES.

Tools:

* MiniBrowser/efl/CMakeLists.txt: add FONTCONFIG_LIBRARIES to MiniBrowser_LIBRARIES.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120675 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Source/JavaScriptCore: Changed JSC to always record line number information so that error.stack
and window.onerror() can report proper line numbers.
https://bugs.webkit.org/show_bug.cgi?id=89410

Patch by Mark Lam <mark.lam@apple.com> on 2012-06-18
Reviewed by Geoffrey Garen.

* bytecode/CodeBlock.cpp:
(JSC::CodeBlock::CodeBlock):
(JSC::CodeBlock::lineNumberForBytecodeOffset):
(JSC::CodeBlock::shrinkToFit): m_lineInfo is now available unconditionally.

* bytecode/CodeBlock.h:
(JSC::CodeBlock::addLineInfo):
(JSC::CodeBlock::hasLineInfo): Unused.  Now removed.
(JSC::CodeBlock::needsCallReturnIndices):
(CodeBlock):
(RareData):  Hoisted m_lineInfo out of m_rareData.  m_lineInfo is now
filled in unconditionally.

* bytecompiler/BytecodeGenerator.h:
(JSC::BytecodeGenerator::addLineInfo):

LayoutTests: Ensure that error.stack and window.onerror always have the appropriate
line numbers of the exception being thrown.
https://bugs.webkit.org/show_bug.cgi?id=89410

Patch by Mark Lam <mark.lam@apple.com> on 2012-06-18
Reviewed by Geoffrey Garen.

* fast/js/exception-line-number-expected.txt: Added.
* fast/js/exception-line-number.html: Added.
* fast/js/script-tests/exception-line-number.js: Added.
(foo):
(window.onerror):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120676 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Qt] Unreviewed gardening, update expected files.

* platform/qt/Skipped: Skip a new failing test to paint the bot green.
* platform/qt/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt: Updated after r120609.
* platform/qt/fast/multicol/progression-reverse-expected.png: Added after r120609.
* platform/qt/fast/multicol/progression-reverse-expected.txt: Added after r120609.
* platform/qt/svg/css/getComputedStyle-basic-expected.txt: Updated after r120609.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120677 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed GTK gardening, updating baselines after rollouts in r120627.

* platform/gtk/fast/hidpi/clip-text-in-hidpi-expected.txt:
* platform/gtk/fast/hidpi/image-set-background-dynamic-expected.txt:
* platform/gtk/fast/hidpi/image-set-border-image-dynamic-expected.txt:
* platform/gtk/fast/hidpi/image-set-in-content-dynamic-expected.txt:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120678 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Refactoring: Introduce a class to represent restoring state of a form control
https://bugs.webkit.org/show_bug.cgi?id=89412

Reviewed by Hajime Morita.

HTMLFormControlElementWithState::saveFormControlState had two return
values; One is a boolean to represent whether we should save the state
or not, and another is form control value. This patch introduces
FormControlState class representing these values.

We're going to extend FormControlState class so that it can contain
multiple strings to fix a FileInputType issue and it have another type
to fix Bug 89409.

No new tests. Just a refactoring.

* html/FormController.cpp:
(WebCore::FormController::formElementsState):
Gets a state string from a FormControlState instance.
(WebCore::FormController::takeStateForFormElement):
Creates a FormControlState instance with a state string.
* html/FormController.h:
(WebCore::FormControlState): Added.

* html/BaseCheckableInputType.cpp:
(WebCore::BaseCheckableInputType::saveFormControlState):
Use FormControlState class.
(WebCore::BaseCheckableInputType::restoreFormControlState): ditto.
* html/BaseCheckableInputType.h:
(BaseCheckableInputType): ditto.
* html/FileInputType.cpp:
(WebCore::FileInputType::saveFormControlState): ditto.
(WebCore::FileInputType::restoreFormControlState): ditto.
* html/FileInputType.h:
(FileInputType): ditto.
* html/HTMLFormControlElementWithState.cpp:
(WebCore::HTMLFormControlElementWithState::saveFormControlState): ditto.
(WebCore::HTMLFormControlElementWithState::finishParsingChildren): ditto.
* html/HTMLFormControlElementWithState.h:
(HTMLFormControlElementWithState): ditto.
(WebCore::HTMLFormControlElementWithState::restoreFormControlState): ditto.
* html/HTMLInputElement.cpp:
(WebCore::HTMLInputElement::saveFormControlState): ditto.
(WebCore::HTMLInputElement::restoreFormControlState): ditto.
* html/HTMLInputElement.h:
(HTMLInputElement): ditto.
* html/HTMLSelectElement.cpp:
(WebCore::HTMLSelectElement::saveFormControlState): ditto.
(WebCore::HTMLSelectElement::restoreFormControlState): ditto.
* html/HTMLSelectElement.h:
* html/HTMLTextAreaElement.cpp:
(WebCore::HTMLTextAreaElement::saveFormControlState): ditto.
(WebCore::HTMLTextAreaElement::restoreFormControlState): ditto.
* html/HTMLTextAreaElement.h:
* html/HiddenInputType.cpp:
(WebCore::HiddenInputType::saveFormControlState): ditto.
(WebCore::HiddenInputType::restoreFormControlState): ditto.
* html/HiddenInputType.h:
(HiddenInputType): ditto.
* html/InputType.cpp:
(WebCore::InputType::saveFormControlState): ditto.
(WebCore::InputType::restoreFormControlState): ditto.
* html/InputType.h:
(InputType): ditto.
* html/PasswordInputType.cpp:
(WebCore::PasswordInputType::saveFormControlState): ditto.
(WebCore::PasswordInputType::restoreFormControlState): ditto.
* html/PasswordInputType.h:
(PasswordInputType): ditto.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120679 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Mac] Editor::fontAttributesForSelectionStart() leaks a NSShadow
https://bugs.webkit.org/show_bug.cgi?id=89424

Reviewed by Dan Bernstein.

* editing/mac/EditorMac.mm:
(WebCore::Editor::fontAttributesForSelectionStart): Store the NSShadow
in a RetainPtr so that it's released before going out of scope.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120680 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Use testRunner instead of layoutTestController in fast/animation, autoresize, backgrounds, block, body-propagation, borders, and box-* tests
https://bugs.webkit.org/show_bug.cgi?id=89422

Reviewed by Kent Tamura.

* fast/animation/request-animation-frame-detach-element.html:
* fast/animation/request-animation-frame-detach-element2.html:
* fast/animation/request-animation-frame-disabled.html:
* fast/animation/request-animation-frame-during-modal.html:
* fast/animation/request-animation-frame-iframe.html:
* fast/animation/script-tests/request-animation-frame-cancel.js:
* fast/animation/script-tests/request-animation-frame-cancel2.js:
* fast/animation/script-tests/request-animation-frame-disabled.js:
* fast/animation/script-tests/request-animation-frame-timestamps-advance.js:
* fast/animation/script-tests/request-animation-frame-timestamps.js:
* fast/animation/script-tests/request-animation-frame-within-callback.js:
* fast/animation/script-tests/request-animation-frame.js:
* fast/autoresize/autoresize-with-iframe.html:
* fast/autoresize/basic.html:
* fast/autoresize/turn-off-autoresize.html:
* fast/backgrounds/animated-gif-as-background.html:
* fast/backgrounds/animated-svg-as-mask.html:
* fast/backgrounds/background-fast-path-simple-color.html:
* fast/backgrounds/background-fill-zero-area-crash.html:
* fast/backgrounds/background-repeat-computed-style.html:
* fast/backgrounds/multiple-backgrounds-assert.html:
* fast/backgrounds/root-background-propagation.html:
* fast/backgrounds/root-background-propagation2.html:
* fast/backgrounds/size/contain-and-cover-zoomed.html:
* fast/backgrounds/solid-color-context-restore.html:
* fast/block/:
* fast/borders/border-image-reset-by-border-shorthand.html:
* fast/borders/border-image-slice-omission.html:
* fast/borders/border-mixed-alpha.html:
* fast/borders/border-radius-complex-inner.html:
* fast/borders/border-radius-parsing.html:
* fast/borders/negative-border-width.html:
* fast/borders/outline-alpha-block.html:
* fast/borders/outline-alpha-inline.html:
* fast/box-shadow/box-shadow-clipped-slices.html:
* fast/box-shadow/box-shadow-currentcolor.html:
* fast/box-shadow/no-blur-multiple-offsets.html:
* fast/box-shadow/resources/box-shadow-overflow-scroll.js:
* fast/box-shadow/spread-multiple-inset.html:
* fast/box-shadow/spread-multiple-normal.html:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120681 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Qt] Unreviewed gardening, skip failing tests.

* platform/qt-4.8/Skipped:
* platform/qt-5.0/Skipped:
* platform/qt/Skipped:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120682 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Use testRunner instead of layoutTestController in fast/canvas, clip, compact, constructors, cookies, and css* tests
https://bugs.webkit.org/show_bug.cgi?id=89431

Reviewed by Kent Tamura.

* fast/canvas/:
* fast/constructors/constructor-as-function-crash.html:
* fast/css-generated-content/absolute-position-inside-inline.html:
* fast/css-generated-content/after-with-first-letter-float-crash.html:
* fast/css-generated-content/attr-missing.html:
* fast/css-generated-content/before-content-with-list-marker-in-anon-block-crash.html:
* fast/css-generated-content/block-after.html:
* fast/css-generated-content/drag-state.html:
* fast/css-generated-content/empty-content-with-float-crash.html:
* fast/css-generated-content/first-letter-next-sibling-crash.html:
* fast/css-generated-content/first-letter-table-cell-format-block-crash.html:
* fast/css-generated-content/float-first-letter-siblings-convert-to-inline.html:
* fast/css-generated-content/floating-before-content-with-list-marker-crash.html:
* fast/css-generated-content/hit-test-generated-content.html:
* fast/css-generated-content/hover-style-change.html:
* fast/css-generated-content/inline-splitting-with-after-float-crash.html:
* fast/css-generated-content/malformed-url.html:
* fast/css-generated-content/positioned-background-hit-test-crash.html:
* fast/css-generated-content/positioned-div-with-floating-after-content-crash.html:
* fast/css-generated-content/positioned-generated-content-under-run-in-crash.html:
* fast/css-generated-content/remove-div-from-flexible-box-with-floating-after-content-crash.html:
* fast/css-generated-content/reset-content-to-initial.html:
* fast/css-generated-content/resources/pass.html:
* fast/css-generated-content/resources/positioned-div-with-floating-after-content-crash-frame2.html:
* fast/css-generated-content/spellingToolTip-assert.html:
* fast/css-generated-content/table-row-after-no-crash.html:
* fast/css-generated-content/table-with-scrollbar-corner.html:
* fast/css-generated-content/text-before-table-col-crash.html:
* fast/css-grid-layout/display-grid-set-get.html:
* fast/css-grid-layout/grid-columns-rows-get-set-multiple.html:
* fast/css-grid-layout/grid-columns-rows-get-set.html:
* fast/css-grid-layout/grid-item-column-row-get-set.html:
* fast/css/:
* platform/mac/fast/canvas/canvas-draw-xbm-image.html:
* platform/qt/fast/canvas/toDataURL-jpeg-alpha.html:
* platform/qt/fast/canvas/toDataURL-jpeg-primarycolors.html:
* platform/qt/fast/canvas/toDataURL-jpeg-quality-basic.html:
* platform/qt/fast/canvas/toDataURL-jpeg-quality-notnumber.html:
* platform/qt/fast/canvas/toDataURL-jpeg-quality-outsiderange.html:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120683 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Add a scheme registry for bypassing Content Security Policy.
https://bugs.webkit.org/show_bug.cgi?id=89373

Patch by Mike West <mkwst@chromium.org> on 2012-06-19
Reviewed by Adam Barth.

.:

* Source/autotools/symbols.filter:

Source/WebCore:

The Content Security Policy specification notes that "Enforcing a CSP
policy should not interfere with the operation of user-supplied scripts
such as third-party user-agent add-ons and JavaScript bookmarklets."
(https://dvcs.w3.org/hg/content-security-policy/raw-file/tip/csp-specification.dev.html#processing-model)
This use case can be at least partially addressed by adding a scheme
registry for certain types of URLs whose resources should be loaded
regardless of a page's defined policy directives.

See http://crbug.com/133223 for additional context.

Test: http/tests/security/contentSecurityPolicy/register-bypassing-scheme.html

* WebCore.exp.in:
    Exporting new symbols for use by Internals.
* page/ContentSecurityPolicy.cpp:
(WebCore::isAllowedByAllWithURL):
    Adding a check against the new SchemeRegistry method to determine
    whether or not we should proceed with checking the URL against the
    policy.
* platform/SchemeRegistry.cpp:
(WebCore::CSPBypassingSchemes):
(WebCore):
(WebCore::SchemeRegistry::registerURLSchemeAsBypassingContentSecurityPolicy):
(WebCore::SchemeRegistry::removeURLSchemeRegisteredAsBypassingContentSecurityPolicy):
(WebCore::SchemeRegistry::schemeShouldBypassContentSecurityPolicy):
* platform/SchemeRegistry.h:
(SchemeRegistry):
    Adding the scheme registry for CSP-bypassing URL schemes.
* testing/Internals.cpp:
(WebCore):
(WebCore::Internals::registerURLSchemeAsBypassingContentSecurityPolicy):
(WebCore::Internals::removeURLSchemeRegisteredAsBypassingContentSecurityPolicy):
* testing/Internals.h:
(Internals):
* testing/Internals.idl:
    Adding a method to Internals so that we can write a layout test.

Source/WebKit/chromium:

* public/WebSecurityPolicy.h:
(WebSecurityPolicy):
* src/WebSecurityPolicy.cpp:
(WebKit::WebSecurityPolicy::registerURLSchemeAsBypassingContentSecurityPolicy):
(WebKit):

Source/WebKit2:

* win/WebKit2.def:
* win/WebKit2CFLite.def:

LayoutTests:

* http/tests/security/contentSecurityPolicy/register-bypassing-scheme-expected.txt: Added.
* http/tests/security/contentSecurityPolicy/register-bypassing-scheme.html: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@120684 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Qt] Fix TARGET not properly being set for QtWebKitd5.dll when building in debug.
https://bugs.webkit.org/show_bug.cgi?id=88880

load(qt_module_config) adjusts the TARGET to add the "d" suffix when doing
the debug build_pass. When doing the first pass, qt_module_config.prf doesn't
adjust the target since it is in debug_and_release and expects the debug
build_pass to come later. However, since we remove debug_and_release from CONFIG
right after this, the TARGET hasn't been adjusted and the debug build_pass
will not happen.

Work around it by disabling this optimization on Windows.

Patch by Jocelyn Turcotte <jocelyn.turcotte@nokia.com> on 2012-06-19
Reviewed by Tor Arne Vestbø.

* Source/api.pri:

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