virtual directories should just rename the beginning of the test path
https://bugs.webkit.org/show_bug.cgi?id=97925

Reviewed by Ojan Vafai.

Tools:

We were replacing all occurrences of the base prefix of a
virtual test suite with the virtual name, instead of just the
first. So, where we had softwarecompositing running the
compositing tests, any compositing test that actually had
"compositing" in the test base name would get that expanded
incorrectly.

* Scripts/webkitpy/layout_tests/port/base.py:
(Port.populated_virtual_test_suites):
(Port.lookup_virtual_test_base):
* Scripts/webkitpy/layout_tests/port/base_unittest.py:
(PortTest.test_tests):
* Scripts/webkitpy/layout_tests/port/test.py:

LayoutTests:

Delete references to tests that don't exist :).

* platform/chromium/TestExpectations:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129932 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[V8] Make v8NPObjectMap per Context
https://bugs.webkit.org/show_bug.cgi?id=97703

Reviewed by Adam Barth.

V8NPObject is a V8Object wrapper for use by the npruntime.

staticV8NPObjectMap is used for keeping record of V8NPObjects as they are created and destroyed
to ensure that an existing V8NPObject wrapper is returned for a V8Object in npCreateV8ScriptObject.

Once a context is gone, the NPObjects for the context are no longer valid and that record keeping
no longer makes sense so we clear the map.

However, because the map was static, it existed for all pages across contexts. Clearing the
map if one context is gone should not impact the V8NPObject map of other contexts.

Thus, this patch makes the V8NPObject map per context.

* bindings/v8/NPV8Object.cpp:
(WebCore::freeV8NPObject):
(WebCore::npCreateV8ScriptObject):
* bindings/v8/V8PerContextData.h:
(WebCore):
(WebCore::V8PerContextData::v8NPObjectMap):
(V8PerContextData):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129933 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Source/WebCore: Add canvas to set of elements that do not allow style sharing in order to provoke RenderLayer creation
https://bugs.webkit.org/show_bug.cgi?id=97013

Patch by Brian Salomon <bsalomon@google.com> on 2012-09-28
Reviewed by James Robinson.

This allows RenderLayers to be created for canvas elements when they are accelerated. Otherwise, we can exit out of RenderObject::setStyle before the layer is created.

Test: fast/canvas/canvas-render-layer.html

* css/StyleResolver.cpp:
(WebCore::StyleResolver::collectMatchingRulesForList):
* rendering/RenderObject.cpp:
(WebCore::RenderObject::adjustStyleDifference):
(WebCore::RenderObject::setStyle):

LayoutTests: Add a test that checks whether accelerated canvases that change compositing status are given render layers.
https://bugs.webkit.org/show_bug.cgi?id=97013

Patch by Brian Salomon <bsalomon@google.com> on 2012-09-28
Reviewed by James Robinson.

The test creates four canvases. One is never rendered to, the second is rendered to immediately, and the third and fourth are rendered to using nested setTimeouts.

* fast/canvas/canvas-render-layer.html: Added.
* platform/chromium/TestExpectations:
* platform/mac/TestExpectations:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129934 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed Chromium Win build fix.

* src/WebViewImpl.cpp: Added "f" on initializers for floats.
(WebKit):
* tests/WebFrameTest.cpp: Added "f" on initializers for floats.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129935 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Chromium] Incorrect resampling of clipped/masked images.
https://bugs.webkit.org/show_bug.cgi?id=97409

Unreviewed expectations update.

Another pass may be required to get the remaining platforms.

* platform/chromium-linux/svg/custom/clip-mask-negative-scale-expected.png: Updated and added property svn:mime-type.
* platform/chromium/TestExpectations:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129936 268f45cc-cd09-0410-ab3c-d52691b4dbfc
WebKitLoaderClient: add missing initializer.
https://bugs.webkit.org/show_bug.cgi?id=97930

Patch by Alberto Garcia <agarcia@igalia.com> on 2012-09-28
Reviewed by Martin Robinson.

WKPageLoaderClient is missing the initializer for the didLayout
field. Fixes -Wmissing-field-initializers.

* UIProcess/API/gtk/WebKitLoaderClient.cpp:
(attachLoaderClientToView):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129937 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Source/WebCore: [HarfBuzz] harfbuzz expects log_clusters to have same length as other buffers.
https://bugs.webkit.org/show_bug.cgi?id=97725

Reviewed by Tony Chang.

log_clusters should have same length as other buffers, which is number of glyphs.

Test: fast/text/international/harfbuzz-buffer-overrun.html

* platform/graphics/harfbuzz/ComplexTextControllerHarfBuzz.cpp:
(WebCore::ComplexTextController::ComplexTextController):
(WebCore::ComplexTextController::~ComplexTextController):
(WebCore::ComplexTextController::deleteGlyphArrays):
(WebCore::ComplexTextController::createGlyphArrays):

LayoutTests: [HarfBuzz] harfbuzz expects log_clusters to have same length as other buffers
https://bugs.webkit.org/show_bug.cgi?id=97725

Reviewed by Tony Chang.

Add a test case. A buffer overrun doesn't always cause immediate crash unless it runs with some
memory verification techs like WTF_FASTMALLOC_VALIDATION.

* fast/text/international/harfbuzz-buffer-overrun-expected.txt: Added.
* fast/text/international/harfbuzz-buffer-overrun.html: Added.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129938 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unskip fast/text/descent-clip-in-scaled-page.html
https://bugs.webkit.org/show_bug.cgi?id=91552

The test now passes on Mac.

* platform/mac/TestExpectations:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129939 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed, rolling out r129911.
http://trac.webkit.org/changeset/129911
https://bugs.webkit.org/show_bug.cgi?id=97933

Inspector test crashes on win debug (Requested by jsbell on
#webkit).

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

* Modules/indexeddb/IDBTransactionBackendImpl.cpp:
(WebCore::IDBTransactionBackendImpl::abort):
(WebCore::IDBTransactionBackendImpl::taskTimerFired):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129940 268f45cc-cd09-0410-ab3c-d52691b4dbfc
webkit-patch rebaseline-expectations is broken
https://bugs.webkit.org/show_bug.cgi?id=97619

Reviewed by Ojan Vafai.

The new expectations format is causing two problems for
webkit-patch rebaseline expectations

1) the transformation into and out of the old syntax (which is
still used internally) is somewhat lossy, e.g., we're not
preserving the case of Bug(x) identifiers. Also, we can't
tell if the input was [ WontFix ] or [ Skip WontFix Pass ]
2) the new syntax is more lenient, allowing for multiple ways to
specify the same result, e.g., "[ Skip ]" may or may not be
missing.

As a result, we end up rewriting a whole bunch of lines for
purely syntactic differences.

Both of these things are bugs that need to be fixed, but
we should also not just rewrite lines that shouldn't be
modified.

This patch fixes the last issue (no rewriting).

* Scripts/webkitpy/layout_tests/models/test_expectations.py:
(TestExpectationLine._format_line):
(TestExpectations.remove_rebaselined_tests):
* Scripts/webkitpy/layout_tests/models/test_expectations_unittest.py:
(RebaseliningTest.test_remove):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129941 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Pass the correct path length to _NSGetExecutablePath
https://bugs.webkit.org/show_bug.cgi?id=97935

Reviewed by Sam Weinig.

* WebProcessServiceForWebKitDevelopment/WebProcessServiceForWebKitDevelopmentMain.mm:
(WebProcessServiceForWebKitDevelopmentEventHandler):
Initialize pathLength before passing it to _NSGetExecutablePath.

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