[EFL][EWebLauncher] Add encoding detector option.
https://bugs.webkit.org/show_bug.cgi?id=98726

Patch by Kangil Han <kangil.han@samsung.com> on 2012-10-15
Reviewed by Gyuyoung Kim.

Added an option to test WebCore's encoding detector functionality on EWebLauncher.
With this patch, EWebLauncher would display text correctly even if web page wouldn't specify charset information.

* EWebLauncher/main.c:
(_User_Arguments):
(windowCreate):
(parseUserArguments):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@131312 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Make CSS variable names case-insensitive.
https://bugs.webkit.org/show_bug.cgi?id=98712

Reviewed by Tony Chang.

Source/WebCore:

This patch modifies the parser to normalize all variable names to lower case,
making variable definitions consistent with other property names, which are also case insensitive.
Spec: http://dev.w3.org/csswg/css-variables/#defining-variables

Test: fast/css/variables/case-insensitive.html

* css/CSSParser.cpp:
(WebCore::CSSParser::createPrimitiveNumericValue):
(WebCore):
(WebCore::CSSParser::createPrimitiveVariableNameValue):
(WebCore::CSSParser::parseValidPrimitive):
(WebCore::CSSParser::parseValue):
(WebCore::CSSParser::storeVariableDeclaration):
(WebCore::CSSParserString::lowerSubstring):
Added function to compute a lower case substring as an AtomicString from a CSSParserString.
* css/CSSParser.h:
(CSSParser):
* css/CSSParserValues.h:
(CSSParserString):
(WebCore::CSSParserString::lowerSubstring):

LayoutTests:

Add test that variable names are match correctly when different case is used.

* fast/css/variables/case-insensitive-expected.html: Added.
* fast/css/variables/case-insensitive.html: Added.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@131313 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[BlackBerry] Clean up BackingStoreClient (part II)
https://bugs.webkit.org/show_bug.cgi?id=99327

Reviewed by Yong Li.
Patch by Antonio Gomes <agomes@rim.com>

Remove more unneeded BackingStoreClient <-> WebPageClient integration
methods:
- BackingStoreClient* backingStoreClientForFrame(...)
- void addBackingStoreClientForFrame(...)
- void removeBackingStoreClientForFrame(...)

Change places calling WPPriv::backingStoreClientForFrame to directly
access WPPriv::backingStoreClient instead, since only the main frame will
have a BackingStoreClient instance associated with it, and it is owned by
the WKPriv.

Remove non-mainframe only references to BackingStoreClient completely,
since it is dead code now.

* Api/InRegionScroller.cpp:
(BlackBerry::WebKit::InRegionScrollerPrivate::setLayerScrollPosition):
* Api/WebPage.cpp:
(BlackBerry::WebKit::WebPagePrivate::backingStoreClient):
(BlackBerry::WebKit::WebPage::destroy):
* Api/WebPage_p.h:
(WebPagePrivate):
* WebCoreSupport/ChromeClientBlackBerry.cpp:
(WebCore::ChromeClientBlackBerry::invalidateContentsForSlowScroll):
(WebCore::ChromeClientBlackBerry::scroll):
* WebCoreSupport/FrameLoaderClientBlackBerry.cpp:
(WebCore::FrameLoaderClientBlackBerry::transitionToCommittedForNewPage):
(WebCore::FrameLoaderClientBlackBerry::createFrame):
(WebCore::FrameLoaderClientBlackBerry::detachedFromParent2):
* WebKitSupport/BackingStoreClient.cpp:
(BlackBerry::WebKit::BackingStoreClient::create):
(BlackBerry::WebKit::BackingStoreClient::BackingStoreClient):
(BlackBerry::WebKit::BackingStoreClient::~BackingStoreClient):
* WebKitSupport/BackingStoreClient.h:
(BackingStoreClient):
* WebKitSupport/InputHandler.cpp:
(BlackBerry::WebKit::InputHandler::setBatchEditingActive):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@131314 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Calling WebCore::SharedBuffer::append(data, 0) on a shared buffer when
its current position is at a segment boundary (4096) ends up adding an
unitialized segment (with uninitialized memory) to the SharedBuffer.
https://bugs.webkit.org/show_bug.cgi?id=99000

Reviewed by Adam Barth.

Source/WebCore:

* platform/SharedBuffer.cpp:
(WebCore::SharedBuffer::append):

LayoutTests:

* mhtml/shared_buffer_bug-expected.txt: Added.
* mhtml/shared_buffer_bug.mht: Added.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@131315 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[BlackBerry] Adapt to Platform API changes in string handling
https://bugs.webkit.org/show_bug.cgi?id=99248

Reviewed by Yong Li.

Convert usage of WebString, char* and std::string to BlackBerry::Platform::String.

Source/WebCore:

* html/track/TextTrack.cpp:
(WebCore::TextTrack::TextTrack): Fix the build for BlackBerry.
* page/blackberry/SettingsBlackBerry.cpp:
(WebCore):
(WebCore::Settings::initializeDefaultFontFamilies):
* platform/blackberry/LocalizedStringsBlackBerry.cpp:
* platform/blackberry/MIMETypeRegistryBlackBerry.cpp:
(WebCore::MIMETypeRegistry::getMIMETypeForExtension):
(WebCore::MIMETypeRegistry::getPreferredExtensionForMIMEType):
* platform/blackberry/PasteboardBlackBerry.cpp:
(WebCore::Pasteboard::writeSelection):
(WebCore::Pasteboard::writeURL):
(WebCore::Pasteboard::writePlainText):
(WebCore::Pasteboard::plainText):
(WebCore::Pasteboard::documentFragment):
* platform/blackberry/ReadOnlyLatin1String.h: Removed.
* platform/graphics/blackberry/MediaPlayerPrivateBlackBerry.cpp:
(WebCore::MediaPlayerPrivate::getSupportedTypes):
(WebCore::MediaPlayerPrivate::supportsType):
(WebCore::MediaPlayerPrivate::setCertificatePath):
(WebCore::MediaPlayerPrivate::load):
(WebCore::generateProtectionSpaceFromMMRAuthChallenge):
(WebCore::MediaPlayerPrivate::onAuthenticationNeeded):
(WebCore::MediaPlayerPrivate::onAuthenticationAccepted):
(WebCore::MediaPlayerPrivate::lookupMediaStream):
* platform/graphics/blackberry/MediaPlayerPrivateBlackBerry.h:
(MediaPlayerPrivate):
(WebCore::MediaPlayerPrivate::engineDescription):
* platform/network/blackberry/DNSBlackBerry.cpp:
(WebCore::prefetchDNS):
* platform/network/blackberry/NetworkJob.cpp:
(WebCore::NetworkJob::initialize):
(WebCore::NetworkJob::notifyStatusReceived):
(WebCore::NetworkJob::notifyHeadersReceived):
(WebCore::NetworkJob::handleNotifyClose):
(WebCore::NetworkJob::sendRequestWithCredentials):
* platform/network/blackberry/NetworkJob.h:
(NetworkJob):
* platform/network/blackberry/NetworkManager.cpp:
(WebCore::NetworkManager::startJob):
* platform/network/blackberry/ResourceRequestBlackBerry.cpp:
(WebCore::ResourceRequest::initializePlatformRequest):
* platform/network/blackberry/SocketStreamHandleBlackBerry.cpp:
(WebCore::SocketStreamHandle::SocketStreamHandle):
* platform/text/blackberry/StringBlackBerry.cpp:
(WTF::String::String):
(WTF::String::operator BlackBerry::Platform::String):
* platform/text/blackberry/TextBreakIteratorInternalICUBlackBerry.cpp:

Source/WebKit:

* PlatformBlackBerry.cmake:

Source/WebKit/blackberry:

* Api/BlackBerryGlobal.cpp:
(BlackBerry::WebKit::clearAppCache):
(BlackBerry::WebKit::clearDatabase):
* Api/BlackBerryGlobal.h:
(Platform):
(WebKit):
* Api/JavaScriptVariant.cpp:
(BlackBerry::WebKit::JSValueRefToBlackBerryJavaScriptVariant):
(BlackBerry::WebKit::BlackBerryJavaScriptVariantToJSValueRef):
(BlackBerry::WebKit::JavaScriptVariant::JavaScriptVariant):
(WebKit):
(BlackBerry::WebKit::JavaScriptVariant::~JavaScriptVariant):
(BlackBerry::WebKit::JavaScriptVariant::setType):
(BlackBerry::WebKit::JavaScriptVariant::setString):
(BlackBerry::WebKit::JavaScriptVariant::stringValue):
* Api/JavaScriptVariant.h:
* Api/WebAnimation.cpp:
(BlackBerry::WebKit::WebAnimation::fadeAnimation):
(BlackBerry::WebKit::WebAnimation::name):
* Api/WebAnimation.h:
* Api/WebCookieJar.cpp:
(BlackBerry::WebKit::WebCookieJar::cookies):
(BlackBerry::WebKit::WebCookieJar::setCookies):
* Api/WebCookieJar.h:
(Platform):
(BlackBerry):
(WebKit):
* Api/WebKitMIMETypeConverter.cpp:
(BlackBerry::WebKit::getExtensionForMimeType):
(BlackBerry::WebKit::getMimeTypeForExtension):
* Api/WebKitMIMETypeConverter.h:
(Platform):
(BlackBerry):
(WebKit):
* Api/WebKitTextCodec.cpp:
(BlackBerry::WebKit::base64Decode):
(BlackBerry::WebKit::base64Encode):
(BlackBerry::WebKit::unescapeURL):
(BlackBerry::WebKit::escapeURL):
* Api/WebKitTextCodec.h:
(Platform):
(BlackBerry):
* Api/WebOverlay.cpp:
(BlackBerry::WebKit::WebOverlay::removeAnimation):
* Api/WebOverlay.h:
(Platform):
(BlackBerry):
(WebKit):
* Api/WebOverlayOverride.cpp:
(BlackBerry::WebKit::WebOverlayOverride::removeAnimation):
* Api/WebOverlayOverride.h:
(Platform):
(BlackBerry):
(WebKit):
* Api/WebPage.cpp:
(BlackBerry::WebKit::WebPage::autofillTextField):
(BlackBerry::WebKit::WebPage::renderTreeAsText):
(BlackBerry::WebKit::WebPage::WebPage):
(BlackBerry::WebKit::WebPagePrivate::init):
(BlackBerry::WebKit::WebPagePrivate::load):
(BlackBerry::WebKit::WebPage::load):
(BlackBerry::WebKit::WebPage::loadFile):
(BlackBerry::WebKit::WebPage::download):
(BlackBerry::WebKit::WebPagePrivate::loadString):
(BlackBerry::WebKit::WebPage::loadString):
(BlackBerry::WebKit::WebPagePrivate::executeJavaScript):
(BlackBerry::WebKit::WebPage::executeJavaScript):
(BlackBerry::WebKit::WebPagePrivate::executeJavaScriptInIsolatedWorld):
(BlackBerry::WebKit::WebPage::executeJavaScriptInIsolatedWorld):
(BlackBerry::WebKit::WebPage::executeJavaScriptFunction):
(BlackBerry::WebKit::WebPagePrivate::addOriginAccessWhitelistEntry):
(BlackBerry::WebKit::WebPage::addOriginAccessWhitelistEntry):
(BlackBerry::WebKit::WebPagePrivate::removeOriginAccessWhitelistEntry):
(BlackBerry::WebKit::WebPage::removeOriginAccessWhitelistEntry):
(BlackBerry::WebKit::WebPagePrivate::authenticationChallenge):
(BlackBerry::WebKit::WebPagePrivate::syncProxyCredential):
(BlackBerry::WebKit::WebPagePrivate::notifyPopupAutofillDialog):
(BlackBerry::WebKit::WebPagePrivate::webContext):
(BlackBerry::WebKit::WebPage::setDateTimeInput):
(BlackBerry::WebKit::WebPage::setColorInput):
(BlackBerry::WebKit::WebPage::textEncoding):
(BlackBerry::WebKit::WebPage::forcedTextEncoding):
(BlackBerry::WebKit::WebPage::setForcedTextEncoding):
(BlackBerry::WebKit::WebPage::title):
(BlackBerry::WebKit::WebPage::selectedText):
(BlackBerry::WebKit::WebPage::cutSelectedText):
(BlackBerry::WebKit::WebPage::insertText):
(BlackBerry::WebKit::WebPage::getBackForwardList):
(BlackBerry::WebKit::WebPage::onCertificateStoreLocationSet):
(BlackBerry::WebKit::WebPage::dispatchInspectorMessage):
(BlackBerry::WebKit::WebPagePrivate::didChangeSettings):
(BlackBerry::WebKit::WebPage::textHasAttribute):
(BlackBerry::WebKit::WebPage::setAllowNotification):
(BlackBerry::WebKit::WebPagePrivate::defaultUserAgent):
* Api/WebPage.h:
* Api/WebPageClient.h:
* Api/WebPage_p.h:
(WebPagePrivate):
* Api/WebSettings.cpp:
(BlackBerry::WebKit::WebSettings::standardSettings):
(BlackBerry::WebKit::WebSettings::addSupportedObjectPluginMIMEType):
(BlackBerry::WebKit::WebSettings::isSupportedObjectMIMEType):
(BlackBerry::WebKit::WebSettings::serifFontFamily):
(BlackBerry::WebKit::WebSettings::setSerifFontFamily):
(BlackBerry::WebKit::WebSettings::fixedFontFamily):
(BlackBerry::WebKit::WebSettings::setFixedFontFamily):
(BlackBerry::WebKit::WebSettings::sansSerifFontFamily):
(BlackBerry::WebKit::WebSettings::setSansSerifFontFamily):
(BlackBerry::WebKit::WebSettings::standardFontFamily):
(BlackBerry::WebKit::WebSettings::setStandardFontFamily):
(BlackBerry::WebKit::WebSettings::userAgentString):
(BlackBerry::WebKit::WebSettings::setUserAgentString):
(BlackBerry::WebKit::WebSettings::defaultTextEncodingName):
(BlackBerry::WebKit::WebSettings::setDefaultTextEncodingName):
(BlackBerry::WebKit::WebSettings::userStyleSheetString):
(BlackBerry::WebKit::WebSettings::setUserStyleSheetString):
(BlackBerry::WebKit::WebSettings::userStyleSheetLocation):
(BlackBerry::WebKit::WebSettings::setUserStyleSheetLocation):
(BlackBerry::WebKit::WebSettings::localStoragePath):
(BlackBerry::WebKit::WebSettings::setLocalStoragePath):
(BlackBerry::WebKit::WebSettings::indexedDataBasePath):
(BlackBerry::WebKit::WebSettings::setIndexedDataBasePath):
(BlackBerry::WebKit::WebSettings::databasePath):
(BlackBerry::WebKit::WebSettings::setDatabasePath):
(BlackBerry::WebKit::WebSettings::appCachePath):
(BlackBerry::WebKit::WebSettings::setAppCachePath):
(BlackBerry::WebKit::WebSettings::pageGroupName):
(BlackBerry::WebKit::WebSettings::setPageGroupName):
* Api/WebSettings.h:
* Api/WebString.cpp: Removed.
* Api/WebString.h: Removed.
* WebCoreSupport/ChromeClientBlackBerry.cpp:
(WebCore::ChromeClientBlackBerry::runJavaScriptPrompt):
(WebCore::ChromeClientBlackBerry::createWindow):
(WebCore::ChromeClientBlackBerry::runOpenPanel):
(WebCore):
* WebCoreSupport/ChromeClientBlackBerry.h:
(ChromeClientBlackBerry):
* WebCoreSupport/ClientExtension.cpp:
(clientExtensionMethod):
* WebCoreSupport/ColorPickerClient.cpp:
(WebCore::ColorPickerClient::ColorPickerClient):
(WebCore::ColorPickerClient::generateHTML):
* WebCoreSupport/ColorPickerClient.h:
(Platform):
(BlackBerry):
(WebKit):
(ColorPickerClient):
* WebCoreSupport/CredentialManager.cpp:
(WebCore::CredentialManager::autofillAuthenticationChallenge):
* WebCoreSupport/CredentialManager.h:
(Platform):
(CredentialManager):
* WebCoreSupport/DatePickerClient.cpp:
(WebCore::DatePickerClient::DatePickerClient):
(WebCore::DatePickerClient::generateHTML):
* WebCoreSupport/DatePickerClient.h:
(Platform):
(BlackBerry):
(WebKit):
(DatePickerClient):
* WebCoreSupport/FrameLoaderClientBlackBerry.cpp:
(WebCore::FrameLoaderClientBlackBerry::dispatchDecidePolicyForResponse):
(WebCore::FrameLoaderClientBlackBerry::createDocumentLoader):
(WebCore::FrameLoaderClientBlackBerry::dispatchDidFinishLoad):
(WebCore::FrameLoaderClientBlackBerry::dispatchDidFailProvisionalLoad):
(WebCore::FrameLoaderClientBlackBerry::dispatchCreatePage):
(WebCore::FrameLoaderClientBlackBerry::dispatchWillSendRequest):
(WebCore::FrameLoaderClientBlackBerry::loadIconExternally):
(WebCore::FrameLoaderClientBlackBerry::startDownload):
(WebCore::FrameLoaderClientBlackBerry::dispatchDidReceiveIcon):
* WebCoreSupport/IconDatabaseClientBlackBerry.cpp:
* WebCoreSupport/NotificationPresenterImpl.cpp:
(WebCore::NotificationPresenterImpl::show):
(WebCore::NotificationPresenterImpl::cancel):
(WebCore::NotificationPresenterImpl::requestPermission):
(WebCore::NotificationPresenterImpl::onPermission):
(WebCore::NotificationPresenterImpl::notificationClicked):
* WebCoreSupport/NotificationPresenterImpl.h:
(Platform):
(NotificationPresenterImpl):
* WebCoreSupport/SelectPopupClient.cpp:
(WebCore::SelectPopupClient::SelectPopupClient):
(WebCore::SelectPopupClient::update):
(WebCore::SelectPopupClient::generateHTML):
* WebCoreSupport/SelectPopupClient.h:
(Platform):
(BlackBerry):
(SelectPopupClient):
* WebCoreSupport/UserMediaClientImpl.cpp:
(WebCore::toMediaStreamSource):
(WebCore::toMediaStreamDescriptor):
(WebCore::UserMediaClientImpl::requestUserMedia):
(WebCore::UserMediaClientImpl::cancelUserMediaRequest):
* WebKitSupport/AboutData.cpp:
(BlackBerry::WebKit::cachePage):
* WebKitSupport/InputHandler.cpp:
(BlackBerry::WebKit::convertStringToWchar):
(BlackBerry::WebKit::convertStringToWcharVector):
(BlackBerry::WebKit::convertSpannableStringToString):
(BlackBerry::WebKit::InputHandler::learnText):
(BlackBerry::WebKit::InputHandler::spellCheckingRequestProcessed):
(BlackBerry::WebKit::InputHandler::openDatePopup):
(BlackBerry::WebKit::InputHandler::openSelectPopup):
(BlackBerry::WebKit::InputHandler::setText):
* WebKitSupport/SelectionHandler.cpp:
(BlackBerry::WebKit::SelectionHandler::selectedText):
* WebKitSupport/SelectionHandler.h:
(Platform):
(WebKit):
(SelectionHandler):
* WebKitSupport/SurfacePool.cpp:
(BlackBerry::WebKit::SurfacePool::sharedPixmapGroup):
* WebKitSupport/SurfacePool.h:
(SurfacePool):

Source/WTF:

* wtf/Assertions.cpp: Use proper log function.
* wtf/text/AtomicString.h: Add BlackBerry support
(AtomicString):
(WTF::AtomicString::AtomicString): Add BlackBerry Support
(WTF::AtomicString::operator BlackBerry::Platform::String):
* wtf/text/StringImpl.h: Conversion support.
* wtf/text/WTFString.h: Conversion support.
(Platform):
(String):

Tools:

* DumpRenderTree/blackberry/DumpRenderTree.cpp:
(BlackBerry::WebKit::DumpRenderTree::runTest):
* DumpRenderTree/blackberry/WorkQueueItemBlackBerry.cpp:
(LoadHTMLStringItem::invoke):
(ScriptItem::invoke):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@131316 268f45cc-cd09-0410-ab3c-d52691b4dbfc
CSP source expressions should support paths at file-level granularity.
https://bugs.webkit.org/show_bug.cgi?id=99250

Reviewed by Adam Barth.

Source/WebCore:

After a bit of discussion on public-webappsec[1], path support for CSP
source expressions has been tuned to support file-level granularity. In
particular, this means that:

- 'example.com/js' matches a file named 'js'
- 'example.com/js/' matches all files under a directory named 'js'
  (note the trailing slash)
- 'example.com/js/file.js' matches only a file named 'file.js'
  inside a directory named 'js'

Though this is part of the CSP 1.1 spec, it continues to be exposed
outside the CSP_NEXT flag for back-compatibility.

Test cases have been added to the existing
http/tests/security/contentSecurityPolicy/source-list-parsing-paths-*
in order ensure that the new functionality works correctly.

* page/ContentSecurityPolicy.cpp:
(WebCore::CSPSource::pathMatches):
    If the path ends with '/', do a prefix check. If not, check for an
    exact match.
(WebCore::CSPSourceList::parsePath):
    Don't automatically append a '/' to paths.

LayoutTests:

* http/tests/security/contentSecurityPolicy/source-list-parsing-paths-01.html:
    Adjust tests by adding trailing slashes to source expressions that
    should match directories.
* http/tests/security/contentSecurityPolicy/source-list-parsing-paths-02-expected.txt:
* http/tests/security/contentSecurityPolicy/source-list-parsing-paths-02.html:
    Adjust tests to check the new behavior: matching individiual files,
    and matching directories only with a trailing '/'.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@131317 268f45cc-cd09-0410-ab3c-d52691b4dbfc
We should avoid weakCompareAndSwap when parallel GC is disabled
https://bugs.webkit.org/show_bug.cgi?id=99331

Reviewed by Filip Pizlo.

CopiedBlock::reportLiveBytes and didEvacuateBytes uses weakCompareAndSwap, which some platforms 
don't support. For platforms that don't have parallel GC enabled, we should just use a normal store.

* heap/CopiedBlock.h:
(JSC::CopiedBlock::reportLiveBytes):
(JSC::CopiedBlock::didEvacuateBytes):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@131318 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Layout Test inspector/debugger/dynamic-scripts.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=99338

Unreviewed gardening.

* platform/chromium/TestExpectations:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@131319 268f45cc-cd09-0410-ab3c-d52691b4dbfc
JIT::JIT fails to initialize all of its fields
https://bugs.webkit.org/show_bug.cgi?id=99283

Reviewed by Andreas Kling.

There were two groups of such fields, all of which are eventually initialized
prior to use inside of privateCompile(). But it's safer to make sure that they
are initialized in the constructor as well, since we may use the JIT to do a
stub compile without calling into privateCompile().
        
Unsigned index fields for dynamic repatching meta-data: this change
initializes them to UINT_MAX, so we should crash if we try to use those
indices without initializing them.
        
Boolean flags for value profiling: this change initializes them to false, so
we at worst turn off value profiling.

* jit/JIT.cpp:
(JSC::JIT::JIT):



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@131320 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Make CopiedSpace and MarkedSpace regions independent
https://bugs.webkit.org/show_bug.cgi?id=99222

Reviewed by Filip Pizlo.

Right now CopiedSpace and MarkedSpace have the same block size and share the same regions,
but there's no reason that they can't have different block sizes while still sharing the
same underlying regions. We should factor the two "used" lists of regions apart so that
MarkedBlocks and CopiedBlocks can be different sizes. Regions will still be a uniform size
so that when they become empty they may be shared between the CopiedSpace and the MarkedSpace,
since benchmarks indicate that sharing is a boon for performance.

* heap/BlockAllocator.cpp:
(JSC::BlockAllocator::BlockAllocator):
* heap/BlockAllocator.h:
(JSC):
(Region):
(JSC::Region::create): We now have a fixed size for Regions so that empty regions can continue to
be shared between the MarkedSpace and CopiedSpace. Once they are used for a specific type of block,
however, they can only be used for that type of block until they become empty again.
(JSC::Region::createCustomSize):
(JSC::Region::Region):
(JSC::Region::~Region):
(JSC::Region::reset):
(BlockAllocator):
(JSC::BlockAllocator::RegionSet::RegionSet):
(RegionSet):
(JSC::BlockAllocator::tryAllocateFromRegion): We change this function so that it correctly
moves blocks between empty, partial, and full lists.
(JSC::BlockAllocator::allocate):
(JSC::BlockAllocator::allocateCustomSize):
(JSC::BlockAllocator::deallocate): Ditto.
(JSC::CopiedBlock):
(JSC::MarkedBlock):
(JSC::BlockAllocator::regionSetFor): We use this so that we can use the same allocate/deallocate
functions with different RegionSets. We specialize the function for each type of block that we
want to allocate.
* heap/CopiedBlock.h:
(CopiedBlock):
* heap/CopiedSpace.h:
(CopiedSpace):
* heap/HeapBlock.h:
(HeapBlock):
* heap/MarkedBlock.cpp:
(JSC::MarkedBlock::MarkedBlock): For oversize MarkedBlocks, if the block size gets too big we can
underflow the endAtom, which will cause us to segfault when we try to sweep a block. If we're a
custom size MarkedBlock we need to calculate endAtom so it doesn't underflow.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@131321 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Remove RenderTextControl::isSelectableElement
https://bugs.webkit.org/show_bug.cgi?id=99334

Reviewed by Andreas Kling.

It seems this method is not used anymore.

* WebCore.order:
* rendering/RenderTextControl.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@131322 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[EFL] Share resources installed for inspector
https://bugs.webkit.org/show_bug.cgi?id=98991

Reviewed by Gyuyoung Kim.

.:

Now, WebKit1/Efl and WebKit2/Efl install same resources to different directory
when INSPECTOR is enabled.

This patch changes to install resources one time and share it.

* Source/PlatformEfl.cmake:
Extracted build scripts which install resources from WebKit/PlatformEfl.cmake.
* Source/cmake/OptionsEfl.cmake:

Source/WebKit:

* PlatformEfl.cmake:
Extracted build scripts which install resources to WebKit/PlatformEfl.cmake.

Source/WebKit2:

* PlatformEfl.cmake: Removed build script which install resources to share.
* UIProcess/efl/WebInspectorProxyEfl.cpp:
(WebKit::WebInspectorProxy::inspectorPageURL): Modified not to use makeString.
(WebKit::WebInspectorProxy::inspectorBaseURL): Changed resource path.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@131323 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[BlackBerry] Fix WebSockets which was disabled by recent string changes
https://bugs.webkit.org/show_bug.cgi?id=99248

Patch by Joe Mason <jmason@rim.com> on 2012-10-15
Reviewed by George Staikos.

PR 223681: The signature of FilterStream::notifyStatusReceived changed to take a
BlackBerry::Platform::String instead of a char *. But SocketStreamHandleBlackBerry was not
updated to the new signature, so the status message is not getting passed on because it is
not calling the correct override.

No new tests because this is fixing a regression.

* platform/network/blackberry/SocketStreamHandle.h:
(SocketStreamHandle):
* platform/network/blackberry/SocketStreamHandleBlackBerry.cpp:
(WebCore::SocketStreamHandle::notifyStatusReceived):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@131324 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Regression r131167] run-webkit-tests fails
https://bugs.webkit.org/show_bug.cgi?id=99279

Reviewed by Kentaro Hara.

CodeGeneratorV8.pm assumed that there are only two objects which have constructor getters and
overlooked TestObj. This fix relaxes that assumption to accept it.

No new tests. Fixing an existing test.

* bindings/scripts/CodeGeneratorV8.pm:
(GenerateConstructorGetter):
* bindings/scripts/test/V8/V8TestObj.cpp:
(WebCore::TestObjV8Internal::TestObjConstructorGetter):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@131325 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[BlackBerry] [DRT] Skip region of interest zooming when running DRT
https://bugs.webkit.org/show_bug.cgi?id=97663

Patch by Xiaobo Wang <xbwang@torchmobile.com.cn> on 2012-10-15
Reviewed by Rob Buis.

This patch fixes test fast/forms/textarea-scrolled-endline-caret.html, and
1. Add a global function isRunningDrt to check if we're currently running DRT.
2. Use the new function in places where getenv("drtRun") is used.

* Api/BlackBerryGlobal.cpp:
(BlackBerry::WebKit::isRunningDrt):
(WebKit):
* Api/BlackBerryGlobal.h:
(WebKit):
* Api/WebPage.cpp:
(BlackBerry::WebKit::WebPagePrivate::init):
* WebKitSupport/DumpRenderTreeSupport.cpp:
(toGeolocationClientMock):
* WebKitSupport/InputHandler.cpp:
(BlackBerry::WebKit::InputHandler::ensureFocusTextElementVisible):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@131326 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[chromium] Provide used JSHeap size in chromium's DRT for pageloadtest memory measurements
https://bugs.webkit.org/show_bug.cgi?id=99288

Reviewed by Ryosuke Niwa.

Provide used JSHeap size as we did it for the Apple port.

* DumpRenderTree/chromium/TestEventPrinter.cpp:
(TestEventPrinter::handleDumpMemoryHeader): Add new function to print the JSHeap memory result.
* DumpRenderTree/chromium/TestEventPrinter.h:
(TestEventPrinter): handleDumpMemoryHeader declaration.
* DumpRenderTree/chromium/TestShell.cpp:
(TestShell::dump): Dump JSHeap value.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@131327 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Parallel GC should not be disabled for all platforms

* wtf/Platform.h: D'oh!


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@131328 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[EFL] Set the basepath of the File System API.
https://bugs.webkit.org/show_bug.cgi?id=98344

Patch by Dongwoo Joshua Im <dw.im@samsung.com> on 2012-10-15
Reviewed by Gyuyoung Kim.

Set the basepath of the File System API using the internal setter function.

Source/WebKit:

* PlatformEfl.cmake: Add new include path.

Source/WebKit/efl:

* ewk/ewk_main.cpp:
(_ewk_init_body): Call the setter function with the default path.
* ewk/ewk_settings.cpp:
(ewk_settings_file_system_path_set): Set the given path as the base path of the file system.
* ewk/ewk_settings_private.h: Add ewk_settings_file_system_path_set.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@131329 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[TestResultServer] TestExpectations should only be loaded for the flakiness dashboard
https://bugs.webkit.org/show_bug.cgi?id=99245

Reviewed by Ojan Vafai.

Only load the TestExpectations when using the flakiness dashboard. Other dashboards
don't need them so there's no reason to load them.

* TestResultServer/static-dashboards/dashboard_base.js:
(isFlakinessDashboard):
(appendJSONScriptElements):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@131330 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[WebSocket] Update pywebsocket to 0.7.8
https://bugs.webkit.org/show_bug.cgi?id=99293

Reviewed by Yuta Kitamura.

Version 0.7.8 supports WebSocket frames and messages compression
with blocks in which BFINAL bit is set to 1.
We need this feature to add a test case of compression extension.

* Scripts/webkitpy/thirdparty/mod_pywebsocket/extensions.py:
(DeflateFrameExtensionProcessor.__init__):
(DeflateFrameExtensionProcessor.set_bfinal):
(DeflateFrameExtensionProcessor._outgoing_filter):
(DeflateMessageProcessor.__init__):
(DeflateMessageProcessor.set_bfinal):
(DeflateMessageProcessor._process_outgoing_message):
* Scripts/webkitpy/thirdparty/mod_pywebsocket/util.py:
(_Deflater.compress_and_finish):
(_RFC1979Deflater.filter):


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