⚠ Archived content — this site is no longer maintained.   Current WebKit documentation is at docs.webkit.org.

Timeline



Jun 1, 2013:

9:42 PM Changeset in webkit [151079] by Chris Fleizach
  • 3 edits
    2 adds in trunk

WebKit ignores aria-hidden when traversing nodes for name calculation
https://bugs.webkit.org/show_bug.cgi?id=117101

Reviewed by Tim Horton.

Source/WebCore:

When calculating the inner text, aria-hidden should be considered.

Test: accessibility/text-role-with-aria-hidden-inside.html

  • accessibility/AccessibilityNodeObject.cpp:

(WebCore::shouldUseAccessiblityObjectInnerText):

LayoutTests:

  • accessibility/text-role-with-aria-hidden-inside-expected.txt: Added.
  • accessibility/text-role-with-aria-hidden-inside.html: Added.
4:41 PM Changeset in webkit [151078] by jberlin@webkit.org
  • 8 edits in branches/safari-537.43-branch/Source/WebKit2

Merge r151054.

4:31 PM Changeset in webkit [151077] by jberlin@webkit.org
  • 17 edits in branches/safari-537.43-branch/Source/WebKit2

Merge r151043.

4:26 PM Changeset in webkit [151076] by Darin Adler
  • 6 edits in trunk/Source/WebCore

window.speechSynthesis needs to be cheap
https://bugs.webkit.org/show_bug.cgi?id=117111
rdar://problem/14042030

Reviewed by Dean Jackson.

Add the traditional laziness to all of the speech synthesis code, wherever
it was omitted.

  • Modules/speech/SpeechSynthesis.cpp:

(WebCore::SpeechSynthesis::create): Tweaked style (took out unneeded parentheses).
(WebCore::SpeechSynthesis::SpeechSynthesis): Don't create m_platformSpeechSynthesizer.
(WebCore::SpeechSynthesis::setPlatformSynthesizer): Clear state when changing the
platform speech synthesizer. Since this code is only used to set up a mock in the
test runner, the fact that it was wrong before was harmless, but still not good.
(WebCore::SpeechSynthesis::getVoices): Create the platform speech synthesizer here
so we can get the voice list from it.
(WebCore::SpeechSynthesis::startSpeakingImmediately): Create the platform speech
synthesizer here.
(WebCore::SpeechSynthesis::cancel): Check the platform speech synthesizer for
null and do nothing if it's not present.
(WebCore::SpeechSynthesis::pause): Ditto.
(WebCore::SpeechSynthesis::resume): Ditto.

  • platform/PlatformSpeechSynthesizer.cpp:

(WebCore::PlatformSpeechSynthesizer::create): Don't call initializeVoiceList just
to create a synthesizer.
(WebCore::PlatformSpeechSynthesizer::voiceList): Do call initializeVoiceList once
when asked for a voice list.

  • platform/PlatformSpeechSynthesizer.h: The voiceList function is no longer inlined.

The unused setVoiceList function has been removed. The initializeVoiceList is now
private rather than protected. Added a new m_voiceListIsInitialized boolean.

  • platform/mac/PlatformSpeechSynthesizerMac.mm:

(WebCore::PlatformSpeechSynthesizer::PlatformSpeechSynthesizer): Initialize
m_voiceListIsInitialized to false.

  • platform/mock/PlatformSpeechSynthesizerMock.cpp:

(WebCore::PlatformSpeechSynthesizerMock::create): Don't call initializeVoiceList just
to create a synthesizer.
(WebCore::PlatformSpeechSynthesizerMock::~PlatformSpeechSynthesizerMock):
Removed unneeded call to m_speakingFinishedTimer.stop() since timers automatically
stop when you destroy them.
(WebCore::PlatformSpeechSynthesizerMock::initializeVoiceList): Removed unneeded
call to m_voiceList.clear(), since the caller only calls this once when the
voice list is already clear.

4:09 PM Changeset in webkit [151075] by timothy_horton@apple.com
  • 2 edits in trunk/Tools

Add a preferred email address and "expertise" for me.

  • Scripts/webkitpy/common/config/contributors.json:
4:09 PM Changeset in webkit [151074] by jberlin@webkit.org
  • 2 edits in branches/safari-537.43-branch/Tools

Merge r150636.

3:24 PM Changeset in webkit [151073] by fpizlo@apple.com
  • 11 edits in branches/dfgFourthTier/Source/JavaScriptCore

Fix some minor issues in the DFG's profiling of heap accesses
https://bugs.webkit.org/show_bug.cgi?id=113010

Reviewed by Goeffrey Garen.

Carefully merge r146669 from trunk. This required some fiddling since it
wasn't a clean apply.

Original changelog:

1) If a CodeBlock gets jettisoned by GC, we should count the exit sites.


2) If a CodeBlock clears a structure stub during GC, it should record this, and
the DFG should prefer to not inline that access (i.e. treat it as if it had an
exit site).


3) If a PutById was seen by the baseline JIT, and the JIT attempted to cache it,
but it chose not to, then assume that it will take slow path.


4) If we frequently exited because of a structure check on a weak constant,
don't try to inline that access in the future.


5) Treat all exits that were counted as being frequent.


81% speed-up on Octane/gbemu. Small speed-ups elsewhere, and no regressions.


  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::finalizeUnconditionally):
(JSC):
(JSC::CodeBlock::resetStubDuringGCInternal):
(JSC::CodeBlock::reoptimize):
(JSC::CodeBlock::jettison):
(JSC::ProgramCodeBlock::jettisonImpl):
(JSC::EvalCodeBlock::jettisonImpl):
(JSC::FunctionCodeBlock::jettisonImpl):
(JSC::CodeBlock::tallyFrequentExitSites):

  • bytecode/CodeBlock.h:

(CodeBlock):
(JSC::CodeBlock::tallyFrequentExitSites):
(ProgramCodeBlock):
(EvalCodeBlock):
(FunctionCodeBlock):

  • bytecode/GetByIdStatus.cpp:

(JSC::GetByIdStatus::computeFor):

  • bytecode/PutByIdStatus.cpp:

(JSC::PutByIdStatus::computeFor):

  • bytecode/StructureStubInfo.h:

(JSC::StructureStubInfo::StructureStubInfo):
(StructureStubInfo):

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::handleGetById):
(JSC::DFG::ByteCodeParser::parseBlock):

  • dfg/DFGOSRExitBase.cpp:

(JSC::DFG::OSRExitBase::considerAddingAsFrequentExitSiteSlow):

  • dfg/DFGOSRExitBase.h:

(JSC::DFG::OSRExitBase::considerAddingAsFrequentExitSite):
(OSRExitBase):

  • jit/JITStubs.cpp:

(JSC::DEFINE_STUB_FUNCTION):

  • runtime/Options.h:

(JSC):

11:02 AM Changeset in webkit [151072] by akling@apple.com
  • 2 edits in trunk/Source/WebCore

Fix typo in r151071.

  • dom/Element.cpp:

(WebCore::Element::attributeChanged):

3:20 AM Changeset in webkit [151071] by akling@apple.com
  • 4 edits in trunk/Source/WebCore

Move Node::hasName() to Element.
<http://webkit.org/b/117107>

Reviewed by Antti Koivisto.

A Node can't have attributes, and thus can't have a name.
Use a bit on ElementData instead of (half) a Node flag to track whether we have a name.

  • dom/Element.cpp:

(WebCore::Element::attributeChanged):
(WebCore::ElementData::ElementData):

  • dom/Element.h:

(WebCore::ElementData::hasName):
(WebCore::Element::hasName):

  • dom/Node.h:

(WebCore::Node::isEditingText):

2:48 AM Changeset in webkit [151070] by akling@apple.com
  • 2 edits in trunk/Source/WebKit/mac

Remove unnused WebDOMNodeOperationsInternal category.
<http://webkit.org/b/117105>

Reviewed by Ryosuke Niwa.

_subresourceURLs had no clients.

  • DOM/WebDOMOperations.mm:
2:39 AM Changeset in webkit [151069] by akling@apple.com
  • 8 edits in trunk/Source

Move Node::hasID() and hasClass() to Element.
<http://webkit.org/b/117104>

Reviewed by Ryosuke Niwa.

Source/WebCore:

A Node can't have attributes, and thus can't have an ID or a class.
Move these to Element instead, and fix up a few call sites that called through on a Node*.

  • dom/Element.h:
  • dom/LiveNodeList.cpp:

(WebCore::LiveNodeList::namedItem):

  • dom/Node.h:
  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::name):

  • rendering/RenderTreeAsText.cpp:

(WebCore::RenderTreeAsText::writeRenderObject):
(WebCore::writeRenderRegionList):

Source/WebKit/mac:

  • WebView/WebRenderLayer.mm:

(+[WebRenderLayer nameForLayer:]):

May 31, 2013:

11:00 PM Changeset in webkit [151068] by gyuyoung.kim@samsung.com
  • 4 edits in trunk/LayoutTests

Unreviewed, EFL gardening. Remove passed accessibility test from EFL WK1.

  • platform/efl-wk1/TestExpectations:
  • platform/efl-wk2/TestExpectations:
  • platform/efl/TestExpectations:
10:41 PM Changeset in webkit [151067] by commit-queue@webkit.org
  • 7 edits
    2 adds in trunk/Source

[Curl] Unable to download files.
https://bugs.webkit.org/show_bug.cgi?id=116150

Patch by peavo@outlook.com <peavo@outlook.com> on 2013-05-31
Reviewed by Brent Fulgham.

Implemented basic download functionality for Curl.

Source/WebCore:

  • WebCore.vcproj/WebCore.vcproj: Added file.
  • WebCore.vcxproj/WebCore.vcxproj: Added file.
  • WebCore.vcxproj/WebCore.vcxproj.filters: Added file.
  • platform/network/curl/CurlDownload.h: Added.
  • platform/network/curl/CurlDownload.cpp: Added.

Source/WebKit/win:

  • WebDownload.h:
  • WebDownloadCurl.cpp:

(WebDownload::init):
(WebDownload::start):
(WebDownload::cancel):
(WebDownload::deletesFileUponFailure):
(WebDownload::setDeletesFileUponFailure):
(WebDownload::setDestination):
(WebDownload::useCredential):
(WebDownload::didReceiveResponse):
(WebDownload::didReceiveDataOfLength):
(WebDownload::didFinish):
(WebDownload::didFail):

9:21 PM Changeset in webkit [151066] by roger_fong@apple.com
  • 3 edits in trunk/Tools

Unreviewed. Make windows test bots search in the correct directory for build output.

  • BuildSlaveSupport/build.webkit.org-config/master.cfg:

(RunWebKitTests.start):

  • Scripts/webkitdirs.pm:

(determineConfigurationProductDir):

8:54 PM Changeset in webkit [151065] by roger_fong@apple.com
  • 2 edits in trunk/Tools

Unreviewed. Windows build fix...

  • BuildSlaveSupport/built-product-archive:

(createZip):

8:34 PM Changeset in webkit [151064] by roger_fong@apple.com
  • 2 edits in trunk/Tools

Unreviewed. Windows build fix. One more time!

  • BuildSlaveSupport/built-product-archive:

(archiveBuiltProduct):
(extractBuiltProduct):

8:04 PM Changeset in webkit [151063] by roger_fong@apple.com
  • 2 edits in trunk/Tools

Unreviewed. Windows build fix.

  • Scripts/build-webkit:
7:59 PM Changeset in webkit [151062] by gyuyoung.kim@samsung.com
  • 2 edits in trunk/Source/WebKit2

[EFL][WK2] Add a null checking condition to in hide() of EwkContextMenu
https://bugs.webkit.org/show_bug.cgi?id=117014

Reviewed by Christophe Dumez.

m_viewImpl is able to be null. So, we need to protect this function against such case.

  • UIProcess/API/efl/ewk_context_menu.cpp:

(EwkContextMenu::hide):
(ewk_context_menu_hide):

  • UIProcess/API/efl/ewk_context_menu_private.h:

(EwkContextMenu):

6:43 PM Changeset in webkit [151061] by Lucas Forschler
  • 4 edits in branches/safari-537.43-branch/Source

Versioning.

6:39 PM Changeset in webkit [151060] by oliver@apple.com
  • 4 edits in trunk/Source/WebKit2

Fix bug in active page tracking that lead to plugins hanging during destruction
https://bugs.webkit.org/show_bug.cgi?id=117099

Reviewed by Anders Carlsson.

NPRuntimeObjectMap no longer keeps its own reference to the
throttler, and no longer reports activity during destruction.

  • WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp:

(WebKit::NPRuntimeObjectMap::NPRuntimeObjectMap):
(WebKit::NPRuntimeObjectMap::evaluate):

  • WebProcess/Plugins/Netscape/NPRuntimeObjectMap.h:
  • WebProcess/Plugins/PluginView.cpp:

(WebKit::PluginView::PluginView):

6:07 PM Changeset in webkit [151059] by roger_fong@apple.com
  • 2 edits in trunk/Tools

Unreviewed. Windows build fix.

  • Scripts/build-webkit:
5:45 PM Changeset in webkit [151058] by Lucas Forschler
  • 1 copy in tags/Safari-537.43.6

New Tag.

5:18 PM EfficientStrings edited by rafael.lobo@openbossa.org
This is a summary of what was discussed on "[webkit-dev] When should I … (diff)
5:01 PM Changeset in webkit [151057] by timothy_horton@apple.com
  • 6 edits in trunk/Source/WebKit2

[wk2] All intrinsic content size changes should go through the 0-delay timer
https://bugs.webkit.org/show_bug.cgi?id=117058
<rdar://problem/13935042>

Reviewed by Anders Carlsson.

In r146913, I added a 0-delay timer so that we'd coalesce intrinsic
content size changes. However, didUpdateGeometry was still immediately
invalidating the intrinsic content size without coalescing.

Move that update to the WebProcess to share the timer.

  • UIProcess/DrawingAreaProxy.h:

(WebKit::DrawingAreaProxy::didUpdateGeometry):

  • UIProcess/DrawingAreaProxy.messages.in:
  • UIProcess/mac/TiledCoreAnimationDrawingAreaProxy.h:
  • UIProcess/mac/TiledCoreAnimationDrawingAreaProxy.mm:

(WebKit::TiledCoreAnimationDrawingAreaProxy::didUpdateGeometry):
Remove the newIntrinsicContentSize argument, and don't invalidate intrinsic
content size inside didUpdateGeometry.

  • WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:

(WebKit::TiledCoreAnimationDrawingArea::updateGeometry):
Start the intrinsic content size update timer when we finish updateGeometry.

4:47 PM Changeset in webkit [151056] by roger_fong@apple.com
  • 2 edits
    2 deletes in trunk/Tools

Make build-webkit output VCExpress 2010 build logs properly.
https://bugs.webkit.org/show_bug.cgi?id=117096

Reviewed by Brent Fulgham.

Make it so that output from VCExpress is always printed to console.
Get build log results from AssembleBuildLogs project output.
We don't need those old VCExpress scripts anymore either.

  • Scripts/build-webkit:
  • Scripts/print-msvc-project-dependencies: Removed.
  • Scripts/print-vse-failure-logs: Removed.
4:40 PM Changeset in webkit [151055] by ap@apple.com
  • 5 edits
    1 add in trunk/Source/WebKit2

Sandbox violations when trying to access fonts in non-standard locations
https://bugs.webkit.org/show_bug.cgi?id=117097
<rdar://problem/9264746>

Reviewed by Anders Carlsson.

The issue was that lack of a main xib was resulting in font machinery being
initialized too early, before we entered sandbox.

  • Resources/WebContentProcess.xib: Added.
  • WebKit2.xcodeproj/project.pbxproj:
  • WebProcess/EntryPoint/mac/LegacyProcess/Info.plist:
  • WebProcess/EntryPoint/mac/XPCService/WebContentService.Development/Info.plist:
  • WebProcess/EntryPoint/mac/XPCService/WebContentService/Info.plist:
4:32 PM Changeset in webkit [151054] by jberlin@webkit.org
  • 8 edits in trunk/Source/WebKit2

Need the ability to get the information for a plug-in with a particular process id that may
be running on a page
https://bugs.webkit.org/show_bug.cgi?id=117090

Rubber-stamped by Anders Carlsson.

Follow-up to r151043 incorprating some feedback I got from Darin after I had already
committed the patch.

  • UIProcess/API/C/mac/WKPagePrivateMac.cpp:

(callGetPlugInInformationBlockAndDispose):
Renamed to be less wordy.
(WKPageGetPlugInInformation):
Ditto.

  • UIProcess/API/C/mac/WKPagePrivateMac.h:

Ditto.

  • UIProcess/Plugins/PluginProcessManager.h:
  • UIProcess/Plugins/mac/PluginProcessManagerMac.mm:

(WebKit::PluginProcessManager::findPlugInProcessByID):
Renamed to not use "Cocoa method style" in non-Cocoa functions.
(WebKit::PluginProcessManager::findPlugInProcessByToken):
Ditto.

  • UIProcess/WebPageProxy.h:
  • UIProcess/mac/WebPageProxyMac.mm:

(WebKit::WebPageProxy::getPlugInInformation):
Reduce ref count churn and fix a variable name.
Updated for the change to findPlugInProcessByID.
(WebKit::WebPageProxy::containsPlugInCallback):
Updated for the change to findPlugInProcessByToken.

  • WebProcess/Plugins/PDF/SimplePDFPlugin.h:

Move the override of a virtual function to the private section.

4:32 PM Changeset in webkit [151053] by fpizlo@apple.com
  • 14 edits in branches/dfgFourthTier/LayoutTests

fourthTier: convert more fast/js/dfg-* tests to wait for the concurrent JIT

Rubber stamped by Mark Hahnenberg.

  • fast/js/dfg-arguments-alias-one-block-overwrite-expected.txt:
  • fast/js/dfg-arguments-out-of-bounds-expected.txt:
  • fast/js/dfg-arith-add-overflow-check-elimination-predicted-but-not-proven-int-expected.txt:
  • fast/js/dfg-arith-add-overflow-check-elimination-tower-of-large-numbers-expected.txt:
  • fast/js/dfg-array-length-dead-expected.txt:
  • fast/js/dfg-array-pop-side-effects-expected.txt:
  • fast/js/resources/js-test-pre.js:

(testFailed):
(dfgIncrement):
(isSuccessfullyParsed):

  • fast/js/script-tests/dfg-arguments-alias-one-block-overwrite.js:
  • fast/js/script-tests/dfg-arguments-out-of-bounds.js:
  • fast/js/script-tests/dfg-arith-add-overflow-check-elimination-predicted-but-not-proven-int.js:
  • fast/js/script-tests/dfg-arith-add-overflow-check-elimination-tower-of-large-numbers.js:
  • fast/js/script-tests/dfg-array-length-dead.js:
  • fast/js/script-tests/dfg-array-pop-side-effects.js:
4:13 PM Changeset in webkit [151052] by fpizlo@apple.com
  • 1 edit in branches/dfgFourthTier/Source/JavaScriptCore/ChangeLog

Fix ChangeLog. That revision was no longer a work in progress.

3:49 PM Changeset in webkit [151051] by Lucas Forschler
  • 9 edits in branches/safari-537.43-branch/Source

Merged r151040. <rdar://problem/14027095>

3:47 PM Changeset in webkit [151050] by Lucas Forschler
  • 9 edits in branches/safari-537.43-branch/Source

Rollout of r151048.

3:32 PM Changeset in webkit [151049] by ap@apple.com
  • 2 edits in trunk/Source/WebKit2

<rdar://problem/14036464> Sandbox violation when using Web SpeechSynthesis

Reviewed by Anders Carlsson

  • WebProcess/com.apple.WebProcess.sb.in: Allow com.apple.speech.synthesis.console.
3:23 PM Changeset in webkit [151048] by Lucas Forschler
  • 9 edits in branches/safari-537.43-branch/Source

Merged r51945. <rdar://problem/14027095>

3:14 PM Changeset in webkit [151047] by Brent Fulgham
  • 3 edits in trunk/Tools

[Windows] Use WinLauncher to display LayoutTest results
https://bugs.webkit.org/show_bug.cgi?id=117085

Reviewed by Oliver Hunt.

  • Scripts/webkitdirs.pm:

(runSafari): Use WinLauncher to display content

  • WinLauncher/WinLauncher.cpp:

(dllLauncherEntryPoint): Check for URL argument.

3:13 PM Changeset in webkit [151046] by Lucas Forschler
  • 2 edits in branches/safari-537.43-branch/Source/WebCore

Merged r151042. <rdar://problem/13812355>

3:08 PM Changeset in webkit [151045] by fpizlo@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Incorrect assertion in DFG::Graph::uncheckedActivationRegisterFor()
<rdar://problem/13989324>

Rubber stamped by Mark Hahnenberg.

This has a bogus assertion that checks that the passed CodeOrigin doesn't have
an inline call frame. This was well intentioned in the sense that it is true
that inlined call frames wouldn't have an activation register. But that doesn't
mean that people won't ask. Removing the assertion fixes a debug-only crash and
has no impact on production code. This change adds a comment to that effect.

  • dfg/DFGGraph.h:

(JSC::DFG::Graph::uncheckedActivationRegisterFor):

3:01 PM Changeset in webkit [151044] by roger_fong@apple.com
  • 4 edits in trunk

Unreviewed. Modify AssembleBuildLogs project to WebKit solution in preparation for moving buildbots to VCExpress 2010.
Add it to the WebKit solution as well.

  • win/AssembleBuildLogs/AssembleLogs.cmd:
2:59 PM Changeset in webkit [151043] by jberlin@webkit.org
  • 17 edits in trunk/Source/WebKit2

Need the ability to get the information for a plug-in with a particular process id that may
be running on a page
https://bugs.webkit.org/show_bug.cgi?id=117090

Reviewed by Anders Carlsson.

  • UIProcess/API/C/mac/WKPagePrivateMac.cpp:

(callGetInformationForPlugInWithProcessIDBlockAndDispose):
Get the block from the context, invoke it with the result, and dispose of it.
(WKPageGetInformationForPlugInWithProcessID):
Ask the WebPageProxy and provide it with a dictionary callback that uses the
above function to invoke the passed in block.

  • UIProcess/API/C/mac/WKPagePrivateMac.h:

Add WKPageGetInformationForPlugInWithProcessID and a typedef for the callback block.

  • UIProcess/Plugins/PluginProcessManager.h:

Add ways to get the PluginProcessProxy associated with a process id or process token.

  • UIProcess/Plugins/mac/PluginProcessManagerMac.mm:

(WebKit::PluginProcessManager::plugInProcessWithProcessID):
Return the first PluginProcessProxy with the passed in process ID.
(WebKit::PluginProcessManager::plugInProcessWithToken):
Return the first PluginProcessProxy with the passed in process token.

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::close):
Invalidate any outstanding requests for plug-in information.

  • UIProcess/WebPageProxy.h:

Keep track of the callbacks for the requests for plug-in information.

  • UIProcess/WebPageProxy.messages.in:
  • UIProcess/mac/WebPageProxyMac.mm:

(WebKit::WebPageProxy::getInformationForPlugInWithProcessID):
If there are no known plug-ins with the provided process ID, invoke the callback with a null
dictionary of plug-in information.
Otherwise, keep track of the callback and send a message to the web process asking for the
information.
(WebKit::WebPageProxy::containsPlugInCallback):
If the page did not contain the plug-in, invoke the callback with a null dictionary of
plug-in information.
Invoke the callback with a dictionary containing the PlugInModuleInfo.

  • WebProcess/Plugins/Netscape/NetscapePlugin.h:

Return 0 for the plugInProcessToken.

  • WebProcess/Plugins/PDF/SimplePDFPlugin.h:

Ditto.

  • WebProcess/Plugins/Plugin.h:

Add a pure virtual method for plugInProcessToken so it can be accessed from from the Plugin
on the PluginView.

  • WebProcess/Plugins/PluginProxy.h:

Return the actual plug-in process token.

  • WebProcess/Plugins/PluginView.h:

(WebKit::PluginView::plugIn):
Make it possible to get at the plug-in process token through the Plugin.

  • WebProcess/WebPage/WebPageMac.mm:

(WebKit::WebPage::containsPluginViewsWithPluginProcessToken):
If there is an instance of the plug-in with that token, send a confirmation to the ui
process.

  • WebProcess/WebPage/WebPage.h:
  • WebProcess/WebPage/WebPage.messages.in:
2:55 PM Changeset in webkit [151042] by andersca@apple.com
  • 2 edits in trunk/Source/WebCore

Take the normal NSView code path when drawing into an inclusive layer
https://bugs.webkit.org/show_bug.cgi?id=117094
<rdar://problem/13812355>

Reviewed by Sam Weinig.

For now, take the normal code path when drawing into an inclusive layer.

  • platform/mac/WidgetMac.mm:

(WebCore::Widget::paint):

2:48 PM Changeset in webkit [151041] by fpizlo@apple.com
  • 4 edits in branches/dfgFourthTier/Source/JavaScriptCore

Remove CodeOrigin::valueProfileOffset since it was only needed for op_call_put_result.

Rubber stamped by Mark Hahnenberg.

  • bytecode/CodeOrigin.h:

(CodeOrigin):
(JSC::CodeOrigin::CodeOrigin):
(JSC::CodeOrigin::isSet):

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::currentCodeOrigin):

  • dfg/DFGGraph.h:

(JSC::DFG::Graph::valueProfileFor):

2:44 PM Changeset in webkit [151040] by Stephanie Lewis
  • 9 edits in trunk/Source

Source/WebCore: Update low memory handler to use new memory pressure notifications on new OS versions.
<rdar://problem/14027095>

Reviewed by Mark Rowe.

No change in functionality.

  • WebCore.exp.in:
  • platform/mac/MemoryPressureHandlerMac.mm:

(WebCore::MemoryPressureHandler::install): Call new API

  • platform/mac/WebCoreSystemInterface.h:
  • platform/mac/WebCoreSystemInterface.mm:

Source/WebKit/mac: Update low memory handler to use new memory pressure notifications on new OS versions.
<rdar://problem/14027095>

Reviewed by Mark Rowe.

  • WebCoreSupport/WebSystemInterface.mm:

(InitWebCoreSystemInterface):

Source/WebKit2: Update low memory handler to use new memory pressure notifications on new OS versions.
<rdar://problem/14027095>

Reviewed by Mark Rowe.

  • WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:

(InitWebCoreSystemInterface):

2:40 PM Changeset in webkit [151039] by fpizlo@apple.com
  • 2 edits in branches/dfgFourthTier/Source/JavaScriptCore

Remove finalDestinationOrIgnored since it isn't called anymore.

Rubber stamped by Mark Hahnenberg.

  • bytecompiler/BytecodeGenerator.h:

(BytecodeGenerator):

2:37 PM Changeset in webkit [151038] by fpizlo@apple.com
  • 20 edits in branches/dfgFourthTier/Source/JavaScriptCore

fourthTier: get rid of op_call_put_result
https://bugs.webkit.org/show_bug.cgi?id=117047

Reviewed by Gavin Barraclough.

Work in progress. This still makes like 20 tests crash.

op_call_put_result is an oddball. Its semantics are that it takes the return
value of a call instruction, which is set aside in regT0/regT1, and places them
into some stack slot. This is weird since there is an implicit contract with the
preceding bytecode instruction, and it's even weirder since it means that it
doesn't make sense to jump to it; for example OSR exit from the preceding call
instruction must make sure to jump over the op_call_put_result.

So this patch gets rid of op_call_put_result:

  • In bytecode, all calls return a value and we always allocate a temporary for that value even if it isn't used.


  • The LLInt does the return value saving as part of dispatchAfterCall().


  • The JIT and DFG do the return value saving as part of normal code generation. The DFG already did the right thing.


  • DFG->JIT OSR exit in the case of inlining will make the return PC's point at the CallLinkInfo::callReturnLocation, rather than the machine PC associated with the op_call_put_result instruction.


  • Tons of code gets removed. The DFG had to track whether or not a call had a return value in a bunch of places. It had to track the fact that we would exit to after the op_call_put_result. It was a mess. That mess is now gone.
  • bytecode/CallLinkStatus.cpp:

(JSC::CallLinkStatus::computeFromLLInt):

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::printCallOp):
(JSC::CodeBlock::dumpArrayProfiling):
(JSC::CodeBlock::dumpBytecode):
(JSC::CodeBlock::CodeBlock):

  • bytecode/CodeBlock.h:
  • bytecode/Opcode.h:

(JSC):
(JSC::padOpcodeName):

  • bytecompiler/BytecodeGenerator.cpp:

(JSC::BytecodeGenerator::emitCall):
(JSC::BytecodeGenerator::emitCallVarargs):
(JSC::BytecodeGenerator::emitConstruct):

  • bytecompiler/NodesCodegen.cpp:

(JSC::NewExprNode::emitBytecode):
(JSC::FunctionCallValueNode::emitBytecode):
(JSC::FunctionCallResolveNode::emitBytecode):
(JSC::FunctionCallBracketNode::emitBytecode):
(JSC::FunctionCallDotNode::emitBytecode):
(JSC::CallFunctionCallDotNode::emitBytecode):
(JSC::ApplyFunctionCallDotNode::emitBytecode):

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::ByteCodeParser):
(ByteCodeParser):
(JSC::DFG::ByteCodeParser::currentCodeOrigin):
(JSC::DFG::ByteCodeParser::addCall):
(JSC::DFG::ByteCodeParser::getPredictionWithoutOSRExit):
(JSC::DFG::ByteCodeParser::getPrediction):
(JSC::DFG::ByteCodeParser::handleCall):
(JSC::DFG::ByteCodeParser::handleInlining):
(JSC::DFG::ByteCodeParser::handleMinMax):
(JSC::DFG::ByteCodeParser::handleIntrinsic):
(JSC::DFG::ByteCodeParser::handleConstantInternalFunction):
(JSC::DFG::ByteCodeParser::parseBlock):

  • dfg/DFGCapabilities.cpp:

(JSC::DFG::capabilityLevel):

  • dfg/DFGOSRExitCompiler.cpp:
  • dfg/DFGOSRExitCompilerCommon.cpp:

(JSC::DFG::reifyInlinedCallFrames):

  • jit/JIT.cpp:

(JSC::JIT::privateCompileMainPass):

  • jit/JIT.h:

(JIT):

  • jit/JITCall.cpp:

(JSC::JIT::emitPutCallResult):
(JSC::JIT::compileLoadVarargs):
(JSC::JIT::compileCallEval):
(JSC::JIT::compileCallEvalSlowCase):
(JSC::JIT::compileOpCall):
(JSC::JIT::compileOpCallSlowCase):
(JSC::JIT::emit_op_call):
(JSC):
(JSC::JIT::emit_op_call_eval):
(JSC::JIT::emit_op_call_varargs):
(JSC::JIT::emit_op_construct):
(JSC::JIT::emitSlow_op_call):
(JSC::JIT::emitSlow_op_call_eval):
(JSC::JIT::emitSlow_op_call_varargs):
(JSC::JIT::emitSlow_op_construct):

  • jit/JITCall32_64.cpp:

(JSC::JIT::emitPutCallResult):
(JSC::JIT::compileLoadVarargs):
(JSC::JIT::compileCallEval):
(JSC::JIT::compileCallEvalSlowCase):
(JSC::JIT::compileOpCall):
(JSC::JIT::compileOpCallSlowCase):

  • jit/JITOpcodes.cpp:

(JSC):

  • llint/LLIntSlowPaths.cpp:

(JSC::LLInt::genericCall):
(JSC::LLInt::LLINT_SLOW_PATH_DECL):

  • llint/LowLevelInterpreter.cpp:

(JSC::CLoop::execute):

  • llint/LowLevelInterpreter32_64.asm:
  • llint/LowLevelInterpreter64.asm:
1:44 PM Changeset in webkit [151037] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[BlackBerry] Update Button UX.
https://bugs.webkit.org/show_bug.cgi?id=116992

Patch by Tiancheng Jiang <tijiang@rim.com> on 2013-05-31
Reviewed by Rob Buis.

BlackBerry PR 342298.
Internally Review by Jeff Rogers.

  • css/themeBlackBerry.css:
1:27 PM Changeset in webkit [151036] by ddkilzer@apple.com
  • 2 edits in trunk/Source/WebCore

DerivedSources.make: any rules that use $(FEATURE_DEFINES) should be rebuilt when FeatureDefines.xcconfig changes
<http://webkit.org/b/117081>

Reviewed by Mark Rowe.

  • DerivedSources.make: Add $(PLATFORM_FEATURE_DEFINES)

dependency for all rules that use $(FEATURE_DEFINES) to generate
files.
(PLATFORM_FEATURE_DEFINES): Set this variable to
Configurations/FeatureDefines.xcconfig if not already set on
Mac OS X.

1:16 PM Changeset in webkit [151035] by ap@apple.com
  • 2 edits in trunk/Source/WebKit2

REGRESSION (r141445): MPEG-4 videos do not play on certain hardware configurations
https://bugs.webkit.org/show_bug.cgi?id=117089
<rdar://problem/13839717>

Reviewed by Mark Rowe.

  • Configurations/WebContentProcess.xcconfig: Statically link to a framework that uses an XPC service to work around a libxpc limitation on Lion.
12:08 PM Changeset in webkit [151034] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Text Field UX updates.
https://bugs.webkit.org/show_bug.cgi?id=116996

Patch by Tiancheng Jiang <tijiang@rim.com> on 2013-05-31
Reviewed by Rob Buis.

BlackBerry PR 342333.
Internally Reviewed by Jeff Rogers.

Update disabled text field font color.

  • css/themeBlackBerry.css:
11:22 AM Changeset in webkit [151033] by commit-queue@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

[sh4] Fix Overflow case of branchMul32 in baseline JIT.
https://bugs.webkit.org/show_bug.cgi?id=117057

Patch by Julien Brianceau <jbrianceau@nds.com> on 2013-05-31
Reviewed by Oliver Hunt.

Current implementation of Overflow case in branchMul32 performs an
unsigned multiplication whereas a signed multiplication is expected.

  • assembler/MacroAssemblerSH4.h:

(JSC::MacroAssemblerSH4::branchMul32):

11:22 AM Changeset in webkit [151032] by commit-queue@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

[sh4] Fix floating point comparisons in baseline JIT.
https://bugs.webkit.org/show_bug.cgi?id=117066.

Patch by Julien Brianceau <jbrianceau@nds.com> on 2013-05-31
Reviewed by Oliver Hunt.

Current implementation of branchDouble function in baseline JIT is wrong
for some conditions and overkill for others. For instance:

  • With DoubleGreaterThanOrEqual condition, branch will be taken if either operand is NaN with current implementation whereras it should not.
  • With DoubleNotEqualOrUnordered condition, performed NaN checks are useless (because comparison result is false if either operand is NaN).
  • assembler/MacroAssemblerSH4.h:

(JSC::MacroAssemblerSH4::branchDouble):

11:21 AM Changeset in webkit [151031] by commit-queue@webkit.org
  • 3 edits in trunk/Source/JavaScriptCore

[sh4] Fix double floating point transfer in baseline JIT.
https://bugs.webkit.org/show_bug.cgi?id=117054

Patch by Julien Brianceau <jbrianceau@nds.com> on 2013-05-31
Reviewed by Oliver Hunt.

In current implementation, dmovRegReg function transfers only one single
FPRegister as PR=1 and SZ=0 in floating point status/control register.
Double transfers must be performed with two fmov.s opcodes.

  • assembler/MacroAssemblerSH4.h:

(JSC::MacroAssemblerSH4::moveDouble):
(JSC::MacroAssemblerSH4::addDouble): Handle (op2==dest) case properly.
(JSC::MacroAssemblerSH4::sqrtDouble):

  • assembler/SH4Assembler.h:

(JSC::SH4Assembler::fmovsRegReg):

11:19 AM Changeset in webkit [151030] by commit-queue@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

[sh4] Handle branchType properly in branchTruncateDoubleToInt32.
https://bugs.webkit.org/show_bug.cgi?id=117062

Patch by Julien Brianceau <jbrianceau@nds.com> on 2013-05-31
Reviewed by Oliver Hunt.

Current implementation of branchTruncateDoubleToInt32 is incorrect
when branchType == BranchIfTruncateSuccessful in sh4 baseline JIT.

  • assembler/MacroAssemblerSH4.h:

(JSC::MacroAssemblerSH4::branchTruncateDoubleToInt32):

10:45 AM Changeset in webkit [151029] by dino@apple.com
  • 2 edits in trunk/Source/WebCore

Update CheckedInt.h to latest version from Mozilla
https://bugs.webkit.org/show_bug.cgi?id=117009

Reviewed by Darin Adler.

Mozilla have updated their version of CheckedInt and suggested
we sync. Here are the improvements:

  • CheckedInt now consistently rejects unsupported types. Before, you

could sometimes construct a CheckedInt from an unsupported type (like,
float) or multiply a CheckedInt by a float, and have it not caught! See
https://bugzilla.mozilla.org/show_bug.cgi?id=869194

  • Fixed a possibility of undefined behavior in unary operator-. See bug

https://bugzilla.mozilla.org/show_bug.cgi?id=849666

  • CheckedInt now supports the "long long" and "unsigned long long"

types. We don't like "long long" (and neither does the Google C++ style
guide!) but we had to do that because libogg exposes typedefs to those
types. See Bug https://bugzilla.mozilla.org/show_bug.cgi?id=869685

  • CheckedInt also now supports "signed char" in addition to "char" ---

they are not the same type! See Bug https://bugzilla.mozilla.org/show_bug.cgi?id=847521

  • Fixed and simplified usage of CheckedInt outside of Mozilla. You'll

like this one! See Bug https://bugzilla.mozilla.org/show_bug.cgi?id=849667

  • html/canvas/CheckedInt.h: Updated.
10:29 AM Changeset in webkit [151028] by Lucas Forschler
  • 2 edits in branches/safari-537.43-branch/Source/WebKit2

Merged r151026. <rdar://problem/14030364>

10:27 AM Changeset in webkit [151027] by Lucas Forschler
  • 2 edits in branches/safari-537.43-branch/Source/WebCore

Merged r150836. <rdar://problem/13925131>

10:04 AM Changeset in webkit [151026] by dino@apple.com
  • 2 edits in trunk/Source/WebKit2

Don't create an accelerated compositing layer unless we have to for snapshotting plug-ins
https://bugs.webkit.org/show_bug.cgi?id=117076
<rdar://problem/14030364>

Reviewed by Beth Dakin and Anders Carlsson.

If a plug-in can support software snapshotting, then don't create an
accelerated compositing layer for it while in snapshot mode. This is a
better user experience -- otherwise the page/plug-in looks like it broke.

  • WebProcess/Plugins/PluginView.cpp:

(WebKit::PluginView::isAcceleratedCompositingEnabled): If we are in snapshotting mode
and we are a Flash plugin (the only one that supports software snapshots at the moment)
then do not create an accelerated compositing layer.

10:02 AM Changeset in webkit [151025] by Brent Fulgham
  • 2 edits in trunk/Source/JavaScriptCore

[Windows] Unreviewed build fix for VS2005 builders.

missing export for WTF::SHA1::computeHexDigest

9:57 AM Changeset in webkit [151024] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

Unreviewed, rolling out r151022.
http://trac.webkit.org/changeset/151022
https://bugs.webkit.org/show_bug.cgi?id=117084

Also breaks build by introducing duplicate symbols (Requested
by bfulgham on #webkit).

  • TestWebKitAPI/Configurations/TestWebKitAPICommon.vsprops:
9:54 AM WebKitGTK/2.0.x edited by kalevlember@gmail.com
Link to changesets instead of bugzilla, for two issues where fixes … (diff)
9:45 AM Changeset in webkit [151023] by Brent Fulgham
  • 2 edits in trunk/Tools

[Windows] Unreviewed build fix to NRWT

  • Scripts/webkitpy/port/win.py:

(WinPort.create_debugger_command_file): Use proper argument for _filesystem.write_text_file.

9:31 AM Changeset in webkit [151022] by Brent Fulgham
  • 2 edits in trunk/Tools

[Windows] Unreviewed build fix after r151012

  • TestWebKitAPI/Configurations/TestWebKitAPICommon.vsprops: Add dependency on

WTF library to support SHA tests

9:17 AM Changeset in webkit [151021] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Make sure gstreamer source element is thread-safe
https://bugs.webkit.org/show_bug.cgi?id=115352

Patch by Andre Moreira Magalhaes <Andre Moreira Magalhaes> on 2013-05-31
Reviewed by Philippe Normand.

GStreamer source element may be created by any gstreamer element on any thread by calling
gst_element_make_from_uri with the URIs handled by the source element.
This patch makes sure the gstreamer source element is thread-safe to avoid issues with it
being created outside the main thread.

  • platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:

(_WebKitWebSrcPrivate):
(webkit_web_src_init):
(webKitWebSrcFinalize):
(webKitWebSrcSetProperty):
(webKitWebSrcGetProperty):
(webKitWebSrcStop):
(webKitWebSrcStart):
(webKitWebSrcChangeState):
(webKitWebSrcQueryWithParent):
(webKitWebSrcGetUri):
(webKitWebSrcSetUri):
(webKitWebSrcNeedDataMainCb):
(webKitWebSrcEnoughDataMainCb):
(webKitWebSrcSeekMainCb):
(webKitWebSrcSeekDataCb):
(webKitWebSrcSetMediaPlayer):
(StreamingClient::StreamingClient):
(StreamingClient::~StreamingClient):
(StreamingClient::didReceiveResponse):
(StreamingClient::didReceiveData):
(StreamingClient::didFinishLoading):
(StreamingClient::wasBlocked):
(StreamingClient::cannotShowURL):

9:16 AM Changeset in webkit [151020] by rafael.lobo@openbossa.org
  • 2 edits in trunk/Source/WTF

Fix double hash lookup in PageMapMemoryUsageRecorder::visit
https://bugs.webkit.org/show_bug.cgi?id=117071

Reviewed by Andreas Kling.

  • wtf/FastMalloc.cpp:

(WTF::TCMalloc_ThreadCache::CreateCacheIfNecessary):

9:14 AM Changeset in webkit [151019] by Brent Fulgham
  • 2 edits in trunk/Tools

[Windows] Unreviewed build fix after r151012

  • TestWebKitAPI/Tests/WTF/MD5.cpp: Include <wtf/StringExtras.h> to provide

snprintf definition for Windows.

9:01 AM Changeset in webkit [151018] by Brent Fulgham
  • 2 edits in trunk/Source/WTF

[Windows] Speculative build fix for pre-VS2010 compilers

  • wtf/Platform.h: Only treat WTF as DLL for VS2010 builds
8:53 AM Changeset in webkit [151017] by jer.noble@apple.com
  • 2 edits in trunk/LayoutTests

Unreviewed gardening. Update test-expectations after r151000.

  • fast/js/date-DST-time-cusps-expected.txt:
8:52 AM Changeset in webkit [151016] by sergio@webkit.org
  • 2 edits in trunk/Source/WebCore

Build fix when CSSParser debugging is enabled
https://bugs.webkit.org/show_bug.cgi?id=117075

Reviewed by Andreas Kling.

Build fails when enabling parser debugging by setting YYDEBUG to
1 because of a missing include.

  • css/CSSGrammar.y.includes:
8:21 AM Changeset in webkit [151015] by eustas@chromium.org
  • 2 edits in trunk/LayoutTests

[Qt][WK2] Newly added editing/selection/caret-after-keypress.html crashing
https://bugs.webkit.org/show_bug.cgi?id=117070

Unreviewed test expectations update.

WebKitTestRunner needs a more-complete implementation of eventSender.
Until then caret-after-keypress test is disabled

See https://bugs.webkit.org/show_bug.cgi?id=42194

  • platform/qt-5.0-wk2/TestExpectations:
6:29 AM Changeset in webkit [151014] by zarvai@inf.u-szeged.hu
  • 3 edits
    1 add in trunk/LayoutTests

[Qt] Unreviewed gardening.

  • platform/qt-5.0-wk1/TestExpectations: Skip flaky test.
  • platform/qt-5.0-wk2/TestExpectations: Skip crashing test.
  • platform/qt/fast/js/date-DST-time-cusps-expected.txt: Rebaselining after r151000.
3:25 AM Changeset in webkit [151013] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[Soup] [Gstreamer] ASSERT in StreamingClient::getOrCreateReadBuffer
https://bugs.webkit.org/show_bug.cgi?id=116686

Patch by Alberto Garcia <agarcia@igalia.com> on 2013-05-31
Reviewed by Carlos Garcia Campos.

We were using g_input_stream_read_async() to handle redirections
because of Gnome bug #691489.

This produces an unexpected read attempt which triggers an assert
in StreamingClient::getOrCreateReadBuffer().

Now that the Gnome bug is fixed we can replace read_async() with
skip_async().

  • platform/network/soup/ResourceHandleSoup.cpp:

(WebCore::ResourceHandle::ensureReadBuffer):
(WebCore::redirectSkipCallback):
(WebCore::sendRequestCallback):

3:06 AM Changeset in webkit [151012] by commit-queue@webkit.org
  • 11 edits
    2 adds in trunk

Move MD5, SHA1 unit tests from WTF to TestWebKitAPI
https://bugs.webkit.org/show_bug.cgi?id=116445

Patch by Zan Dobersek <zdobersek@igalia.com> on 2013-05-31
Reviewed by Benjamin Poulain.

Source/WTF:

Remove the MD5 and SHA1 test cases from the WTF code. The same cases are now built and run under TestWebKitAPI.

  • wtf/MD5.cpp:

(WTF::MD5::MD5):

  • wtf/SHA1.cpp:

(WTF::SHA1::SHA1):

Tools:

Add the MD5 and SHA1 unit tests that were previously located inside WTF.

  • TestWebKitAPI/CMakeLists.txt:
  • TestWebKitAPI/GNUmakefile.am:
  • TestWebKitAPI/TestWebKitAPI.vcxproj/TestWebKitAPI.vcxproj:
  • TestWebKitAPI/TestWebKitAPI.vcxproj/TestWebKitAPI.vcxproj.filters:
  • TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
  • TestWebKitAPI/Tests/WTF/MD5.cpp: Added.

(TestWebKitAPI):
(TestWebKitAPI::expectMD5):
(TestWebKitAPI::TEST):

  • TestWebKitAPI/Tests/WTF/SHA1.cpp: Added.

(TestWebKitAPI):
(TestWebKitAPI::expectSHA1):
(TestWebKitAPI::TEST):

  • TestWebKitAPI/Tests/WTF/WTF.pro:
  • TestWebKitAPI/win/TestWebKitAPI.vcproj:
1:58 AM Changeset in webkit [151011] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

[EFL] Update EFL TextExpectation for WebAudio cases.
https://bugs.webkit.org/show_bug.cgi?id=117061.

Unreviewed EFL Gardening.

WebAudio test cases delaynode-max-nondefault-delay.html, delaynode-scheduling.html
and javascriptaudionode.html pass with latest updates in efl port. Updating
TestExpectation accordingly.

Patch by Praveen R Jadhav <praveen.j@samsung.com> on 2013-05-31

  • platform/efl/TestExpectations:
12:15 AM Changeset in webkit [151010] by noel.gordon@gmail.com
  • 2 edits in trunk/LayoutTests

[Mac] Should pass http/tests/images/png-partial-load-no-alpha.html
https://bugs.webkit.org/show_bug.cgi?id=97170

Unreviewed test expectations update.

  • platform/mac/TestExpectations: Passing after r150340: remove the

Mac-specfic [ImageOnlyFailure] for this test.

Note: See TracTimeline for information about the timeline view.