WebKit-https.git
9 years ago[chromium] Resize requests at the view level should be ignored when in autoresize...
levin@chromium.org [Fri, 6 Jan 2012 00:32:25 +0000 (00:32 +0000)]
[chromium] Resize requests at the view level should be ignored when in autoresize mode.
https://bugs.webkit.org/show_bug.cgi?id=75651

Reviewed by Dmitry Titov.

* src/WebViewImpl.cpp:
(WebKit::WebViewImpl::resize): The assert was here to catch a view that
tried to do a resize after setting autoresize. However, we found that generic
code tries to do resizes as well. Rather than special case each caller,
we'll just make this code ignore the resize call.

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

9 years agohttps://bugs.webkit.org/show_bug.cgi?id=75654
bdakin@apple.com [Fri, 6 Jan 2012 00:30:50 +0000 (00:30 +0000)]
https://bugs.webkit.org/show_bug.cgi?id=75654
Text fields should draw using NSTextFieldCell instead of WebKitSystemInterface

Reviewed by John Sullivan.

This change should not have any affect on tests or real web sites. It just changed
the implementation under the hood to the more modern NSCell approach.
* rendering/RenderThemeMac.h:
* rendering/RenderThemeMac.mm:
(WebCore::RenderThemeMac::paintTextField):
(WebCore::RenderThemeMac::textField):

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

9 years agoCrash when trying to invalidate the NPRuntimeObjectMap for a plug-in in a subframe
andersca@apple.com [Fri, 6 Jan 2012 00:29:14 +0000 (00:29 +0000)]
Crash when trying to invalidate the NPRuntimeObjectMap for a plug-in in a subframe
https://bugs.webkit.org/show_bug.cgi?id=75667
<rdar://problem/10389454>

Reviewed by Kevin Decker.

Source/WebKit2:

NPRuntimeObjectMap::invalidate is called whenever a plug-in view is destroyed. If invalidate is called for an object map
whose plug-in has a null frame, we'd crash.

The plug-in will have a null frame if the plug-in view is destroyed because its containing frame has been removed from the document,
and if the plug-in view is being destroyed asynchronously due to the plug-in itself calling JavaScript that will remove the frame
(see PluginView::unprotectPluginFromDestruction).

The reason NPRuntimeObjectMap::invalidate will crash when the frame is null is because we were trying to access the frame's global
object, causing a null dereference. The reason we were trying to get at the frame's global object was to create a Strong handle to
a JSNPObject so we could stick the object in a vector so we could later iterate over the vector elements and call invalidate() on
each JSNPObject which will end up releasing the underlying NPObject.

However, it turns out that we don't need to stick the JSNPObject in a vector; we can just get the underlying NPObject directly and
stick that in a vector and then iterate over the NPObjects, releasing them.

* WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp:
(WebKit::NPRuntimeObjectMap::invalidate):

Tools:

Add an evaluate method to the plug-in test scriptable object that can be used to evaluate a given JS string.

* DumpRenderTree/TestNetscapePlugIn/PluginTest.cpp:
(PluginTest::executeScript):
* DumpRenderTree/TestNetscapePlugIn/PluginTest.h:
* DumpRenderTree/TestNetscapePlugIn/Tests/NPRuntimeObjectFromDestroyedPlugin.cpp:
(NPRuntimeObjectFromDestroyedPlugin::ScriptableObject::hasMethod):
(NPRuntimeObjectFromDestroyedPlugin::ScriptableObject::invoke):
(NPRuntimeObjectFromDestroyedPlugin::ScriptableObject::hasProperty):

LayoutTests:

* plugins/npruntime/object-from-destroyed-plugin-in-subframe-expected.txt: Added.
* plugins/npruntime/object-from-destroyed-plugin-in-subframe.html: Added.

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

9 years agoAdd a compile-time assertion for the size of CSSValue
rniwa@webkit.org [Fri, 6 Jan 2012 00:01:07 +0000 (00:01 +0000)]
Add a compile-time assertion for the size of CSSValue
https://bugs.webkit.org/show_bug.cgi?id=75635

Reviewed by Tony Chang.

Tightened the compile-time assertion.

* css/CSSValue.cpp:

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

9 years ago[EFL] Undefined references to ICU_I18N symbols on WTF
commit-queue@webkit.org [Thu, 5 Jan 2012 23:59:31 +0000 (23:59 +0000)]
[EFL] Undefined references to ICU_I18N symbols on WTF
https://bugs.webkit.org/show_bug.cgi?id=75642

Unreviewed build fix.

Add ${ICU_I18N_LIBRARIES} to WTF_LIBRARIES on wtf efl platform cmake.
Some undefined references were ucol_setAttribute_44, ucol_close_44,
ucol_getAttribute_44...

Patch by Bruno Dilly <bdilly@profusion.mobi> on 2012-01-05

* wtf/PlatformEfl.cmake:

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

9 years ago[V8] CodeGeneration for SerializedScriptValue doesn't play nice with [Constructor]
abarth@webkit.org [Thu, 5 Jan 2012 23:57:26 +0000 (23:57 +0000)]
[V8] CodeGeneration for SerializedScriptValue doesn't play nice with [Constructor]
https://bugs.webkit.org/show_bug.cgi?id=75641

Reviewed by David Levin.

Rather than generate getters for SerializedScriptValues, we eagerly
deserialize them into JavaScript objects.  However, previously, we were
only doing that for DOM wrappers created by taking an existing C++
object and wrapping it.  For objects created with Constructors (e.g.,
those with the [Constructor] attribute), we need to do this eager
deserialization during the constructor as well.

This bug isn't observable yet, but it is causing the WebIntent test
being added in Bug 73051 to fail.

Test: TestSerializedScriptValueInterface.idl
      webintents/web-intents-api.html (after Bug 73051 lands)

* bindings/scripts/CodeGeneratorV8.pm:
(GenerateEagerDeserialization):
(GenerateConstructorCallback):
(GenerateNamedConstructorCallback):
(GenerateImplementation):
(GenerateToV8Converters):
* bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
(WebCore::JSTestSerializedScriptValueInterfaceConstructor::constructJSTestSerializedScriptValueInterface):
(WebCore::JSTestSerializedScriptValueInterfaceConstructor::getConstructData):
* bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.h:
* bindings/scripts/test/TestSerializedScriptValueInterface.idl:
* bindings/scripts/test/V8/V8TestInterface.cpp:
(WebCore::V8TestInterface::constructorCallback):
* bindings/scripts/test/V8/V8TestNamedConstructor.cpp:
(WebCore::V8TestNamedConstructorConstructorCallback):
* bindings/scripts/test/V8/V8TestObj.cpp:
(WebCore::V8TestObj::constructorCallback):
* bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.cpp:
(WebCore::V8TestSerializedScriptValueInterface::constructorCallback):
(WebCore::ConfigureV8TestSerializedScriptValueInterfaceTemplate):
* bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.h:

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

9 years agoNew chromium expected results after r104208.
ojan@chromium.org [Thu, 5 Jan 2012 23:45:08 +0000 (23:45 +0000)]
New chromium expected results after r104208.

* platform/chromium-linux/fast/table/032-expected.png: Removed.
* platform/chromium-linux/tables/mozilla/bugs/bug55694-expected.png:
* platform/chromium-mac-leopard/fast/table/032-expected.png:
* platform/chromium-mac-leopard/fast/table/032-expected.txt: Added.
* platform/chromium-mac-leopard/tables/mozilla/bugs/bug55694-expected.png:
* platform/chromium-mac-snowleopard/tables/mozilla/bugs/bug55694-expected.png: Added.
* platform/chromium-mac/tables/mozilla/bugs/bug55694-expected.png: Removed.
* platform/chromium-win-xp/fast/table/032-expected.png: Added.
* platform/chromium-win-xp/fast/table/032-expected.txt: Renamed from LayoutTests/platform/chromium-win/fast/table/032-expected.txt.
* platform/chromium-win/fast/table/032-expected.png:
* platform/chromium-win/tables/mozilla/bugs/bug55694-expected.png:
* platform/chromium-win/tables/mozilla/bugs/bug55694-expected.txt:

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

9 years agoIntroduce Platform namespace for WebCore/platform
abarth@webkit.org [Thu, 5 Jan 2012 23:11:45 +0000 (23:11 +0000)]
Introduce Platform namespace for WebCore/platform
https://bugs.webkit.org/show_bug.cgi?id=75653

Reviewed by Eric Seidel.

Source/WebCore:

This patch introduces the Platform namespace for WebCore/platform.
Introducing this namespace will help us find and fix layering
violations in preparation for moving WebCore/platform to Platform.

* platform/SchemeRegistry.cpp:
* platform/SchemeRegistry.h:

Source/WebKit/qt:

* Api/qwebpage.cpp:
(QWebPage::acceptNavigationRequest):

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

9 years agowebkitpy: clean up port factory methods
dpranke@chromium.org [Thu, 5 Jan 2012 23:07:33 +0000 (23:07 +0000)]
webkitpy: clean up port factory methods
https://bugs.webkit.org/show_bug.cgi?id=75590

Reviewed by Eric Seidel.

This change consolidates much of the "factory method" logic
of determining which port objects to create for a given set
of configurations by merging the separate factory methods in
chromium_gpu and google_chrome into PortFactory so that at least
all of the logic is in one place.

* Scripts/webkitpy/layout_tests/port/chromium_gpu.py:
* Scripts/webkitpy/layout_tests/port/chromium_gpu_unittest.py:
* Scripts/webkitpy/layout_tests/port/factory.py:
(_port_name_from_arguments_and_options):
(get):
* Scripts/webkitpy/layout_tests/port/factory_unittest.py:
(test_google_chrome):
* Scripts/webkitpy/layout_tests/port/google_chrome.py:
(GoogleChromeLinux32Port):
(GoogleChromeLinux32Port.baseline_search_path):
(test_expectations_overrides):
(architecture):
(GoogleChromeLinux64Port):
(GoogleChromeLinux64Port.baseline_search_path):
(GoogleChromeMacPort):
(GoogleChromeMacPort.baseline_search_path):
(GoogleChromeWinPort):
(GoogleChromeWinPort.baseline_search_path):
* Scripts/webkitpy/layout_tests/port/google_chrome_unittest.py:
(_verify_baseline_path):

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

9 years agoREGRESSION (r98912-r99538): Crash in WebKit::WebFrameLoaderClient::didDetectXSS
ap@apple.com [Thu, 5 Jan 2012 23:04:25 +0000 (23:04 +0000)]
REGRESSION (r98912-r99538): Crash in WebKit::WebFrameLoaderClient::didDetectXSS
https://bugs.webkit.org/show_bug.cgi?id=75578

Reviewed by Daniel Bates.

* WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.cpp:
(WebKit::InjectedBundlePageLoaderClient::didDetectXSSForFrame):
Check for a correct struct member existence.

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

9 years agoRefined the fast path for StringImpl::hash()
ggaren@apple.com [Thu, 5 Jan 2012 22:30:50 +0000 (22:30 +0000)]
Refined the fast path for StringImpl::hash()
https://bugs.webkit.org/show_bug.cgi?id=75178

Reviewed by Darin Adler.

Moved the hash calculation code into an out-of-line function to clean up
the hot path.

No measurable benchmark change, but this knocks some samples off in
Instruments, and I think this is a step toward removing -fomit-frame-pointer.

* wtf/text/StringImpl.cpp:
(WTF::StringImpl::hashSlowCase):
* wtf/text/StringImpl.h:
(WTF::StringImpl::hash): The patch.

* wtf/text/StringStatics.cpp:
(WTF::StringImpl::hashSlowCase): Abide by the cockamamie Windows build
scheme, which requires all out-of-line StringImpl functions used by
WebCore be defined in this file instead of StringImpl.cpp. (See http://trac.webkit.org/changeset/59187.)

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

9 years agoUnreviewed: Updating expecxtations for fast/media/viewport-media-query.
dslomov@google.com [Thu, 5 Jan 2012 22:29:07 +0000 (22:29 +0000)]
Unreviewed: Updating expecxtations for fast/media/viewport-media-query.
My understanding of the semantics was a bit off.

* platform/chromium/test_expectations.txt:

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

9 years agoLiteral tab in JSONString fails
barraclough@apple.com [Thu, 5 Jan 2012 21:56:26 +0000 (21:56 +0000)]
Literal tab in JSONString fails
https://bugs.webkit.org/show_bug.cgi?id=71772

Reviewed by Oliver Hunt.

rfc4627 does not allow literal tab characters in JSON source.

Source/JavaScriptCore:

* runtime/LiteralParser.cpp:
(JSC::isSafeStringCharacter):
    - do not allow literal tab in StrictJSON mode.

LayoutTests:

* fast/js/JSON-parse-expected.txt:
* fast/js/resources/JSON-parse.js:
(createTests.result):
    - Updated expected results.

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

9 years agoInserting nodes is slow due to Node::notifyNodeListsAttributeChanged (20%+)
rniwa@webkit.org [Thu, 5 Jan 2012 21:48:50 +0000 (21:48 +0000)]
Inserting nodes is slow due to Node::notifyNodeListsAttributeChanged (20%+)
https://bugs.webkit.org/show_bug.cgi?id=73853

Reviewed by Antti Koivisto.

Lazily invalidate the node list caches instead of invaliding them at the time of modification. We use
the DOM tree version to detect whether caches need to be invalidated or not. We now invalidate caches more
frequently after this patch (in particular, invalidates caches that are stored on nodes not present in
the ancestry of the modified nodes); however, our study on major Web sites such as Gmail, Facebook, Twitter,
etc... indicate that about 1% of real-world usage benefits from keeping the caches alive across different
DOM tree versions.

In order to invalidate caches lazily, this patch adds replaces the type of m_caches in DynamicSubtreeNodeList
by DynamicSubtreeNodeList::SubtreeCaches which encapsulates member variables in DynamicNodeList::Caches and
invalidates values as needed. Also this change allows m_caches to be allocated as a part of
DynamicSubtreeNodeList instead of a separate ref-counted object.

* dom/Attr.cpp:
(WebCore::Attr::setValue):
(WebCore::Attr::childrenChanged):
* dom/DynamicNodeList.cpp:
(WebCore::DynamicSubtreeNodeList::DynamicSubtreeNodeList):
(WebCore::DynamicSubtreeNodeList::length):
(WebCore::DynamicSubtreeNodeList::itemForwardsFromCurrent):
(WebCore::DynamicSubtreeNodeList::itemBackwardsFromCurrent):
(WebCore::DynamicSubtreeNodeList::item):
(WebCore::DynamicSubtreeNodeList::invalidateCache):
(WebCore::DynamicNodeList::Caches::create):
(WebCore::DynamicNodeList::Caches::reset):
* dom/DynamicNodeList.h:
(WebCore::DynamicSubtreeNodeList::SubtreeCaches::SubtreeCaches): Added.
(WebCore::DynamicSubtreeNodeList::SubtreeCaches::isLengthCacheValid): Added.
(WebCore::DynamicSubtreeNodeList::SubtreeCaches::isItemCacheValid): Added.
(WebCore::DynamicSubtreeNodeList::SubtreeCaches::cachedLength): Added.
(WebCore::DynamicSubtreeNodeList::SubtreeCaches::cachedItem): Added.
(WebCore::DynamicSubtreeNodeList::SubtreeCaches::cachedItemOffset): Added.
(WebCore::DynamicSubtreeNodeList::SubtreeCaches::setLengthCache): Added.
(WebCore::DynamicSubtreeNodeList::SubtreeCaches::setItemCache): Added.
(WebCore::DynamicSubtreeNodeList::SubtreeCaches::reset): Added.
(WebCore::DynamicSubtreeNodeList::SubtreeCaches::domVersionIsConsistent): Added.
* dom/Element.cpp:
(WebCore::Element::updateAfterAttributeChanged):
* dom/Node.cpp:
(WebCore::Node::setTreeScopeRecursively): Clear caches when a node moves from one document to another.
(WebCore::Node::invalidateNodeListsCacheAfterAttributeChanged): Only clears child node list of Attr.
(WebCore::Node::invalidateNodeListsCacheAfterChildrenChanged): Only clears child node list.
(WebCore::NodeListsNodeData::invalidateCaches): Merged with invalidateCachesThatDependOnAttributes.
* dom/Node.h:
* dom/NodeRareData.h:
* html/HTMLElement.cpp:
(WebCore::HTMLElement::parseMappedAttribute):
* html/HTMLLabelElement.cpp:
* html/HTMLLabelElement.h:

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

9 years ago[chromium][aura] WebExternalTextureLayerImpl::drawsContent() returns incorrect value...
wjmaclean@chromium.org [Thu, 5 Jan 2012 21:41:04 +0000 (21:41 +0000)]
[chromium][aura] WebExternalTextureLayerImpl::drawsContent() returns incorrect value, causing accelerated content to not display in Aura desktop
https://bugs.webkit.org/show_bug.cgi?id=75551

Reviewed by James Robinson.

* WebKit.gypi:
* src/WebExternalTextureLayerImpl.cpp:
(WebKit::WebExternalTextureLayerImpl::WebExternalTextureLayerImpl):
* tests/WebExternalTextureLayerImplTest.cpp: Copied from Source/WebKit/chromium/src/WebExternalTextureLayerImpl.cpp.

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

9 years agoIE quirk for percentage size on a table element doesn't work with orthogonal writing...
ojan@chromium.org [Thu, 5 Jan 2012 21:39:02 +0000 (21:39 +0000)]
IE quirk for percentage size on a table element doesn't work with orthogonal writing modes
https://bugs.webkit.org/show_bug.cgi?id=70195

Reviewed by Eric Seidel.

Source/WebCore:

Remove this quirk entirely. Mozilla and Opera don't implement it and IE
doesn't restrict the quirk to standards mode. As it's unlikely for
webkit-only content to hit this quirk (e.g. use tables for layout),
it should be relatively safe to match Mozilla/Opera here.

Test: fast/writing-mode/table-percent-width-quirk.html

* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::computeBlockPreferredLogicalWidths):

LayoutTests:

* fast/table/032.html:
* fast/writing-mode/table-percent-width-quirk-expected.png: Added.
* fast/writing-mode/table-percent-width-quirk-expected.txt: Added.
* fast/writing-mode/table-percent-width-quirk.html: Added.
* platform/mac/fast/table/032-expected.png:
* platform/mac/fast/table/032-expected.txt:
* platform/mac/tables/mozilla/bugs/bug55694-expected.png:
* platform/mac/tables/mozilla/bugs/bug55694-expected.txt:

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

9 years agoReplace webkitpy.common.system.filesystem.file_path_as_url with webkitpy.common.syste...
jochen@chromium.org [Thu, 5 Jan 2012 21:25:23 +0000 (21:25 +0000)]
Replace webkitpy.common.system.filesystem.file_path_as_url with webkitpy.common.system.path.abspath_to_uri
https://bugs.webkit.org/show_bug.cgi?id=75617

Reviewed by Dirk Pranke.

* Scripts/webkitpy/common/system/filesystem.py:
(FileSystem.exists):
* Scripts/webkitpy/common/system/filesystem_mock.py:
(MockFileSystem.exists):
* Scripts/webkitpy/common/system/filesystem_unittest.py:
(GenericFileSystemTests.teardown_generic_test_dir):
* Scripts/webkitpy/layout_tests/port/base.py:
(Port.to.show_results_html_file):
* Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:
(MainTest.test_results_directory_absolute):

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

9 years ago[chromium] Add CCTimer class for the compositor
nduca@chromium.org [Thu, 5 Jan 2012 20:53:18 +0000 (20:53 +0000)]
[chromium] Add CCTimer class for the compositor
https://bugs.webkit.org/show_bug.cgi?id=74769

Patch by Tien Ren Chen <trchen@chromium.org> on 2012-01-05
Reviewed by James Robinson.

Add a simple timer class for CCThread that the timered task can be
manually cancelled.

Source/WebCore:

* WebCore.gypi:
* platform/graphics/chromium/cc/CCTimer.cpp: Added.
(WebCore::CCTimerTask::CCTimerTask):
(WebCore::CCTimerTask::~CCTimerTask):
(WebCore::CCTimerTask::performTask):
(WebCore::CCTimer::CCTimer):
(WebCore::CCTimer::~CCTimer):
(WebCore::CCTimer::startOneShot):
(WebCore::CCTimer::stop):
* platform/graphics/chromium/cc/CCTimer.h: Added.
(WebCore::CCTimerClient::~CCTimerClient):
(WebCore::CCTimer::isActive):

Source/WebKit/chromium:

* WebKit.gypi:
* tests/CCTimerTest.cpp: Added.
(WebKitTests::CCTimerTest::CCTimerTest):
(WebKitTests::CCTimerTest::onTimerFired):
(WebKitTests::TEST_F):

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

9 years ago WK2: Safari fails to open a PostScript file in Preview from context menu
ap@apple.com [Thu, 5 Jan 2012 20:48:17 +0000 (20:48 +0000)]
    WK2: Safari fails to open a PostScript file in Preview from context menu
        https://bugs.webkit.org/show_bug.cgi?id=75643
        <rdar://problem/9823430>

        Reviewed by Dan Bernstein.

        * UIProcess/API/mac/PDFViewController.mm: (WebKit::PDFViewController::setPDFDocumentData):
        Append ".pdf" to file name when converting data, as suggested file name is created for
        original MIME type.

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

9 years agoImplement temporal dimension portion of Media Fragments URI specification for video...
eric.carlson@apple.com [Thu, 5 Jan 2012 20:44:57 +0000 (20:44 +0000)]
Implement temporal dimension portion of Media Fragments URI specification for video/audio
https://bugs.webkit.org/show_bug.cgi?id=65838

Reviewed by Sam Weinig.

Source/WebCore:

Tests: media/media-fragments/TC0001-TC0009.html
       media/media-fragments/TC0010-TC0019.html
       media/media-fragments/TC0020-TC0029.html
       media/media-fragments/TC0030-TC0039.html
       media/media-fragments/TC0040-TC0049.html
       media/media-fragments/TC0050-TC0059.html
       media/media-fragments/TC0060-TC0069.html
       media/media-fragments/TC0070-TC0079.html
       media/media-fragments/TC0080-TC0089.html
       media/media-fragments/TC0090-TC0099.html

* CMakeLists.txt: Add fragment parser files.
* GNUmakefile.list.am: Ditto.
* Target.pri: Ditto.
* WebCore.gypi: Ditto.
* WebCore.vcproj/WebCore.vcproj: Ditto.
* WebCore.xcodeproj/project.pbxproj: Ditto.

* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::HTMLMediaElement): Initialize m_fragmentStartTime and m_fragmentEndTime.
(WebCore::HTMLMediaElement::setReadyState): Check for and parse a media fragment once readyState
    reaches HAVE_METADATA, apply it once it reaches HAVE_CURRENT_DATA.
(WebCore::HTMLMediaElement::initialTime): Return the fragment start time if possible.
(WebCore::HTMLMediaElement::playbackProgressTimerFired): Pause if the time is >= the fragment
    end time.
(WebCore::HTMLMediaElement::prepareMediaFragmentURI): Look for a temporal fragment.
(WebCore::HTMLMediaElement::applyMediaFragmentURI): Apply the fragment, if any.
* html/HTMLMediaElement.h:

* html/MediaFragmentURIParser.cpp: Added.
(WebCore::skipWhiteSpace):
(WebCore::collectDigits):
(WebCore::collectFraction):
(WebCore::MediaFragmentURIParser::invalidTimeValue):
(WebCore::MediaFragmentURIParser::MediaFragmentURIParser):
(WebCore::MediaFragmentURIParser::startTime):
(WebCore::MediaFragmentURIParser::endTime):
(WebCore::MediaFragmentURIParser::parseFragments):
(WebCore::MediaFragmentURIParser::parseTimeFragment):
(WebCore::MediaFragmentURIParser::parseNPTFragment):
(WebCore::MediaFragmentURIParser::parseNPTTime):
* html/MediaFragmentURIParser.h: Added.
(WebCore::MediaFragmentURIParser::~MediaFragmentURIParser):
(WebCore::MediaFragmentURIParser::create):

LayoutTests:

* media/media-fragments: Added.
* media/media-fragments/TC0001-TC0009-expected.txt: Added.
* media/media-fragments/TC0001-TC0009.html: Added.
* media/media-fragments/TC0010-TC0019-expected.txt: Added.
* media/media-fragments/TC0010-TC0019.html: Added.
* media/media-fragments/TC0020-TC0029-expected.txt: Added.
* media/media-fragments/TC0020-TC0029.html: Added.
* media/media-fragments/TC0030-TC0039-expected.txt: Added.
* media/media-fragments/TC0030-TC0039.html: Added.
* media/media-fragments/TC0040-TC0049-expected.txt: Added.
* media/media-fragments/TC0040-TC0049.html: Added.
* media/media-fragments/TC0050-TC0059-expected.txt: Added.
* media/media-fragments/TC0050-TC0059.html: Added.
* media/media-fragments/TC0060-TC0069-expected.txt: Added.
* media/media-fragments/TC0060-TC0069.html: Added.
* media/media-fragments/TC0070-TC0079-expected.txt: Added.
* media/media-fragments/TC0070-TC0079.html: Added.
* media/media-fragments/TC0080-TC0089-expected.txt: Added.
* media/media-fragments/TC0080-TC0089.html: Added.
* media/media-fragments/TC0090-TC0099-expected.txt: Added.
* media/media-fragments/TC0090-TC0099.html: Added.

* media/media-fragments/media-fragments.js: Added.
(canplaythrough):
(setupNextTest):
(nextTestName):
(start):

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

9 years ago[v8] Null pointer exception if a typed array constructor set to a primitive value.
commit-queue@webkit.org [Thu, 5 Jan 2012 20:41:16 +0000 (20:41 +0000)]
[v8] Null pointer exception if a typed array constructor set to a primitive value.
https://bugs.webkit.org/show_bug.cgi?id=75532

Make sure that V8ArrayBufferViewCustomScript.js does not throw exception.

Patch by Ulan Degenbaev <ulan@chromium.org> on 2012-01-05
Reviewed by Kenneth Russell.

* LayoutTests/fast/canvas/webgl/array-buffer-view-crash-when-reassigned-expected.txt: Added.
* LayoutTests/fast/canvas/webgl/array-buffer-view-crash-when-reassigned.html: Added.
* Source/WebCore/bindings/v8/custom/V8ArrayBufferViewCustom.cpp:
* Source/WebCore/bindings/v8/custom/V8ArrayBufferViewCustomScript.js:

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

9 years agoRemove some unnecessary code from old-run-webkit-tests
aroben@apple.com [Thu, 5 Jan 2012 20:28:48 +0000 (20:28 +0000)]
Remove some unnecessary code from old-run-webkit-tests

Thanks to r104187/r104188, we no longer need to set PATH before launching DumpRenderTree or
WebKitTestRunner.

Fixes <http://webkit.org/b/75640> ORWT unnecessarily sets PATH before launching DRT/WTR on
Windows

Reviewed by Eric Seidel.

* Scripts/old-run-webkit-tests:
(top level):
(openDumpTool):
Removed calls to setPathForRunningWebKitApp.

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

9 years ago[GTK] [AC] Introduce AcceleratedCompositingContext to isolate different accelerated...
mrobinson@webkit.org [Thu, 5 Jan 2012 20:18:59 +0000 (20:18 +0000)]
[GTK] [AC] Introduce AcceleratedCompositingContext to isolate different accelerated compositing implementations
https://bugs.webkit.org/show_bug.cgi?id=75519

Reviewed by Alejandro G. Castro.

Add an AcceleratedCompositingContext which will isolate all the different accelerated compositing
implementations from one another. For right now this just includes the Clutter version.

* GNUmakefile.am: Add the new files to the source list.
* WebCoreSupport/AcceleratedCompositingContext.h: Added.
* WebCoreSupport/AcceleratedCompositingContextClutter.cpp: Added. Existing
clutter AC code has moved here.
* WebCoreSupport/ChromeClientGtk.cpp:
(WebKit::ChromeClient::attachRootGraphicsLayer): Use the new AccleratedCompositingContext now
instead of calling into the WebView.
(WebKit::ChromeClient::setNeedsOneShotDrawingSynchronization):Ditto.
(WebKit::ChromeClient::scheduleCompositingLayerSync): Ditto.
* webkit/webkitwebview.cpp:
(webkit_web_view_size_allocate): Call in the ACContext.
(webkit_web_view_init): Initialize the ACContext.
* webkit/webkitwebviewprivate.h: Add the ACContext as a private member.

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

9 years ago[Qt][WK2] Implement custom URL schemes defined in QML.
zeno.albisser@nokia.com [Thu, 5 Jan 2012 20:04:33 +0000 (20:04 +0000)]
[Qt][WK2] Implement custom URL schemes defined in QML.
https://bugs.webkit.org/show_bug.cgi?id=74931

.:

Add new classes to the export map.

Reviewed by Kenneth Rohde Christiansen.

* Source/qtwebkit-export.map:

Source/WebKit/qt:

Make classes QQuickUrlSchemeDelegate, QQuickNetworkRequest
and QQuickNetworkReply accessible from QML.

Reviewed by Kenneth Rohde Christiansen.

* declarative/experimental/experimental.pri:
* declarative/experimental/plugin.cpp:
* declarative/public.pri:

Source/WebKit2:

Allow creation of custom UrlSchemeDelegates from QML.
A UrlSchemeDelegate contains a handler signal that is triggered
when a url matching the defined scheme is requested.
To allow for this a derivation of QNetworkAccessManager
is necessary.
The request is then handled in QML/JS and a reply
is sent back from the UIProcess to the WebProcess.

Reviewed by Kenneth Rohde Christiansen.

* Shared/qt/QtNetworkReplyData.cpp: Added.
(WebKit::QtNetworkReplyData::QtNetworkReplyData):
(WebKit::QtNetworkReplyData::encode):
(WebKit::QtNetworkReplyData::decode):
* Shared/qt/QtNetworkReplyData.h: Added.
* Shared/qt/QtNetworkRequestData.cpp: Added.
(WebKit::QtNetworkRequestData::QtNetworkRequestData):
(WebKit::QtNetworkRequestData::encode):
(WebKit::QtNetworkRequestData::decode):
* Shared/qt/QtNetworkRequestData.h: Added.
* Target.pri:
* UIProcess/API/qt/qquicknetworkreply.cpp: Added.
(QQuickNetworkReply::QQuickNetworkReply):
(QQuickNetworkReply::contentType):
(QQuickNetworkReply::setContentType):
(QQuickNetworkReply::operation):
(QQuickNetworkReply::setOperation):
(QQuickNetworkReply::contentDisposition):
(QQuickNetworkReply::setContentDisposition):
(QQuickNetworkReply::location):
(QQuickNetworkReply::setLocation):
(QQuickNetworkReply::lastModified):
(QQuickNetworkReply::setLastModified):
(QQuickNetworkReply::cookie):
(QQuickNetworkReply::setCookie):
(QQuickNetworkReply::userAgent):
(QQuickNetworkReply::setUserAgent):
(QQuickNetworkReply::server):
(QQuickNetworkReply::setServer):
(QQuickNetworkReply::data):
(QQuickNetworkReply::setData):
(QQuickNetworkReply::send):
(QQuickNetworkReply::networkRequestData):
(QQuickNetworkReply::setNetworkRequestData):
(QQuickNetworkReply::networkReplyData):
* UIProcess/API/qt/qquicknetworkreply_p.h: Added.
* UIProcess/API/qt/qquicknetworkrequest_p.h: Added.
* UIProcess/API/qt/qquickurlschemedelegate.cpp: Added.
(QQuickUrlSchemeDelegate::QQuickUrlSchemeDelegate):
(QQuickUrlSchemeDelegate::scheme):
(QQuickUrlSchemeDelegate::setScheme):
(QQuickUrlSchemeDelegate::request):
(QQuickUrlSchemeDelegate::reply):
* UIProcess/API/qt/qquickurlschemedelegate_p.h: Added.
* UIProcess/API/qt/qquickwebview.cpp:
(QQuickWebViewExperimental::QQuickWebViewExperimental):
(QQuickWebViewExperimental::schemeDelegates_At):
(QQuickWebViewExperimental::schemeDelegates_Append):
(QQuickWebViewExperimental::schemeDelegates_Count):
(QQuickWebViewExperimental::schemeDelegates_Clear):
(QQuickWebViewExperimental::schemeDelegates):
(QQuickWebViewExperimental::invokeApplicationSchemeHandler):
(QQuickWebViewExperimental::sendApplicationSchemeReply):
* UIProcess/API/qt/qquickwebview_p.h:
* UIProcess/WebPageProxy.h:
* UIProcess/WebPageProxy.messages.in:
* UIProcess/qt/QtPageClient.cpp:
(QtPageClient::handleApplicationSchemeRequest):
* UIProcess/qt/QtPageClient.h:
* UIProcess/qt/WebPageProxyQt.cpp:
(WebKit::WebPageProxy::registerApplicationScheme):
(WebKit::WebPageProxy::resolveApplicationSchemeRequest):
(WebKit::WebPageProxy::sendApplicationSchemeReply):
* WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
(WebKit::WebFrameLoaderClient::createNetworkingContext):
* WebProcess/WebCoreSupport/qt/WebFrameNetworkingContext.cpp:
* WebProcess/WebCoreSupport/qt/WebFrameNetworkingContext.h:
* WebProcess/WebPage/WebPage.h:
* WebProcess/WebPage/WebPage.messages.in:
* WebProcess/WebPage/qt/WebPageQt.cpp:
(WebKit::WebPage::registerApplicationScheme):
(WebKit::WebPage::receivedApplicationSchemeRequest):
(WebKit::WebPage::applicationSchemeReply):
* WebProcess/qt/QtNetworkAccessManager.cpp: Added.
(WebKit::QtNetworkAccessManager::QtNetworkAccessManager):
(WebKit::QtNetworkAccessManager::obtainOriginatingWebPage):
(WebKit::QtNetworkAccessManager::createRequest):
(WebKit::QtNetworkAccessManager::registerApplicationScheme):
* WebProcess/qt/QtNetworkAccessManager.h: Added.
* WebProcess/qt/QtNetworkReply.cpp: Added.
(WebKit::QtNetworkReply::QtNetworkReply):
(WebKit::QtNetworkReply::setData):
(WebKit::QtNetworkReply::setReplyData):
(WebKit::QtNetworkReply::readData):
(WebKit::QtNetworkReply::bytesAvailable):
(WebKit::QtNetworkReply::setHeader):
(WebKit::QtNetworkReply::abort):
(WebKit::QtNetworkReply::close):
(WebKit::QtNetworkReply::setReadBufferSize):
(WebKit::QtNetworkReply::canReadLine):
(WebKit::QtNetworkReply::finalize):
* WebProcess/qt/QtNetworkReply.h: Added.
* WebProcess/qt/WebProcessQt.cpp:
(WebKit::WebProcess::platformInitializeWebProcess):

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

9 years agoRemove style warning in GraphicsContext3DOpenGL.cpp
commit-queue@webkit.org [Thu, 5 Jan 2012 20:02:19 +0000 (20:02 +0000)]
Remove style warning in GraphicsContext3DOpenGL.cpp
https://bugs.webkit.org/show_bug.cgi?id=75466

Patch by ChangSeok Oh <shivamidow@gmail.com> on 2012-01-05
Reviewed by Kenneth Russell.

Relocated some headers according to alphabetical order & modified indentation.
And used OwnArrayPtr to deal with character array.

No new tests required.

* platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
(WebCore::GraphicsContext3D::getString):
(WebCore::GraphicsContext3D::releaseShaderCompiler):
(WebCore::GraphicsContext3D::getProgramInfoLog):
(WebCore::GraphicsContext3D::getShaderiv):
(WebCore::GraphicsContext3D::getShaderInfoLog):
(WebCore::GraphicsContext3D::getShaderSource):

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

9 years agoTeach NRWT to use run-safari to open results.html on Apple's Windows port
aroben@apple.com [Thu, 5 Jan 2012 19:55:40 +0000 (19:55 +0000)]
Teach NRWT to use run-safari to open results.html on Apple's Windows port

NRWT was trying to use User.open_url, which doesn't work on Cygwin. But run-safari is
better, since we always want to open results.html using the user's build of WebKit, not
whatever their default browser is.

Fixes <http://webkit.org/b/75629> <rdar://problem/10648621> NRWT fails to open results.html
for Apple's Windows port

Reviewed by Eric Seidel.

* Scripts/webkitpy/layout_tests/port/win.py:
(WinPort.show_results_html_file): Changed to use run_safari, like MacPort does. Also removed
an obsolete comment.

* Scripts/webkitpy/layout_tests/port/win_unittest.py:
(WinPortTest.test_show_results_html_file): Updated expected results.

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

9 years agoPrepend Safari.exe's path to the command-line passed to CreateProcess
aroben@apple.com [Thu, 5 Jan 2012 19:55:31 +0000 (19:55 +0000)]
Prepend Safari.exe's path to the command-line passed to CreateProcess

Safari expects the first argument in the command-line to be the path to Safari.exe itself.
This is how things get set up when Safari is launched normally (e.g., by Explorer). Safari
thus ignores the first argument when looking for command-line arguments. WebKitLauncherWin
was not including the path to Safari.exe in the command-line, so Safari was ignoring the
first argument that WebKitLauncherWin was trying to pass to it.

Fixes <http://webkit.org/b/56571> First argument passed to WebKit.exe is ignored by Safari

Reviewed by Steve Falkenburg.

* WebKitLauncherWin/WebKitLauncherWin.cpp:
(_tWinMain): Construct a command-line for CreateProcess that first contains a double-quoted
path to Safari.exe, then contains any arguments that were passed to WebKitLauncherWin.

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

9 years agoStop using explicit memory management in WebKitLauncherWin
aroben@apple.com [Thu, 5 Jan 2012 19:55:22 +0000 (19:55 +0000)]
Stop using explicit memory management in WebKitLauncherWin

We now use stack-allocated STL objects instead.

Prep work for <http://webkit.org/b/56571> First argument passed to WebKit.exe is ignored by
Safari

Reviewed by Steve Falkenburg.

* WebKitLauncherWin/WebKitLauncherWin.cpp:
(getStringValue):
(applePathFromRegistry):
(safariInstallDir):
(safariBrowserExe):
(_tWinMain):
Changed to use stack-allocated STL objects instead of malloc/free.

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

9 years agoTurn WebKitTestRunner into a stub .exe launcher and a .dll that contains all the...
aroben@apple.com [Thu, 5 Jan 2012 19:54:46 +0000 (19:54 +0000)]
Turn WebKitTestRunner into a stub .exe launcher and a .dll that contains all the real code

This allows us to add the Safari and Apple Application Support directories to PATH before
trying to load WebKit so that SafariTheme.dll, CoreGraphics.dll and friends can be found.

Fixes <http://webkit.org/b/75486> <rdar://problem/10638124> NRWT fails to launch Apple's
Windows port of DumpRenderTree/WebKitTestRunner

Reviewed by Steve Falkenburg.

Tools:

* WebKitTestRunner/WebKitTestRunner.sln: Added WebKitTestRunnerLauncher and
ImageDiffLauncher, which I forgot to add to this .sln when that project was created.

* WebKitTestRunner/Configurations/WebKitTestRunnerCommon.vsprops:
* WebKitTestRunner/win/WebKitTestRunner.vcproj:
Changed to build WebKitTestRunner.dll instead of WebKitTestRunner.exe.

* WebKitTestRunner/win/WebKitTestRunnerLauncher.vcproj: Copied from
Tools/WebKitTestRunner/win/WebKitTestRunner.vcproj but changed to build
the stub launcher.

* WebKitTestRunner/win/WebKitTestRunnerLauncherCommon.vsprops: Added.
* WebKitTestRunner/win/WebKitTestRunnerLauncherDebug.vsprops: Added.
* WebKitTestRunner/win/WebKitTestRunnerLauncherDebugAll.vsprops: Added.
* WebKitTestRunner/win/WebKitTestRunnerLauncherDebugCairoCFLite.vsprops: Added.
* WebKitTestRunner/win/WebKitTestRunnerLauncherProduction.vsprops: Added.
* WebKitTestRunner/win/WebKitTestRunnerLauncherRelease.vsprops: Added.
* WebKitTestRunner/win/WebKitTestRunnerLauncherReleaseCairoCFLite.vsprops: Added.

* WebKitTestRunner/win/main.cpp:
(dllLauncherEntryPoint): Renamed from main. This is what the stub launcher calls.

Source/WebKit/win:

Add WebKitTestRunnerLauncher to WebKit.sln.

It builds just after WebKitTestRunner.

* WebKit.vcproj/WebKit.sln:

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

9 years agoTurn DumpRenderTree into a stub .exe launcher and a .dll that contains all the real...
aroben@apple.com [Thu, 5 Jan 2012 19:53:47 +0000 (19:53 +0000)]
Turn DumpRenderTree into a stub .exe launcher and a .dll that contains all the real code

This allows us to add the Safari and Apple Application Support directories to PATH before
trying to load WebKit so that SafariTheme.dll, CoreGraphics.dll and friends can be found.

Part of <http://webkit.org/b/75486> <rdar://problem/10638124> NRWT fails to launch Apple's
Windows port of DumpRenderTree/WebKitTestRunner

Reviewed by Steve Falkenburg.

Tools:

* DumpRenderTree/DumpRenderTree.sln: Added DumpRenderTreeLauncher and ImageDiffLauncher,
which I forgot to add to this .sln when that project was created.

* DumpRenderTree/win/DumpRenderTree.cpp:
(dllLauncherEntryPoint): Renamed from main. This is what the stub launcher calls.

* DumpRenderTree/win/DumpRenderTree.vcproj:
* DumpRenderTree/win/DumpRenderTreeCommon.vsprops:
Changed to build DumpRenderTree.dll instead of DumpRenderTree.exe.

* DumpRenderTree/win/DumpRenderTreeLauncher.vcproj: Added.
* DumpRenderTree/win/DumpRenderTreeLauncherCommon.vsprops: Added.
* DumpRenderTree/win/DumpRenderTreeLauncherDebug.vsprops: Added.
* DumpRenderTree/win/DumpRenderTreeLauncherDebugAll.vsprops: Added.
* DumpRenderTree/win/DumpRenderTreeLauncherDebugCairoCFLite.vsprops: Added.
* DumpRenderTree/win/DumpRenderTreeLauncherProduction.vsprops: Added.
* DumpRenderTree/win/DumpRenderTreeLauncherRelease.vsprops: Added.
* DumpRenderTree/win/DumpRenderTreeLauncherReleaseCairoCFLite.vsprops: Added.

* win/DLLLauncher/DLLLauncherMain.cpp:
(modifyPath): Moved code to modify PATH here from main/wWinMain. Changed to also prepend
Safari's directory to PATH so that SafariTheme.dll can be found.

(main):
(wWinMain):
Changed to use the new modifyPath function.

Source/WebKit/win:

Add DumpRenderTreeLauncher to WebKit.sln.

It builds just after DumpRenderTree.

* WebKit.vcproj/WebKit.sln:

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

9 years agoUnreviewed, skip file-reader-event-listener.html on qt and efl.
jianli@chromium.org [Thu, 5 Jan 2012 19:35:46 +0000 (19:35 +0000)]
Unreviewed, skip file-reader-event-listener.html on qt and efl.

* platform/efl/Skipped:
* platform/qt/Skipped:

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

9 years agopush/shift fifo may consume excessive memory
barraclough@apple.com [Thu, 5 Jan 2012 19:32:42 +0000 (19:32 +0000)]
push/shift fifo may consume excessive memory
https://bugs.webkit.org/show_bug.cgi?id=75610

Reviewed by Sam Weinig.

Array object commonly store data in a vector, consisting of a portion that is
in use, a pre-capacity (m_indexBias) and a post-capacity (the delta between
m_length and m_vectorLength). Calls to shift with grow the pre-capacity, and
the current algorithm for increaseVectorLength (used by push, or [[Put]]) will
never shrink the pre-capacity, so a push/shift fifo may consume an inordinate
amount of memory, whilst having a relatively small active length.

* runtime/JSArray.cpp:
(JSC::JSArray::increaseVectorLength):
    - If m_indexBias is non-zero, decay it over time.

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

9 years agoSource/WebCore: Crash due to reparenting of relpositioned object under anonymous...
commit-queue@webkit.org [Thu, 5 Jan 2012 19:24:49 +0000 (19:24 +0000)]
Source/WebCore: Crash due to reparenting of relpositioned object under anonymous block
https://bugs.webkit.org/show_bug.cgi?id=70848

The associated test case creates a condition where a relative
positioned renderer is a descendant of an anonymous block for a
table column. The anonymous block is the containingBlock() for the
relpositioned renderer. Removal of a div causes the anonymous blocks to
be merged, and the renderer becomes a descendant of a different block.
Since the new containingBlock() has an empty positionedObject list,
the relpositioned renderer does not get layout after being dirtied.

This patch changes containingBlock() so that it returns the container
of an anonymous block for positioned objects, not the anonymous
block itself. It also adds an ASSERT to insertPositionedObject()
to flag any other cases where something is trying to create a
positioned object list on an anonymous block.

Patch by Ken Buchanan <kenrb@chromium.org> on 2012-01-05
Reviewed by David Hyatt.

* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::insertPositionedObject):
* rendering/RenderObject.cpp:
(WebCore::RenderObject::containingBlock):

LayoutTests: Crash due to reparenting of relpositioned object in table
https://bugs.webkit.org/show_bug.cgi?id=70848

Adding test that exercises the crash condition in bug 70848.

Patch by Ken Buchanan <kenrb@chromium.org> on 2012-01-05
Reviewed by David Hyatt.

* fast/css/relative-position-replaced-in-table-display-crash-expected.txt: Added
* fast/css/relative-position-replaced-in-table-display-crash.html: Added

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

9 years agoUnreviewed: filed WK75633 and updated expectations
dslomov@google.com [Thu, 5 Jan 2012 19:15:28 +0000 (19:15 +0000)]
Unreviewed: filed WK75633 and updated expectations

* platform/chromium/test_expectations.txt:

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

9 years agoWebFrameLoaderClient::userAgent does unnecessary NSString/NSURL conversions
psolanki@apple.com [Thu, 5 Jan 2012 19:03:26 +0000 (19:03 +0000)]
WebFrameLoaderClient::userAgent does unnecessary NSString/NSURL conversions
https://bugs.webkit.org/show_bug.cgi?id=75586

Reviewed by Alexey Proskuryakov.

We do unnecessary KURL->NSURL* and String<->NSString* when calling [WebView
userAgentForURL:] from WebFrameLoaderClient::userAgent. Instead we add a separate function,
_userAgentString that returns a WTF::String to make this call faster.

* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::userAgent):
* WebView/WebView.mm:
(-[WebView _userAgentString]):
(-[WebView userAgentForURL:]):
* WebView/WebViewInternal.h:

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

9 years agoFileReader needs addEventListener
jianli@chromium.org [Thu, 5 Jan 2012 18:59:00 +0000 (18:59 +0000)]
FileReader needs addEventListener
https://bugs.webkit.org/show_bug.cgi?id=42723

Reviewed by Adam Barth.

Source/WebCore:

Test: fast/files/file-reader-event-listener.html

* fileapi/FileReader.idl:

LayoutTests:

* fast/files/file-reader-event-listener-expected.txt: Added.
* fast/files/file-reader-event-listener.html: Added.

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

9 years agoRemove deprecated calls from CookieJarCFNet.cpp
psolanki@apple.com [Thu, 5 Jan 2012 18:38:51 +0000 (18:38 +0000)]
Remove deprecated calls from CookieJarCFNet.cpp
https://bugs.webkit.org/show_bug.cgi?id=68958

Reviewed by Sam Weinig.

* platform/network/cf/CookieJarCFNet.cpp:
(WebCore::cookieDomain):
(WebCore::cookieExpirationTime):
(WebCore::cookieName):
(WebCore::cookiePath):
(WebCore::cookieValue):

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

9 years ago[chromium] Unreviewed, tighted up the expectations for some perf tests.
tony@chromium.org [Thu, 5 Jan 2012 18:28:04 +0000 (18:28 +0000)]
[chromium] Unreviewed, tighted up the expectations for some perf tests.

* platform/chromium/test_expectations.txt:

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

9 years ago[chromium] Create unit tests for CCTiledLayerImpl
enne@google.com [Thu, 5 Jan 2012 18:26:36 +0000 (18:26 +0000)]
[chromium] Create unit tests for CCTiledLayerImpl
https://bugs.webkit.org/show_bug.cgi?id=75557

Reviewed by James Robinson.

Add some quad generation tests for tiled layers.

* WebKit.gypi:
* tests/CCTiledLayerImplTest.cpp: Added.
(WebCore::createLayer):
(WebCore::TEST):
(WebCore::completelyContains):
(WebCore::getQuads):
(WebCore::verifyQuadsExactlyCoverRect):
(WebCore::coverageVisibleRectOnTileBoundaries):
(WebCore::coverageVisibleRectIntersectsTiles):
(WebCore::coverageVisibleRectIntersectsBounds):

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

9 years agoMove scalePageBy from eventSender to window.internals
fsamuel@chromium.org [Thu, 5 Jan 2012 18:16:46 +0000 (18:16 +0000)]
Move scalePageBy from eventSender to window.internals
https://bugs.webkit.org/show_bug.cgi?id=64512

Reviewed by Simon Fraser.

.:

* Source/autotools/symbols.filter:

Source/WebCore:

Added setPageScaleFactor to window.internals.
Renamed window.internals.getPageScaleFactor to window.internals.pageScaleFactor
to match the webkit style.

* testing/Internals.cpp:
(WebCore::Internals::pageScaleFactor):
(WebCore::Internals::setPageScaleFactor):
* testing/Internals.h:
* testing/Internals.idl:

Source/WebKit2:

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

LayoutTests:

Updated layout tests to use window.internals.setPageScaleFactor.

* compositing/geometry/fixed-position-composited-page-scale-down.html:
* compositing/geometry/fixed-position-composited-page-scale.html:
* compositing/geometry/fixed-position-iframe-composited-page-scale-down.html:
* compositing/geometry/fixed-position-iframe-composited-page-scale.html:
* compositing/geometry/fixed-position-transform-composited-page-scale-down.html:
* compositing/geometry/fixed-position-transform-composited-page-scale.html:
* compositing/scaling/tiled-layer-recursion.html:
* fast/dom/Element/scale-page-bounding-client-rect.html:
* fast/dom/Element/scale-page-client-rects.html:
* fast/dom/Range/scale-page-bounding-client-rect.html:
* fast/dom/Range/scale-page-client-rects.html:
* fast/events/scale-and-scroll-body.html:
* fast/events/scale-and-scroll-iframe-body.html:
* fast/events/scale-and-scroll-iframe-window.html:
* fast/events/scale-and-scroll-window.html:
* fast/events/script-tests/page-scaled-mouse-click-iframe.js:
(iframeLoaded):
* fast/events/script-tests/page-scaled-mouse-click.js:
* fast/events/scroll-in-scaled-page-with-overflow-hidden.html:
* fast/events/touch/page-scaled-touch-gesture-click.html:
* fast/frames/frame-set-rotation-hit.html:
* fast/frames/frame-set-scaling-hit.html:
* fast/frames/iframe-double-scale-contents.html:
* fast/repaint/background-scaling.html:
* fast/repaint/scale-page-shrink.html:
* fast/transforms/selection-bounds-in-transformed-view.html:

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

9 years ago[Skia Mac] Rounded bezel style button needs one more local graphics context to scale
caryclark@google.com [Thu, 5 Jan 2012 18:08:58 +0000 (18:08 +0000)]
[Skia Mac] Rounded bezel style button needs one more local graphics context to scale
https://bugs.webkit.org/show_bug.cgi?id=75623
http://code.google.com/p/chromium/issues/detail?id=108749

In paintButton(), the local context is set up first, and later the context is
scaled if there's a zoomFactor. Skia creates the CoreGraphics context to draw the
button into without that scale factor. To fix this, another local context is added
after the parameter context scale, before the button draw. The first local context
is still required to restore the parameter context state.

Reviewed by Stephen White.

* platform/chromium/ThemeChromiumMac.mm:
(WebCore::paintButton):

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

9 years agoUnreviewed: Chromium expectations update.
dslomov@google.com [Thu, 5 Jan 2012 17:52:42 +0000 (17:52 +0000)]
Unreviewed: Chromium expectations update.
Filed http://crbug.com/109276 and ignored appcache failure on Linux.
Failures seem intermittent in appcache so might need to ignore more tests.

* platform/chromium/test_expectations.txt:

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

9 years agoMade Debug/Release builds of gtest build only for the active architecture.
mitz@apple.com [Thu, 5 Jan 2012 17:49:06 +0000 (17:49 +0000)]
Made Debug/Release builds of gtest build only for the active architecture.

Reviewed by Dave Kilzer.

* gtest/xcode/Config/DebugProject.xcconfig:
* gtest/xcode/Config/ProductionProject.xcconfig:
* gtest/xcode/Config/ReleaseProject.xcconfig:

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

9 years ago[Chromium] Expectations for svg/carto.net/button.svg can be updated
commit-queue@webkit.org [Thu, 5 Jan 2012 17:31:24 +0000 (17:31 +0000)]
[Chromium] Expectations for svg/carto.net/button.svg can be updated
https://bugs.webkit.org/show_bug.cgi?id=75621

Unreviewed Chromium test expectations update.

Patch by Stephen Chenney <schenney@chromium.org> on 2012-01-05

* platform/chromium-linux-x86/svg/carto.net: Removed.
* platform/chromium/test_expectations.txt:

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

9 years agogetComputedStyle for background is not implemented.
alexis.menard@openbossa.org [Thu, 5 Jan 2012 17:29:54 +0000 (17:29 +0000)]
getComputedStyle for background is not implemented.
https://bugs.webkit.org/show_bug.cgi?id=75539

Reviewed by Tony Chang.

Source/WebCore:

Implement getComputedStyle for background.

Test: fast/css/getComputedStyle/getComputedStyle-background-shorthand.html

* css/CSSComputedStyleDeclaration.cpp:
(WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):

LayoutTests:

Add new tests to make sure we return the correct values.

* fast/css/getComputedStyle/getComputedStyle-background-shorthand-expected.txt: Added.
* fast/css/getComputedStyle/getComputedStyle-background-shorthand.html: Added.

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

9 years agoPass WebFrame instead of WebCore::Frame to the WebKit2 specific FrameNetworkingContext
commit-queue@webkit.org [Thu, 5 Jan 2012 17:02:21 +0000 (17:02 +0000)]
Pass WebFrame instead of WebCore::Frame to the WebKit2 specific FrameNetworkingContext
https://bugs.webkit.org/show_bug.cgi?id=75550

Make the WebKit2 FrameNetworkingContext implementation store the
WebFrame instead of the WebCore::Frame as this is needed for the Qt
port to implement a.o. HTTP autentication and SSL support.

As the WebFrameNetworkingContext is partly shared across all WebKit2 ports,
all port specific files have been modified.

For the Qt implementation of FrameNetworkingContext, we also set a
property to the originatingObject for the page ID. We also switch to
using an OwnPtr instead of a raw C++ pointer for the
m_originatingObject member.

Based on original patch by Peter Hartmann.

Patch by Alexander Færøy <alexander.faeroy@nokia.com> on 2012-01-05
Reviewed by Kenneth Rohde Christiansen.

* WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
(WebKit::WebFrameLoaderClient::createNetworkingContext):
* WebProcess/WebCoreSupport/efl/WebFrameNetworkingContext.h:
(WebFrameNetworkingContext::create):
(WebFrameNetworkingContext::WebFrameNetworkingContext):
* WebProcess/WebCoreSupport/gtk/WebFrameNetworkingContext.h:
(WebFrameNetworkingContext::create):
(WebFrameNetworkingContext::WebFrameNetworkingContext):
* WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.h:
(WebKit::WebFrameNetworkingContext::create):
(WebKit::WebFrameNetworkingContext::WebFrameNetworkingContext):
* WebProcess/WebCoreSupport/qt/WebFrameNetworkingContext.cpp:
(WebCore::WebFrameNetworkingContext::WebFrameNetworkingContext):
(WebCore::WebFrameNetworkingContext::~WebFrameNetworkingContext):
(WebCore::WebFrameNetworkingContext::create):
* WebProcess/WebCoreSupport/qt/WebFrameNetworkingContext.h:
* WebProcess/WebCoreSupport/win/WebFrameNetworkingContext.h:
(WebFrameNetworkingContext::create):
(WebFrameNetworkingContext::WebFrameNetworkingContext):

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

9 years ago[Qt] Never enable FontConfig on Mac OS X
commit-queue@webkit.org [Thu, 5 Jan 2012 16:45:48 +0000 (16:45 +0000)]
[Qt] Never enable FontConfig on Mac OS X
https://bugs.webkit.org/show_bug.cgi?id=75616

Patch by Alexander Færøy <alexander.faeroy@nokia.com> on 2012-01-05
Reviewed by Tor Arne Vestbø.

* qmake/mkspecs/features/features.prf:

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

9 years agoUnreviewed, rolling out r104159.
hclam@chromium.org [Thu, 5 Jan 2012 16:39:40 +0000 (16:39 +0000)]
Unreviewed, rolling out r104159.
http://trac.webkit.org/changeset/104159
https://bugs.webkit.org/show_bug.cgi?id=75590

Chromium port GPU tests cannot be executed.

* Scripts/webkitpy/layout_tests/port/chromium_gpu.py:
(get):
(_default_tests_paths):
* Scripts/webkitpy/layout_tests/port/chromium_gpu_unittest.py:
(ChromiumGpuTest.assert_port_works):
* Scripts/webkitpy/layout_tests/port/factory.py:
(PortFactory._port_name_from_arguments_and_options):
(PortFactory):
(PortFactory._get_kwargs):
(PortFactory.get):
* Scripts/webkitpy/layout_tests/port/factory_unittest.py:
(FactoryTest.test_google_chrome.names):
(FactoryTest.test_google_chrome):
* Scripts/webkitpy/layout_tests/port/google_chrome.py:
(GetGoogleChromePort):
(GetGoogleChromePort.GoogleChromeLinux32Port):
(GetGoogleChromePort.GoogleChromeLinux32Port.baseline_search_path):
(GetGoogleChromePort.GoogleChromeLinux32Port.test_expectations_overrides):
(GetGoogleChromePort.GoogleChromeLinux32Port.architecture):
(GetGoogleChromePort.GoogleChromeLinux64Port):
(GetGoogleChromePort.GoogleChromeLinux64Port.baseline_search_path):
(GetGoogleChromePort.GoogleChromeLinux64Port.test_expectations_overrides):
(GetGoogleChromePort.GoogleChromeLinux64Port.architecture):
(GetGoogleChromePort.GoogleChromeMacPort):
(GetGoogleChromePort.GoogleChromeMacPort.baseline_search_path):
(GetGoogleChromePort.GoogleChromeMacPort.test_expectations_overrides):
(GetGoogleChromePort.GoogleChromeWinPort):
(GetGoogleChromePort.GoogleChromeWinPort.baseline_search_path):
(GetGoogleChromePort.GoogleChromeWinPort.test_expectations_overrides):
* Scripts/webkitpy/layout_tests/port/google_chrome_unittest.py:
(GetGoogleChromePortTest._verify_baseline_path):
(GetGoogleChromePortTest._verify_expectations_overrides):

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

9 years agoDOM Attribute tests on Dromaeo spends 2.7% of time in hasSelectorForAttribute
rniwa@webkit.org [Thu, 5 Jan 2012 16:00:06 +0000 (16:00 +0000)]
DOM Attribute tests on Dromaeo spends 2.7% of time in hasSelectorForAttribute
https://bugs.webkit.org/show_bug.cgi?id=75569

Reviewed by Andreas Kling.

Check needsStyleRecalc() first to avoid unnecessary hash lookups.

* dom/Element.cpp:
(WebCore::Element::recalcStyleIfNeededAfterAttributeChanged):

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

9 years agoUnreviewed, GTK test_expectations update.
philn@webkit.org [Thu, 5 Jan 2012 15:59:13 +0000 (15:59 +0000)]
Unreviewed, GTK test_expectations update.

* platform/gtk/test_expectations.txt: Give
media/media-blocked-by-beforeload.html another chance on the bot
after its update in r103509.

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

9 years ago[EFL] Replace alloca to C++ new placement.
commit-queue@webkit.org [Thu, 5 Jan 2012 15:47:01 +0000 (15:47 +0000)]
[EFL] Replace alloca to C++ new placement.
https://bugs.webkit.org/show_bug.cgi?id=72017

Patch by Grzegorz Czajkowski <g.czajkowski@samsung.com> on 2012-01-05
Reviewed by Andreas Kling.

Replaces alloca to C++ new placement as it is not very portable.
It allows to skip checking of memory allocation as new never returns NULL.
According to Edje's documentation type of val (member of Edje_Message_Float_Set)
is double so I changed it to avoid undefined behaviour.

* platform/efl/ScrollbarEfl.cpp:
(ScrollbarEfl::updateThumbPositionAndProportion):

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

9 years ago[Qt][WK2]REGRESSION(r104068): editing/pasteboard/copy-element-with-conflicting-backgr...
ossy@webkit.org [Thu, 5 Jan 2012 15:37:04 +0000 (15:37 +0000)]
[Qt][WK2]REGRESSION(r104068): editing/pasteboard/copy-element-with-conflicting-background-color-from-rule.html made the next test fail

Unreviewed gardening. One more attempt to paint the Qt-WK2 bot green.

* platform/qt-wk2/Skipped:

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

9 years agoNot reviewed. Update Chromium port test expectations.
hclam@chromium.org [Thu, 5 Jan 2012 15:22:04 +0000 (15:22 +0000)]
Not reviewed. Update Chromium port test expectations.

* platform/chromium/test_expectations.txt:

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

9 years ago[EFL] Invalidation request for ewk_view can be discarded without rendering.
commit-queue@webkit.org [Thu, 5 Jan 2012 15:01:35 +0000 (15:01 +0000)]
[EFL] Invalidation request for ewk_view can be discarded without rendering.
https://bugs.webkit.org/show_bug.cgi?id=71564

Patch by KwangHyuk Kim <hyuki.kim@samsung.com> on 2012-01-05
Reviewed by Hajime Morita.

As ewk_view discards a queue for invalidation requests
as soon as it proceeds the repaint step, the newly produced invalidation requests
from ewk_view_layout_if_needed_recursive API can be discarded
and unpainted dirty area can occur.
As this issue is just caused by use of flush API in repaint step,
(internal API) ewk_view_repaints_get is replaced with ewk_view_repaints_pop
in order to make sure that old invalidation requests are removed from queue.
And in addition to that, ewk_view_repaint_add is modified
in order to let queue of invalidation requests keep a proper size.
As a result flush API won't be used for the repaint step.

* ewk/ewk_private.h:
* ewk/ewk_view.cpp:
(_ewk_view_repaint_add):
(_ewk_view_smart_calculate):
(ewk_view_repaints_pop):
* ewk/ewk_view_single.cpp:
(_ewk_view_single_smart_repaints_process):
* ewk/ewk_view_tiled.cpp:
(_ewk_view_tiled_smart_repaints_process):

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

9 years agowebkitpy: clean up port factory methods
dpranke@chromium.org [Thu, 5 Jan 2012 15:01:11 +0000 (15:01 +0000)]
webkitpy: clean up port factory methods
https://bugs.webkit.org/show_bug.cgi?id=75590

Reviewed by Eric Seidel.

This change consolidates much of the "factory method" logic
of determining which port objects to create for a given set
of configurations by merging the separate factory methods in
chromium_gpu and google_chrome into PortFactory so that at least
all of the logic is in one place.

* Scripts/webkitpy/layout_tests/port/chromium_gpu.py:
* Scripts/webkitpy/layout_tests/port/chromium_gpu_unittest.py:
* Scripts/webkitpy/layout_tests/port/factory.py:
(_port_name_from_arguments_and_options):
(get):
* Scripts/webkitpy/layout_tests/port/factory_unittest.py:
(test_google_chrome):
* Scripts/webkitpy/layout_tests/port/google_chrome.py:
(GoogleChromeLinux32Port):
(GoogleChromeLinux32Port.baseline_search_path):
(test_expectations_overrides):
(architecture):
(GoogleChromeLinux64Port):
(GoogleChromeLinux64Port.baseline_search_path):
(GoogleChromeMacPort):
(GoogleChromeMacPort.baseline_search_path):
(GoogleChromeWinPort):
(GoogleChromeWinPort.baseline_search_path):
* Scripts/webkitpy/layout_tests/port/google_chrome_unittest.py:
(_verify_baseline_path):

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

9 years agoRemove duplicate file references from WebCore.xcodeproj
commit-queue@webkit.org [Thu, 5 Jan 2012 14:59:37 +0000 (14:59 +0000)]
Remove duplicate file references from WebCore.xcodeproj
https://bugs.webkit.org/show_bug.cgi?id=75581

Patch by Benjamin Poulain <bpoulain@apple.com> on 2012-01-05
Reviewed by Andreas Kling.

Many generated DOMSVG files had two references.

In platform/graphics, there was two arm directory
with the same files related to ARM Neon.

* WebCore.xcodeproj/project.pbxproj:

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

9 years agoTurn ImageDiff into a stub .exe launcher and a .dll that contains all the real code
aroben@apple.com [Thu, 5 Jan 2012 14:59:24 +0000 (14:59 +0000)]
Turn ImageDiff into a stub .exe launcher and a .dll that contains all the real code

This allows us to add the Apple Application Support directory to PATH before trying to load
WebKit so that CoreGraphics.dll and friends can be found.

Fixes <http://webkit.org/b/75572> ImageDiff.exe can't be run without first munging PATH

Reviewed by Anders Carlsson.

Tools:

* DumpRenderTree/win/ImageDiff.vcproj:
* DumpRenderTree/win/ImageDiffCommon.vsprops:
Changed to build ImageDiff.dll instead of ImageDiff.exe.

* DumpRenderTree/win/ImageDiffLauncher.vcproj: Copied from
Tools/DumpRenderTree/win/ImageDiff.vcproj but changed to build the stub launcher.

* DumpRenderTree/win/ImageDiffLauncherCommon.vsprops: Added.
* DumpRenderTree/win/ImageDiffLauncherDebug.vsprops: Added.
* DumpRenderTree/win/ImageDiffLauncherDebugAll.vsprops: Added.
* DumpRenderTree/win/ImageDiffLauncherDebugCairoCFLite.vsprops: Added.
* DumpRenderTree/win/ImageDiffLauncherProduction.vsprops: Added.
* DumpRenderTree/win/ImageDiffLauncherRelease.vsprops: Added.
* DumpRenderTree/win/ImageDiffLauncherReleaseCairoCFLite.vsprops: Added.

* DumpRenderTree/win/ImageDiffWin.cpp: Added.
(dllLauncherEntryPoint): This function is called by the stub launcher and just calls through
to main.

* win/DLLLauncher/DLLLauncherMain.cpp:
(main):
(wWinMain):
Added support for launching console programs. When USE_CONSOLE_ENTRY_POINT is defined, the
stub launcher acts as a console program and calls a console version of
dllLauncherEntryPoint.

Source/WebKit/win:

Add ImageDiffLauncher to WebKit.sln

It builds just after ImageDiff.

* WebKit.vcproj/WebKit.sln:

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

9 years ago[Qt] Implement QQuickWebView::inputMethodQuery
kenneth@webkit.org [Thu, 5 Jan 2012 14:58:36 +0000 (14:58 +0000)]
[Qt] Implement QQuickWebView::inputMethodQuery

Reviewed by Simon Hausmann.

Implement the current Qt5 queries of inputMethodQuery.

* UIProcess/API/qt/qquickwebview.cpp:
(QQuickWebView::inputMethodQuery):
* UIProcess/API/qt/qquickwebview_p.h:

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

9 years agoTurn MiniBrowser into a stub .exe launcher and a .dll that contains all the real...
aroben@apple.com [Thu, 5 Jan 2012 14:57:46 +0000 (14:57 +0000)]
Turn MiniBrowser into a stub .exe launcher and a .dll that contains all the real code

This allows us to add the Apple Application Support directory to PATH before trying to load
WebKit so that CoreGraphics.dll and friends can be found.

Fixes <http://webkit.org/b/68576> <rdar://problem/10163853> MiniBrowser fails to launch when
double-clicked

Reviewed by Anders Carlsson.

Tools:

* MiniBrowser/MiniBrowser.vcproj:
* MiniBrowser/Configurations/MiniBrowserCommon.vsprops:
Changed to build MiniBrowser.dll instead of MiniBrowser.exe.

* MiniBrowser/Configurations/MiniBrowserLauncherCommon.vsprops: Added.
* MiniBrowser/Configurations/MiniBrowserLauncherDebug.vsprops: Added.
* MiniBrowser/Configurations/MiniBrowserLauncherDebugAll.vsprops: Added.
* MiniBrowser/Configurations/MiniBrowserLauncherDebugCairoCFLite.vsprops: Added.
* MiniBrowser/Configurations/MiniBrowserLauncherProduction.vsprops: Added.
* MiniBrowser/Configurations/MiniBrowserLauncherRelease.vsprops: Added.
* MiniBrowser/Configurations/MiniBrowserLauncherReleaseCairoCFLite.vsprops: Added.

* MiniBrowser/MiniBrowserLauncher.vcproj: Copied from Tools/MiniBrowser/MiniBrowser.vcproj
but changed to build the stub launcher.

* MiniBrowser/win/main.cpp: Moved the /manifestdependency code to DLLLauncherMain.cpp, since
it needs to be compiled into the .exe instead of the .dll.
(DllMain): Added. We use this to store the DLL's HINSTANCE.
(dllLauncherEntryPoint): Renamed from _tWinMain. This is what gets called by the
DLLLauncherMain code.

* win/DLLLauncher/DLLLauncherMain.cpp: Moved the /manifestdependency code from MiniBrowser
to here.

Source/WebKit/win:

Add MiniBrowserLauncher to WebKit.sln

It builds just after MiniBrowser.

* WebKit.vcproj/WebKit.sln: Added MiniBrowserLauncher.

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

9 years agoMake WinLauncher's window frame respond to clicks/drags again
aroben@apple.com [Thu, 5 Jan 2012 14:56:15 +0000 (14:56 +0000)]
Make WinLauncher's window frame respond to clicks/drags again

Fixes <http://webkit.org/b/75562> REGRESSION (r84990): Can't drag WinLauncher by its title
bar when Aero is disabled

Reviewed by Brent Fulgham.

* WinLauncher/WinLauncher.cpp:
(WndProc): Always call up to our parent wndproc when we don't handle WM_NCHITTEST ourselves.
Also removed an unnecessary "break" keyword.

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

9 years agoTurn WinLauncher into a stub .exe launcher and a .dll that contains all the real...
aroben@apple.com [Thu, 5 Jan 2012 14:52:23 +0000 (14:52 +0000)]
Turn WinLauncher into a stub .exe launcher and a .dll that contains all the real code

This allows us to add the Apple Application Support directory to PATH before trying to load
WebKit so that CoreGraphics.dll and friends can be found. Eventually all our WebKit apps
should use this mechanism.

Fixes <http://webkit.org/b/68578> <rdar://problem/10163861> WinLauncher fails to launch when
double-clicked

Reviewed by Anders Carlsson.

Tools:

* WinLauncher/WinLauncher.cpp: Removed InitInstance.
(DllMain): Added. Stores the DLL HINSTANCE in the global hInst variable. This used to be
done by the now-removed InitInstance function.
(dllLauncherEntryPoint): Renamed from _tWinMain. This is the function that our stub launcher
calls. Merged code from InitInstance into this function, and change to use the global hInst
variable, which corresponds to WinLauncher.dll, rather than the HINSTANCE passed into this
function, which corresponds to WinLauncher.exe.

* WinLauncher/WinLauncher.vcproj:
* WinLauncher/WinLauncherCommon.vsprops:
Changed to build WinLauncher.dll instead of WinLauncher.exe.

* WinLauncher/WinLauncherLauncher.rc: Added.
* WinLauncher/WinLauncherLauncherResource.h: Added.
This just references the WinLauncher.ico file to set the application icon (though it looks
like that's a default icon).

* WinLauncher/WinLauncherLauncher.vcproj: Copied from Tools/WinLauncher/WinLauncher.vcproj
but changed to build WinLauncher.exe using the new DLLLauncherMain.cpp file.

* WinLauncher/WinLauncherLauncherCommon.vsprops: Added.
* WinLauncher/WinLauncherLauncherDebug.vsprops: Added.
* WinLauncher/WinLauncherLauncherDebugAll.vsprops: Added.
* WinLauncher/WinLauncherLauncherDebugCairoCFLite.vsprops: Added.
* WinLauncher/WinLauncherLauncherProduction.vsprops: Added.
* WinLauncher/WinLauncherLauncherRelease.vsprops: Added.
* WinLauncher/WinLauncherLauncherReleaseCairoCFLite.vsprops: Added.

* win/DLLLauncher/DLLLauncherMain.cpp: Added.
(enableTerminationOnHeapCorruption): Uses HeapSetInformation to tell Windows to kill the
program if it detects heap corruption.
(getStringValue): Helper function to read a string value from the registry.
(applePathFromRegistry): Helper function to read the InstallDir for a given Apple
application from the registry.
(appleApplicationSupportDirectory): Helper function to return the path to the Apple
Application Support directory.
(copyEnvironmentVariable): Helper function to copy an environment variable's value.
(prependPath): Helper function to prepend a directory to the PATH.
(fatalError): Helper function to display an error to the user.
(wWinMain): Add Apple Application Support to the PATH, then load our DLL and call its
dllLauncherEntryPoint function.

Source/WebKit/win:

Add WinLauncherLauncher to WebKit.sln

It builds just after WinLauncher.

* WebKit.vcproj/WebKit.sln: Added WinLauncherLauncher.

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

9 years agoImprove SelectorChecker::determineSelectorScopes
antti@apple.com [Thu, 5 Jan 2012 14:40:55 +0000 (14:40 +0000)]
Improve SelectorChecker::determineSelectorScopes
https://bugs.webkit.org/show_bug.cgi?id=75619

Reviewed by Andreas Kling.

SelectorChecker::determineSelectorScopes currently searches to the end of the selector chain and
then sees if the last one is suitable to be a scope. A better algorithm will find a scope from
anywhere in the chain.

With this patch we search the whole chain for potential scopes. We now prefer id scopes
over class scopes. Scopes can be found for rules using sibling selectors too.

On both engadget.com and nytimes.com, we can now skip one more full style recalc due to
the improved stylesheet analysis.

* css/SelectorChecker.cpp:
(WebCore::SelectorChecker::determineSelectorScopes):

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

9 years ago[GTK] Use the default screen in PlatformScreenGtk methods when they are called with...
carlosgc@webkit.org [Thu, 5 Jan 2012 14:38:23 +0000 (14:38 +0000)]
[GTK] Use the default screen in PlatformScreenGtk methods when they are called with a NULL widget
https://bugs.webkit.org/show_bug.cgi?id=75620

Reviewed by Philippe Normand.

We are currently retuning an empty rectangle for
screenRect/screenAvailableRect and 0 for getVisual.

* platform/gtk/PlatformScreenGtk.cpp:
(WebCore::getVisual):
(WebCore::screenRect):
(WebCore::screenAvailableRect):

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

9 years agoNot reviewed. Update Chromium port test expectations.
hclam@chromium.org [Thu, 5 Jan 2012 14:12:41 +0000 (14:12 +0000)]
Not reviewed. Update Chromium port test expectations.

* platform/chromium-win-xp/fast/backgrounds/animated-svg-as-mask-expected.png: Removed.
* platform/chromium-win-xp/svg/W3C-SVG-1.1/masking-path-02-b-expected.png: Removed.
* platform/chromium-win-xp/svg/as-background-image/animated-svg-as-background-expected.png: Removed.
* platform/chromium-win-xp/svg/custom/glyph-selection-lang-attribute-expected.png: Removed.
* platform/chromium-win-xp/svg/text/text-align-01-b-expected.png: Removed.
* platform/chromium-win-xp/svg/text/text-path-01-b-expected.png: Removed.
* platform/chromium/test_expectations.txt:

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

9 years ago[Chromium] Remove WebSettings::setAcceleratedDrawingEnabled from public API.
commit-queue@webkit.org [Thu, 5 Jan 2012 14:02:31 +0000 (14:02 +0000)]
[Chromium] Remove WebSettings::setAcceleratedDrawingEnabled from public API.
https://bugs.webkit.org/show_bug.cgi?id=74125

Patch by David Reveman <reveman@chromium.org> on 2012-01-05
Reviewed by James Robinson.

Remove setAcceleratedDrawingEnabled method from WebSettings class.

* public/WebSettings.h:
* src/WebSettingsImpl.cpp:
* src/WebSettingsImpl.h:

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

9 years ago[Chromium] Expected test failures after Skia is rolled to 2918
commit-queue@webkit.org [Thu, 5 Jan 2012 14:02:04 +0000 (14:02 +0000)]
[Chromium] Expected test failures after Skia is rolled to 2918
https://bugs.webkit.org/show_bug.cgi?id=75019

Fixed now that Skia has rolled past r2936.

Unreviewed Chromium port test expectations update.

Patch by Stephen Chenney <schenney@chromium.org> on 2012-01-05

* platform/chromium/test_expectations.txt:

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

9 years agoUnreviewed. Build fix.
hclam@chromium.org [Thu, 5 Jan 2012 13:38:57 +0000 (13:38 +0000)]
Unreviewed. Build fix.

Adding missing const_cast<> to fix compilation failures due to r104143.

* platform/audio/VectorMath.cpp:
(WebCore::VectorMath::zvmul):

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

9 years agoMove Gamepad declarations from Navigator.idl into Modules/gamepad
abarth@webkit.org [Thu, 5 Jan 2012 13:27:40 +0000 (13:27 +0000)]
Move Gamepad declarations from Navigator.idl into Modules/gamepad
https://bugs.webkit.org/show_bug.cgi?id=75559

Reviewed by Eric Seidel.

This patch moves the gamepad-related declarations in Navigator.idl into
Modules/gamepad.  The next step is to move the state into
Modules/gamepad as well.

* Modules/gamepad/NavigatorGamepad.cpp: Added.
(WebCore::NavigatorGamepad::NavigatorGamepad):
(WebCore::NavigatorGamepad::~NavigatorGamepad):
(WebCore::NavigatorGamepad::webkitGamepads):
* Modules/gamepad/NavigatorGamepad.h: Added.
* Modules/gamepad/NavigatorGamepad.idl: Added.
* WebCore.gypi:
* page/Navigator.cpp:
(WebCore::Navigator::gamepads):
* page/Navigator.h:
* page/Navigator.idl:

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

9 years ago[GTK] Add methods to get/set the WebView zoom level to WebKit2 GTK+ API
carlosgc@webkit.org [Thu, 5 Jan 2012 13:04:35 +0000 (13:04 +0000)]
[GTK] Add methods to get/set the WebView zoom level to WebKit2 GTK+ API
https://bugs.webkit.org/show_bug.cgi?id=75248

Reviewed by Gustavo Noronha Silva.

It uses the page zoom factor unconditionally for now.

* UIProcess/API/gtk/WebKitWebView.cpp:
(webkitWebViewSetProperty):
(webkitWebViewGetProperty):
(webkit_web_view_class_init): Add WebKitWebView:zoom-level
property.
(webkit_web_view_set_zoom_level): Set current zoom level.
(webkit_web_view_get_zoom_level): Get current zoom level.
* UIProcess/API/gtk/WebKitWebView.h:
* UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Add new symbols.
* UIProcess/API/gtk/tests/TestWebKitWebView.cpp:
(testWebViewZoomLevel):
(beforeAll):

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

9 years agogetComputedStyle for border-image is not implemented.
alexis.menard@openbossa.org [Thu, 5 Jan 2012 12:55:50 +0000 (12:55 +0000)]
getComputedStyle for border-image is not implemented.
https://bugs.webkit.org/show_bug.cgi?id=75347

Reviewed by Tony Chang.

Source/WebCore:

Implement getComputedStyle for border-color.

fast/css/getComputedStyle/computed-style-border-image.html was extended to cover the
new feature.

* css/CSSComputedStyleDeclaration.cpp:
(WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):

LayoutTests:

Extend existing test to cover that we return correct values for border-image.

* fast/css/getComputedStyle/computed-style-border-image-expected.txt:
* fast/css/getComputedStyle/computed-style-border-image.html:

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

9 years agoAdd a SSE2 optimized function zvmul in VectorMatch
commit-queue@webkit.org [Thu, 5 Jan 2012 12:54:04 +0000 (12:54 +0000)]
Add a SSE2 optimized function zvmul in VectorMatch
https://bugs.webkit.org/show_bug.cgi?id=74842

Patch by Xingnan Wang <xingnan.wang@intel.com> on 2012-01-05
Reviewed by Kenneth Russell.

Use zvmul in FFTFrameFFMPEG.cpp::multiply() and FFTFrameMac.cpp::multiply().

* platform/audio/VectorMath.cpp:
(WebCore::VectorMath::zvmul):
* platform/audio/VectorMath.h:
* platform/audio/ffmpeg/FFTFrameFFMPEG.cpp:
(WebCore::FFTFrame::multiply):
* platform/audio/mac/FFTFrameMac.cpp:
(WebCore::FFTFrame::multiply):

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

9 years agoUnreviewed. Build fix for Chromium Mac Clang build.
hclam@chromium.org [Thu, 5 Jan 2012 12:51:35 +0000 (12:51 +0000)]
Unreviewed. Build fix for Chromium Mac Clang build.

Push using namespace WTF to .cpp file from .h file.

* platform/text/TextCodecASCIIFastPath.h:
* platform/text/TextCodecLatin1.cpp:
* platform/text/TextCodecUTF8.cpp:

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

9 years ago[Qt][WK2]REGRESSION(r104068): It made editing/pasteboard/copy-in-password-field.html...
ossy@webkit.org [Thu, 5 Jan 2012 12:50:16 +0000 (12:50 +0000)]
[Qt][WK2]REGRESSION(r104068): It made editing/pasteboard/copy-in-password-field.html fail
https://bugs.webkit.org/show_bug.cgi?id=75615

Unreviewed gardening.

* platform/qt-wk2/Skipped: Skip editing/pasteboard/copy-in-password-field.html to paint the bot green.

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

9 years agoWebKit adds vertical paddings and borders to the fixed width of CSS tables
commit-queue@webkit.org [Thu, 5 Jan 2012 12:23:43 +0000 (12:23 +0000)]
WebKit adds vertical paddings and borders to the fixed width of CSS tables
https://bugs.webkit.org/show_bug.cgi?id=74955

Patch by Max Vujovic <mvujovic@adobe.com> on 2012-01-05
Reviewed by Julien Chaffraix.

Source/WebCore:

Test: fast/table/css-table-width.html

* rendering/RenderTable.cpp:
(WebCore::RenderTable::computeLogicalWidth):

    Changed the width calculation for CSS tables to take into account horizontal
    paddings and borders instead of vertical paddings and borders.

LayoutTests:

Added tests to check that the fixed width style is applied correctly to
CSS tables with respect to table paddings and borders.

* fast/table/css-table-width-expected.txt: Added.
* fast/table/css-table-width.html: Added.
* fast/table/script-tests/css-table-width.js: Added.
(computeCSSTableOffsetWidth):
(computeCSSTableOffsetHeight):
(computeCSSTableProperty):

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

9 years ago[Chromium] Upstream the RenderTheme and ScrollbarTheme for Android
peter@chromium.org [Thu, 5 Jan 2012 12:22:07 +0000 (12:22 +0000)]
[Chromium] Upstream the RenderTheme and ScrollbarTheme for Android
https://bugs.webkit.org/show_bug.cgi?id=74614

Reviewed by Adam Barth.

Source/WebCore:

Upstream the RenderTheme and ScrollbarTheme for Android. These are
mostly derived from their Linux variants.

RenderThemeChromiumAndroid inherits from RenderThemeChromiumLinux and
only overrides the three methods which have different behavior.
Scrollbars will be drawn in the threaded compositor for Android (which
will be upstreamed later), but for increased layout test parity we'll
match Chromium-Linux.

No new tests. This code will be exercised by existing layout tests, and
by manually verifying that theme parts render as expected.

* WebCore.gyp/WebCore.gyp:
* WebCore.gypi:
* platform/chromium/ScrollbarThemeChromiumAndroid.cpp: Added.
(WebCore::ScrollbarTheme::nativeTheme):
(WebCore::ScrollbarThemeChromiumAndroid::scrollbarThickness):
(WebCore::ScrollbarThemeChromiumAndroid::paintScrollbarBackground):
(WebCore::ScrollbarThemeChromiumAndroid::shouldCenterOnThumb):
(WebCore::ScrollbarThemeChromiumAndroid::buttonSize):
(WebCore::ScrollbarThemeChromiumAndroid::minimumThumbLength):
* platform/chromium/ScrollbarThemeChromiumAndroid.h: Added.
* rendering/RenderThemeChromiumAndroid.cpp: Added.
(WebCore::RenderThemeChromiumAndroid::create):
(WebCore::RenderTheme::themeForPage):
(WebCore::RenderThemeChromiumAndroid::~RenderThemeChromiumAndroid):
(WebCore::RenderThemeChromiumAndroid::systemColor):
(WebCore::RenderThemeChromiumAndroid::adjustInnerSpinButtonStyle):
* rendering/RenderThemeChromiumAndroid.h: Added.
* rendering/RenderThemeChromiumLinux.cpp:
* rendering/RenderThemeChromiumLinux.h:

Source/WebKit/chromium:

* src/WebViewImpl.cpp:
(WebKit::WebViewImpl::setScrollbarColors):
(WebKit::WebViewImpl::setSelectionColors):

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

9 years ago[Qt] Unreviewed gardening. Skip a new failing test.
ossy@webkit.org [Thu, 5 Jan 2012 12:09:59 +0000 (12:09 +0000)]
[Qt] Unreviewed gardening. Skip a new failing test.

* platform/qt/Skipped:

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

9 years ago[Chromium] Expose Fixed Position Layout to WebViewImpl
fsamuel@chromium.org [Thu, 5 Jan 2012 11:40:30 +0000 (11:40 +0000)]
[Chromium] Expose Fixed Position Layout to WebViewImpl
https://bugs.webkit.org/show_bug.cgi?id=75556

Reviewed by Darin Fisher.

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

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

9 years agounshift/pop fifo may consume excessive memory
ossy@webkit.org [Thu, 5 Jan 2012 11:33:03 +0000 (11:33 +0000)]
unshift/pop fifo may consume excessive memory
https://bugs.webkit.org/show_bug.cgi?id=75588

Reviewed by Zoltan Herczeg.

Buildfix after r104120.

* runtime/JSArray.cpp: Remove useless asserts, baecause unsigned expression >= 0 is always true
(JSC::JSArray::unshiftCount):

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

9 years agoUnreviewed gardening after r104134.
zherczeg@webkit.org [Thu, 5 Jan 2012 11:24:23 +0000 (11:24 +0000)]
Unreviewed gardening after r104134.

* wtf/Assertions.cpp:

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

9 years agoUnreviewed gardening after r75605.
zherczeg@webkit.org [Thu, 5 Jan 2012 11:06:35 +0000 (11:06 +0000)]
Unreviewed gardening after r75605.

Rubber stamped by NOBODY Csaba Osztrogonác.

* wtf/Assertions.cpp:

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

9 years agoSource/WebCore: Fix potential superlinear runtime of multiple indirect adjenceny...
commit-queue@webkit.org [Thu, 5 Jan 2012 10:57:16 +0000 (10:57 +0000)]
Source/WebCore: Fix potential superlinear runtime of multiple indirect adjenceny combinators.
https://bugs.webkit.org/show_bug.cgi?id=75083

Patch by Allan Sandfeld Jensen <allan.jensen@nokia.com> on 2012-01-05
Reviewed by Antti Koivisto.

A sequence of indirect adjencency combinator such as "li ~ li ~ la" could with the
former algorithm potentially do an quadratic number of element matches.
The recursive matching algorithm now detects cases where all siblings have
failed one indirect sibling match and fails the entire selector.

Test: perf/nested-combined-selectors.html

* css/SelectorChecker.cpp:
(WebCore::SelectorChecker::checkSelector): Return SelectorFailsAllSiblings when
all siblings have failed a selector component.
* css/SelectorChecker.h: Add SelectorFailsAllSiblings enum value

LayoutTests:        Test of styling performance of selectors with multiple indirect combinators
       https://bugs.webkit.org/show_bug.cgi?id=75083

       Reviewed by Antti Koivisto.

       * perf/nested-combined-selectors.html: Added.

Patch by Allan Sandfeld Jensen <allan.jensen@nokia.com> on 2012-01-05

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

9 years agoprepare-ChangeLog cannot parse python code that nests classes and defs
haraken@chromium.org [Thu, 5 Jan 2012 10:56:05 +0000 (10:56 +0000)]
prepare-ChangeLog cannot parse python code that nests classes and defs
https://bugs.webkit.org/show_bug.cgi?id=75524

Reviewed by Ryosuke Niwa.

This patch fixes the python parser of prepare-ChangeLog so that it can parse
python code that nests classes and defs, like this:

class C:
    pass
    def f():
        pass
    pass

Also, this patch fixes the python parser so that it inserts a dummy line
at the end of the file to pop out all popped scopes.

* Scripts/prepare-ChangeLog:
(get_function_line_ranges_for_python):

* Scripts/webkitperl/prepare-ChangeLog_unittest/resources/python_unittests.py:
Added test cases that nest classes and defs.
(func7):
(func7.func8):
(func7.func8.func9):
(Class2):
(Class2.Class3):
(Class2.Class3.Class4):
(Class5):
(Class5.func10):
(Class5.func11):
* Scripts/webkitperl/prepare-ChangeLog_unittest/resources/python_unittests-expected.txt:

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

9 years agoInspectorStyleSheet: Avoid cloning CSSRuleLists.
kling@webkit.org [Thu, 5 Jan 2012 10:20:21 +0000 (10:20 +0000)]
InspectorStyleSheet: Avoid cloning CSSRuleLists.
<http://webkit.org/b/75603>

Reviewed by Ryosuke Niwa.

Don't filter out @charset rules from CSSRuleLists. This was forcing us to clone
the stylesheet rule list, and is unnecessary since InspectorStyleSheet disregards
any rule that isn't either a style rule or a rule with an internal rule list.

* inspector/InspectorStyleSheet.cpp:
(WebCore::asCSSRuleList):
(WebCore::InspectorStyleSheet::buildObjectForStyleSheet):

    Don't pass omitCharsetRules=true to the CSSRuleList constructor.

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

9 years agoMake elements with attributes smaller by eliminating the ref count in NamedNodeMap.
kling@webkit.org [Thu, 5 Jan 2012 10:18:16 +0000 (10:18 +0000)]
Make elements with attributes smaller by eliminating the ref count in NamedNodeMap.
<http://webkit.org/b/75068>

Reviewed by Antti Koivisto.

Remove NamedNodeMap's inheritance from RefCounted and forward the ref()/deref()
calls to its owner Element, effectively reducing the size of an element that has
attributes by 4 bytes.

This reduces memory consumption by 311 kB when viewing the full HTML5 spec.

* dom/NamedNodeMap.cpp:
(WebCore::NamedNodeMap::ref):
(WebCore::NamedNodeMap::deref):

    Added. Forwards the operation to m_element. Only ever used by the DOM wrappers.

* dom/NamedNodeMap.h:
(WebCore::NamedNodeMap::create):
* dom/DocumentType.h:
* dom/Element.cpp:
(WebCore::Element::parserSetAttributeMap):
* dom/Element.h:
* html/parser/HTMLConstructionSite.cpp:
* html/parser/HTMLToken.h:
(WebCore::AtomicHTMLToken::AtomicHTMLToken):
* html/parser/HTMLTreeBuilder.cpp:
(WebCore::HTMLTreeBuilder::processFakeStartTag):
(WebCore::HTMLTreeBuilder::attributesForIsindexInput):
* html/parser/HTMLTreeBuilder.h:
* html/parser/TextDocumentParser.cpp:
(WebCore::TextDocumentParser::insertFakePreElement):
* xml/parser/MarkupTokenBase.h:
(WebCore::AtomicMarkupTokenBase::AtomicMarkupTokenBase):
(WebCore::AtomicMarkupTokenBase::takeAttributes):
* xml/parser/XMLToken.h:
(WebCore::AtomicXMLToken::AtomicXMLToken):

    Store NamedNodeMap in OwnPtr/PassOwnPtr, rather than RefPtr/PassRefPtr.

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

9 years ago[GTK] Rename webkit_web_view_load_alternate_html as webkit_web_view_replace_content...
carlosgc@webkit.org [Thu, 5 Jan 2012 10:08:07 +0000 (10:08 +0000)]
[GTK] Rename webkit_web_view_load_alternate_html as webkit_web_view_replace_content in WebKit2 GTK+
https://bugs.webkit.org/show_bug.cgi?id=75433

Reviewed by Martin Robinson.

Source/WebKit2:

* UIProcess/API/gtk/WebKitWebView.cpp:
(webkitWebViewLoadFail): Use webkit_web_view_replace_content().
(webkitWebViewLoadChanged): Do not emit load-changed signal when
replacing content.
(webkitWebViewLoadFailed): Do not emit load-failed signal when
replacing content.
(webkitWebViewSetEstimatedLoadProgress): Do not emit
notify::estimated-load-progress signal when replacing content.
(webkit_web_view_replace_content):
* UIProcess/API/gtk/WebKitWebView.h:
* UIProcess/API/gtk/docs/webkit2gtk-sections.txt:
* UIProcess/API/gtk/tests/TestWebKitWebLoaderClient.cpp:
(beforeAll):
* UIProcess/API/gtk/tests/TestWebKitWebView.cpp:
(replaceContentTitleChangedCallback):
(replaceContentLoadCallback):
(testWebViewReplaceContent):
(beforeAll):
* UIProcess/API/gtk/tests/WebViewTest.cpp:
(WebViewTest::replaceContent):
* UIProcess/API/gtk/tests/WebViewTest.h:

Tools:

* MiniBrowser/gtk/BrowserWindow.c:
(webViewLoadFailed): Reset the progress bar when load fails.
(browserWindowConstructed): Connect to load-failed signal.

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

9 years ago[chromium] MAC: update expectations for CSS3 linear gradient tests
noel.gordon@gmail.com [Thu, 5 Jan 2012 10:03:44 +0000 (10:03 +0000)]
[chromium] MAC: update expectations for CSS3 linear gradient tests
https://bugs.webkit.org/show_bug.cgi?id=55745

Reviewed by Stephen White.

* platform/chromium-cg-mac-leopard/fast/gradients/css3-color-stop-units-expected.png: Added.
* platform/chromium-cg-mac-leopard/fast/gradients/css3-color-stops-expected.png: Added.
* platform/chromium-cg-mac-leopard/fast/gradients/css3-linear-angle-gradients-expected.png: Added.
* platform/chromium-mac-leopard/fast/gradients/css3-color-stop-units-expected.png: Added.
* platform/chromium-mac-snowleopard/fast/gradients/css3-color-stop-units-expected.png: Renamed from LayoutTests/platform/chromium-mac/fast/gradients/css3-color-stop-units-expected.png.
* platform/chromium-mac-snowleopard/fast/gradients/css3-color-stops-expected.png: Renamed from LayoutTests/platform/chromium-mac/fast/gradients/css3-color-stops-expected.png.
* platform/chromium-mac-snowleopard/fast/gradients/css3-linear-angle-gradients-expected.png: Renamed from LayoutTests/platform/chromium-mac/fast/gradients/css3-linear-angle-gradients-expected.png.
* platform/chromium/test_expectations.txt:

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

9 years agoImprove charactersAreAllASCII() to compare multiple characters at a time
benjamin@webkit.org [Thu, 5 Jan 2012 09:38:52 +0000 (09:38 +0000)]
Improve charactersAreAllASCII() to compare multiple characters at a time
https://bugs.webkit.org/show_bug.cgi?id=74063

Reviewed by Darin Adler.

Source/JavaScriptCore:

A new header ASCIIFastPath.h contains the functions related to
the detection of ASCII by using machine words. Part of it comes from
WebCore's TextCodecASCIIFastPath.h.

The function charactersAreAllASCII() is moved to TextCodecASCIIFastPath.h
and is implemented with computer word comparison.
The gain over the previous implementation of charactersAreAllASCII() is of
the order of how many comparison are avoided (4x, 8x, 16x depending on the
format and the CPU type).

* GNUmakefile.list.am:
* JavaScriptCore.gypi:
* JavaScriptCore.vcproj/WTF/WTF.vcproj:
* JavaScriptCore.xcodeproj/project.pbxproj:
* wtf/text/ASCIIFastPath.h: Added.
(WTF::isAlignedToMachineWord):
(WTF::alignToMachineWord):
(WTF::isAllASCII):
(WTF::charactersAreAllASCII):
* wtf/text/WTFString.h:
* wtf/wtf.pro:

Source/JavaScriptGlue:

Add forwarding header for ASCIIFastPath.h.

* ForwardingHeaders/wtf/text/ASCIIFastPath.h: Added.

Source/WebCore:

Move some part of TextCodecASCIIFastPath.h to WTF in ASCIIFastPath.h.
The function isAllASCII() is changed to the template version which now works
with both LChar and UChar.

* ForwardingHeaders/wtf/text/ASCIIFastPath.h: Added.
* platform/text/TextCodecASCIIFastPath.h:
(WebCore::copyASCIIMachineWord):
* platform/text/TextCodecLatin1.cpp:
(WebCore::TextCodecLatin1::decode):
* platform/text/TextCodecUTF8.cpp:
(WebCore::TextCodecUTF8::decode):

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

9 years ago [fileapi] WebKitFlags should not be constructable per Directories & System...
ericu@chromium.org [Thu, 5 Jan 2012 09:29:16 +0000 (09:29 +0000)]
   [fileapi] WebKitFlags should not be constructable per Directories & System spec
       https://bugs.webkit.org/show_bug.cgi?id=68916

       Reviewed by Eric Seidel.

Source/WebCore:

       Remove IDL for the object and all DOM references to it.
       * fileapi/WebKitFlags.idl: Removed.
       * page/DOMWindow.idl:
       * workers/WorkerContext.idl:
       Remove references to the JSC/V8 objects compiled from the IDL.
       * bindings/js/JSDirectoryEntryCustom.cpp:
       (WebCore::JSDirectoryEntry::getFile):
       (WebCore::JSDirectoryEntry::getDirectory):
       * bindings/js/JSDirectoryEntrySyncCustom.cpp:
       (WebCore::getFlags):
       * bindings/v8/custom/V8DirectoryEntryCustom.cpp:
       (WebCore::V8DirectoryEntry::getDirectoryCallback):
       (WebCore::V8DirectoryEntry::getFileCallback):
       * bindings/v8/custom/V8DirectoryEntrySyncCustom.cpp:
       (WebCore::getFlags):
       Fix up build files.
       * WebCore.gypi:
       * WebCore.vcproj/WebCore.vcproj:
       * WebCore.xcodeproj/project.pbxproj:
       * WebCore/CMakeLists.txt:
       * WebCore/CodeGenerators.pri:
       * WebCore/DerivedSources.cpp:
       * WebCore/DerivedSources.make:
       * WebCore/GNUmakefile.list.am:

LayoutTests:

       Remove a test that constructed the object; add one that tests error-handling for non-object parameters while I'm in there.
       * fast/filesystem/flags-passing-expected.txt:
       * fast/filesystem/script-tests/flags-passing.js:

       Remove a special case reference to the global WebKitFlags constructor.
       * fast/dom/script-tests/prototype-inheritance.js:

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

9 years ago<http://webkit.org/b/75606> [Mac] WTF logging functions should output to both stderr...
mrowe@apple.com [Thu, 5 Jan 2012 09:16:35 +0000 (09:16 +0000)]
<webkit.org/b/75606> [Mac] WTF logging functions should output to both stderr and ASL

We should always log to both ASL and stderr on platforms where this won't result in launchd
duplicating the messages.

Reviewed by Dan Bernstein.

* wtf/Assertions.cpp:
(vprintf_stderr_common):

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

9 years ago<http://webkit.org/b/75605> WTF logging functions should call vprintf_stderr_common...
mrowe@apple.com [Thu, 5 Jan 2012 09:16:21 +0000 (09:16 +0000)]
<webkit.org/b/75605> WTF logging functions should call vprintf_stderr_common only once per line

Several of the WTF logging functions make multiple calls to vprintf_stderr_common to output a
single line of text. This results in strangely formatted output if vprintf_stderr_common is
retargeted to an output device that is message-oriented (such as ASL) rather than stream-oriented
like stderr.

Reviewed by Dan Bernstein.

* wtf/Assertions.cpp:
(vprintf_stderr_with_prefix): Helper function to prepend a given prefix on to the given format
string before handing it off to vprintf_stderr_common. This requires disabling warnings about
calling a printf-like function with a non-literal format string for this piece of code. It's
safe in this particular case as vprintf_stderr_with_prefix is only ever given a literal prefix.
(vprintf_stderr_with_trailing_newline): Helper function to append a trailling newline on to the
given format string if one does not already exist. It requires the same treatment with regards
to the non-literal format string warning.
(WTFReportAssertionFailureWithMessage): Switch to using vprintf_stderr_with_prefix.
(WTFReportBacktrace): Switch from calling fprintf directly to using fprintf_stderr_common.
(WTFReportFatalError): Switch to using vprintf_stderr_with_prefix.
(WTFReportError): Ditto.
(WTFLog): Switch to using vprintf_stderr_with_trailing_newline.
(WTFLogVerbose): Ditto.

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

9 years agoCrash due to first-letter block processing
commit-queue@webkit.org [Thu, 5 Jan 2012 08:51:51 +0000 (08:51 +0000)]
Crash due to first-letter block processing
https://bugs.webkit.org/show_bug.cgi?id=74009

Source/WebCore:

Fixing the way updateFirstLetter() finds the remaining text fragment
for a given first-letter. Previously this was unreliable in some
circumstances.

This patch provides a reliable mechanism to identify the remaining
text by storing first-letter to remaining text associations in a
hash map, managed by methods in RenderBoxModelObject.

Patch by Ken Buchanan <kenrb@chromium.org> on 2012-01-05
Reviewed by David Hyatt.

* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::updateFirstLetter)
* rendering/RenderBoxModelObject.cpp:
(WebCore::RenderBoxModelObject::willBeDestroyed):
(WebCore::RenderBoxModelObject::setFirstLetterRemainingText): Added
(WebCore::RenderBoxModelObject::firstLetterRemainingText): Added
* rendering/RenderBoxModelObject.h:
(WebCore::RenderBoxModelObject::setFirstLetterRemainingText): Added
(WebCore::RenderBoxModelObject::firstLetterRemainingText): Added

LayoutTests:

Test for crashing condition in 74009.

Patch by Ken Buchanan <kenrb@chromium.org> on 2012-01-05
Reviewed by David Hyatt.

* fast/css/first-letter-inline-flow-split-table-crash-expected.txt: Added
* fast/css/first-letter-inline-flow-split-table-crash.html: Added

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

9 years ago[WK2][EFL] creating dummy functions for Download class on Efl port.
commit-queue@webkit.org [Thu, 5 Jan 2012 08:51:02 +0000 (08:51 +0000)]
[WK2][EFL] creating dummy functions for Download class on Efl port.
https://bugs.webkit.org/show_bug.cgi?id=75246

dummy functions for Download class on Efl port

Patch by Keunsoon Lee <keunsoon.lee@samsung.com> on 2012-01-05
Reviewed by Hajime Morita.

* PlatformEfl.cmake: add new file to compile
* WebProcess/Downloads/efl: Added.
* WebProcess/Downloads/efl/DownloadEfl.cpp: Added.
(WebKit::Download::start):
(WebKit::Download::startWithHandle):
(WebKit::Download::cancel):
(WebKit::Download::platformInvalidate):
(WebKit::Download::didDecideDestination):
(WebKit::Download::platformDidFinish):
(WebKit::Download::receivedCredential):
(WebKit::Download::receivedRequestToContinueWithoutCredential):
(WebKit::Download::receivedCancellation):
(WebKit::Download::useCredential):
(WebKit::Download::continueWithoutCredential):
(WebKit::Download::cancelAuthenticationChallenge):

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

9 years agoSource/WebCore: Crash in RenderRegion::getRegionRangeForBox.
mihnea@adobe.com [Thu, 5 Jan 2012 08:34:52 +0000 (08:34 +0000)]
Source/WebCore: Crash in RenderRegion::getRegionRangeForBox.
https://bugs.webkit.org/show_bug.cgi?id=74781

Reviewed by David Hyatt.

Test: fast/regions/region-range-for-box-crash.html

This patch fixes 2 issues:
1. When removing a region from a flow thread, we clear the region range information for boxes since
this information is accurate only after the regions are laid out.
2. While the regions are invalidated (content of flow thread is not yet laid out in regions), the
functions that ask for properties of content in regions should bail out early.

* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::regionAtBlockOffset):
(WebCore::RenderBlock::logicalWidthChangedInRegions):
* rendering/RenderBox.cpp:
(WebCore::RenderBox::clearRenderBoxRegionInfo):
* rendering/RenderFlowThread.cpp:
(WebCore::RenderFlowThread::removeRegionFromThread):
(WebCore::RenderFlowThread::repaintRectangleInRegions):
(WebCore::RenderFlowThread::mapFromFlowToRegion):
(WebCore::RenderFlowThread::contentLogicalWidthOfFirstRegion):
(WebCore::RenderFlowThread::contentLogicalHeightOfFirstRegion):
(WebCore::RenderFlowThread::contentLogicalLeftOfFirstRegion):
(WebCore::RenderFlowThread::firstRegion):
(WebCore::RenderFlowThread::lastRegion):
(WebCore::RenderFlowThread::getRegionRangeForBox):
* rendering/RenderFlowThread.h:

LayoutTests: Crash in RenderFlowThread::getRegionRangeForBox.
https://bugs.webkit.org/show_bug.cgi?id=74781

Reviewed by David Hyatt.

* fast/regions/region-range-for-box-crash-expected.txt: Added.
* fast/regions/region-range-for-box-crash.html: Added.

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

9 years agounshift/pop fifo may consume excessive memory
barraclough@apple.com [Thu, 5 Jan 2012 08:00:09 +0000 (08:00 +0000)]
unshift/pop fifo may consume excessive memory
https://bugs.webkit.org/show_bug.cgi?id=75588

Reviewed by Sam Weinig.

The Array object commonly store data in a vector, consisting of a portion that
is in use, a pre-capacity (m_indexBias) and a post-capacity (the delta between
m_length and m_vectorLength). Calls to pop with grow the post-capacity, and the
current algorithm for increasePrefixVectorLength (used by unshift) will never
stink the post-capacity, so a unshift/pop fifo may consume an inordinate amount
of memory, whilst having a relatively small active length.

* runtime/JSArray.cpp:
(JSC::storageSize):
    - sizeof(JSValue) should be sizeof(WriteBarrier<Unknown>)
(JSC::SparseArrayValueMap::put):
    - sizeof(JSValue) should be sizeof(WriteBarrier<Unknown>)
(JSC::JSArray::increaseVectorLength):
    - sizeof(JSValue) should be sizeof(WriteBarrier<Unknown>)
(JSC::JSArray::unshiftCountSlowCase):
    - renamed from increaseVectorPrefixLength (this was a bad name, since it
      also moved the ArrayStorage header), rewritten.
(JSC::JSArray::shiftCount):
    - sizeof(JSValue) should be sizeof(WriteBarrier<Unknown>), count should be unsigned
(JSC::JSArray::unshiftCount):
    - sizeof(JSValue) should be sizeof(WriteBarrier<Unknown>), count should be unsigned,
      increaseVectorPrefixLength renamed to unshiftCountSlowCase
(JSC::JSArray::sortNumeric):
* runtime/JSArray.h:
    - Updated function declarations, m_indexBias should be unsigned.

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

9 years ago<http://webkit.org/b/75604> All instances of JSC::ArgumentsData appear to be leaked...
mrowe@apple.com [Thu, 5 Jan 2012 07:39:36 +0000 (07:39 +0000)]
<webkit.org/b/75604> All instances of JSC::ArgumentsData appear to be leaked by JSC::Arguments

Since JSC::Arguments has an OwnPtr for a member it needs to override destroy
to ensure that the correct destructor is invoked. This is necessary because
JSCell subclasses all intentionally have non-virtual destructors.

Reviewed by Filip Pizlo.

* runtime/Arguments.cpp:
(JSC::Arguments::destroy):
* runtime/Arguments.h:

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

9 years agoRemove HEADER_SEARCH_PATHS from Production configurations for gtest
ddkilzer@apple.com [Thu, 5 Jan 2012 07:12:38 +0000 (07:12 +0000)]
Remove HEADER_SEARCH_PATHS from Production configurations for gtest

Reviewed by Mark Rowe.

* gtest/xcode/gtest.xcodeproj/project.pbxproj: Remove
HEADER_SEARCH_PATHS from Production configurations to match
changes made for Debug and Release configurations in r104091.

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

9 years agoRoll Chromium DEPS from 116031 to 116459.
rniwa@webkit.org [Thu, 5 Jan 2012 06:49:51 +0000 (06:49 +0000)]
Roll Chromium DEPS from 116031 to 116459.

* DEPS:

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

9 years agoUnreviewed, rolling out r104084.
commit-queue@webkit.org [Thu, 5 Jan 2012 04:59:10 +0000 (04:59 +0000)]
Unreviewed, rolling out r104084.
http://trac.webkit.org/changeset/104084
https://bugs.webkit.org/show_bug.cgi?id=75600

Likely kills dom-perf benchmark in chromium
http://build.chromium.org/f/chromium/perf/linux-
release/dom_perf/report.html?history=150&rev=116444 (Requested
by dslomov on #webkit).

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

* dom/Attr.cpp:
(WebCore::Attr::setValue):
(WebCore::Attr::childrenChanged):
* dom/DynamicNodeList.cpp:
(WebCore::DynamicSubtreeNodeList::DynamicSubtreeNodeList):
(WebCore::DynamicSubtreeNodeList::length):
(WebCore::DynamicSubtreeNodeList::itemForwardsFromCurrent):
(WebCore::DynamicSubtreeNodeList::itemBackwardsFromCurrent):
(WebCore::DynamicSubtreeNodeList::item):
(WebCore::DynamicSubtreeNodeList::invalidateCache):
(WebCore::DynamicSubtreeNodeList::Caches::create):
(WebCore::DynamicSubtreeNodeList::Caches::reset):
* dom/DynamicNodeList.h:
* dom/Element.cpp:
(WebCore::Element::updateAfterAttributeChanged):
* dom/Node.cpp:
(WebCore::Node::setTreeScopeRecursively):
(WebCore::Node::invalidateNodeListsCacheAfterAttributeChanged):
(WebCore::Node::invalidateNodeListsCacheAfterChildrenChanged):
(WebCore::Node::notifyLocalNodeListsLabelChanged):
(WebCore::Node::itemTypeAttributeChanged):
(WebCore::NodeListsNodeData::invalidateCaches):
(WebCore::NodeListsNodeData::invalidateCachesThatDependOnAttributes):
* dom/Node.h:
* dom/NodeRareData.h:
* html/HTMLElement.cpp:
(WebCore::HTMLElement::parseMappedAttribute):
* html/HTMLLabelElement.cpp:
(WebCore::HTMLLabelElement::parseMappedAttribute):
* html/HTMLLabelElement.h:

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

9 years agoSource/WebKit2: Allow WebProcess to launch a client process and become its first...
mitz@apple.com [Thu, 5 Jan 2012 04:19:28 +0000 (04:19 +0000)]
Source/WebKit2: Allow WebProcess to launch a client process and become its first WebProcess.

This is the WebKit2 part of fixing <http://webkit.org/b/75444> Debugging WebProcess requires running a UI process first and waiting to attach

Reviewed by Anders Carlsson.

* PluginProcess/mac/PluginProcessMainMac.mm:
(WebKit::PluginProcessMain): Added a newline to stderr output.
* UIProcess/Launcher/mac/EnvironmentVariables.cpp:
(WebKit::EnvironmentVariables::preexistingProcessServiceNameKey): Added. Returns the name
of the environment variable that optionally tells a UI processs to look for a preexisting
web process instead of launching a new one.
(WebKit::EnvironmentVariables::preexistingProcessTypeKey): Added. Returns the name of the
environment variable that tells a UI process the type of the preexisting web process
indicated by the other variable.
* UIProcess/Launcher/mac/EnvironmentVariables.h:
* UIProcess/Launcher/mac/ProcessLauncherMac.mm:
(WebKit::ProcessLauncher::launchProcess): Changed to look for a preexisting web process if
the aforementioned environment variables are set and the preexisting process has not been
used yet.
* WebProcess/mac/WebProcessMainMac.mm:
(WebKit::WebProcessMain): Changed to look for the -client-executable command-line option,
and if present, launch the specified executable, setting variables in its environment that
tell it to use this preexisting web process, then wait for it to send a send right to its
listening port.

Tools: Add a --target-web-process option to the debug-* scripts. When specified, the scripts will
start WebProcess under gdb and WebProcess will then run the client executable.

This is the Tools part of fixing <http://webkit.org/b/75444> Debugging WebProcess requires running a UI process first and waiting to attach

Reviewed by Anders Carlsson.

* Scripts/webkitdirs.pm:
(shouldTargetWebProcess): Added.
(determineShouldTargetWebProcess): Added. Checks for --target-web-process.
(execMacWebKitAppForDebugging): Changed to target gdb at WebProcess and pass the path to the
app using the -client-executable option if targeting the web process.

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

9 years agoAttempt Chromium build fix.
levin@chromium.org [Thu, 5 Jan 2012 03:20:26 +0000 (03:20 +0000)]
Attempt Chromium build fix.

* src/WorkerFileSystemCallbacksBridge.h:

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