Source/WebCore: Clicking on links while accessibility is enabled sometimes crashes
https://bugs.webkit.org/show_bug.cgi?id=135074

Reviewed by Chris Fleizach.

When an accessibility request comes in from the system, we call updateBackingStore() on the
relevant AccessibilityObject, which triggers a relayout of the entire document. This relayout
might delete that accessibility node and its parent, which would cause the node to be deleted.
After the stack unwinds, we then call a member function on the node without checking for this
condition.

Test: accessibility/parent-delete.html

* accessibility/AccessibilityObject.cpp:
(WebCore::AccessibilityObject::updateBackingStore): Retain the node for the duration of the
function.

LayoutTests: Clicking on links while accessibility is enabled does not render as expected
https://bugs.webkit.org/show_bug.cgi?id=135074

Reviewed by Chris Fleizach.

Delete a node and its parent, then call allAttributes() on the accessibility representation of
the deleted child and make sure there is no crash.

* accessibility/parent-delete-expected.txt: Added
* accessibility/parent-delete.html: Added

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@171347 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Mac] [WK2] selection-gap-fixed-child.html and selection-gap-flipped-fixed-child.html
have been failing since they were added in r148258
https://bugs.webkit.org/show_bug.cgi?id=114573

Landing actual results as expected for WK2. This test isn't meaningful for WK2, because of layers.

* platform/mac-wk2/TestExpectations:
* platform/mac-wk2/fast/repaint/selection-gap-fixed-child-expected.txt: Added.
* platform/mac-wk2/fast/repaint/selection-gap-flipped-fixed-child-expected.txt: Added.



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@171348 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Web Inspector: Fix unused parameter build warning
https://bugs.webkit.org/show_bug.cgi?id=135151

Patch by Shivakumar JM <shiva.jm@samsung.com> on 2014-07-22
Reviewed by Joseph Pecoraro.

Fix unused parameter build warning by removing the parameter name

* WebProcess/WebPage/WebInspector.cpp:
(WebKit::WebInspector::setJavaScriptProfilingEnabled):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@171349 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Extend exception fuzzing to the LLInt
https://bugs.webkit.org/show_bug.cgi?id=135076

Reviewed by Oliver Hunt.


Source/JavaScriptCore: 
* CMakeLists.txt:
* JavaScriptCore.vcxproj/JavaScriptCore.vcxproj:
* JavaScriptCore.xcodeproj/project.pbxproj:
* jit/JITOperations.cpp:
(JSC::numberOfExceptionFuzzChecks): Deleted.
* llint/LLIntSlowPaths.cpp:
(JSC::LLInt::setUpCall):
* runtime/CommonSlowPaths.cpp:
* runtime/ExceptionFuzz.cpp: Added.
(JSC::numberOfExceptionFuzzChecks):
(JSC::doExceptionFuzzing):
* runtime/ExceptionFuzz.h: Added.
(JSC::doExceptionFuzzingIfEnabled):

Tools: 
* Scripts/jsc-stress-test-helpers/js-exception-fuzz:



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@171350 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Correct handling of __VERSION_TEXT__ for 4+-tuple versions
https://bugs.webkit.org/show_bug.cgi?id=135161
<rdar://problem/17763546>

Reviewed by David Kilzer.


Tools: 
* Scripts/webkitperl/auto-version_unittest/autoVersionTests.pl:
Add additional test cases to catch errors in multiple-tuple
version string handling.

WebKitLibraries: 
Revise the auto-version.pl script to properly handle version
strings with 4 (or more) version tuples. Previously these were
being truncated from the version.

* win/tools/scripts/auto-version.pl:
(splitVersion): Return truncated version of
overall version string.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@171351 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[iOS][WK2] UI helpers that zoom on an element ignore the viewport's allowsUserScaling
https://bugs.webkit.org/show_bug.cgi?id=135140
<rdar://problem/17754921>

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-07-22
Reviewed by Tim Horton.

UIScrollView makes a difference between min/max zoom and allowUserScaling. To express that,
everything is set up on the LayerTransaction.

For zooming related helpers (find on page, double tap to zoom, etc), the min and max zoom
should be the actual min/max for the current page state.

This patch split the two explicitely.
For layer transactions, the values are taken from the viewport configuration directly.
For everything else, we should use minimumPageScaleFactor/maximumPageScaleFactor. Those two methods
have been updated to take into account allowsUserScaling.

* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::willCommitLayerTree):
* WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::WebPage::minimumPageScaleFactor):
(WebKit::WebPage::maximumPageScaleFactor):
(WebKit::WebPage::getAssistedNodeInformation):


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