1. 04 Sep, 2012 40 commits
    • wangxianzhu@chromium.org's avatar
      Unreviewed. Update test expectations for Android. · 2a4c824f
      wangxianzhu@chromium.org authored
      * platform/chromium-android/TestExpectations:
      * platform/chromium-android/compositing/layer-creation/overflow-scrolling-touch-expected.txt:
      * platform/chromium/TestExpectations:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127510 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      2a4c824f
    • robert@webkit.org's avatar
      Regression(r127163): Heap-use-after-free in WebCore::RenderBoxModelObject::hasSelfPaintingLayer · 30264438
      robert@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=95632
      
      Reviewed by Abhishek Arya.
      
      Source/WebCore:
      
      Don't add floats to the floating object set of blocks that avoid floats. There's no point in doing that
      and they will never get cleared out during relayout.
      
      Tests: fast/css/intruding-floats-crash.html
      
      * rendering/RenderBlock.cpp:
      (WebCore::RenderBlock::clearFloatsIfNeeded):
      
      LayoutTests:
      
      * fast/css/intruding-floats-crash-expected.txt: Added.
      * fast/css/intruding-floats-crash.html: Added.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127509 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      30264438
    • msaboff@apple.com's avatar
      equal() in CSSParser.cpp should check the length of characters · 5f2e9dec
      msaboff@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=95706
      
      Source/WebCore: 
      
      Reviewed by Abhishek Arya.
      
      Pass the length of string literals to CSSParser static functions equal() and 
      equalIgnoringCase() so that checks won't access out of bounds memory.
      
      Added test fast/css/crash-comparing-equal.html.
      
      * css/CSSParser.cpp:
      (WebCore::equal): Use template to retrieve the length of string literal.
      (WebCore::equalIgnoringCase): Ditto.
      (WebCore::CSSParser::parseDashboardRegions): Use const char[] instead of const char*
      
      LayoutTests: 
      
      Added test from duplicate defect https://bugs.webkit.org/show_bug.cgi?id=95634.
      
      Reviewed by Abhishek Arya.
      
      * fast/css/crash-comparing-equal-expected.txt: Added.
      * fast/css/crash-comparing-equal.html: Added.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127508 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      5f2e9dec
    • satish@chromium.org's avatar
      Run git commands within the checkout directory · 3a62cc61
      satish@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=95742
      
      Reviewed by Eric Seidel.
      
      git commands run from scm/git.py are sometimes run with cwd set to the
      checkout_root and other times with whatever directory was the default cwd.
      Instead all these should run with the checkout root set as the cwd
      (except where we explicitly need a different path)
      
      * Scripts/webkitpy/common/checkout/scm/git.py:
      (Git._run_git):
      (Git.find_checkout_root):
      (Git.discard_local_commits):
      (Git.local_commits):
      (Git.working_directory_is_clean):
      (Git.clean_working_directory):
      (Git.add_list):
      (Git.delete_list):
      (Git.exists):
      (Git._current_branch):
      (Git._changes_files_for_commit):
      (Git.revisions_changing_file):
      (Git.svn_revision):
      (Git._run_git_svn_find_rev):
      (Git.contents_at_revision):
      (Git.diff_for_file):
      (Git.show_head):
      (Git.committer_email_for_revision):
      (Git.apply_reverse_diff):
      (Git.revert_files):
      (Git.commit_with_message):
      (Git._commit_on_branch):
      (Git.svn_commit_log):
      (Git.last_svn_commit_log):
      (Git.svn_blame):
      (Git._branch_ref_exists):
      (Git.delete_branch):
      (Git.remote_merge_base):
      (Git.commit_locally_with_message):
      (Git.push_local_commits_to_server):
      (Git.commit_ids_from_commitish_arguments):
      (Git.commit_message_for_local_commit):
      (Git.files_changed_summary_for_commit):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127507 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      3a62cc61
    • roger_fong@apple.com's avatar
      Unreviewed gardening. meda/video-controls-captions.html fails on Windows after... · 0ca6bb2d
      roger_fong@apple.com authored
      Unreviewed gardening. meda/video-controls-captions.html fails on Windows after it was introduced in http://trac.webkit.org/changeset/127035.
      https://bugs.webkit.org/show_bug.cgi?id=95428
      
      * platform/win/Skipped:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127506 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      0ca6bb2d
    • benjamin@webkit.org's avatar
      Improve JSC use of Strings after the UString->String change · 762e2c65
      benjamin@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=95633
      
      Patch by Benjamin Poulain <bpoulain@apple.com> on 2012-09-04
      Reviewed by Geoffrey Garen.
      
      This patch improve the use of strings in the JSC runtime.
      
      The initialization of Identifier is left for future patches.
      
      The improvements are the following:
      -5% faster to raise one of the modified exception.
      -3 times faster to execute Boolean::toString()
      
      Most of the changes are just about using the new methods
      for string literals.
      
      With the changes, the binary on x86_64 gets 176 bytes smaller.
      
      * API/JSCallbackObjectFunctions.h:
      (JSC::::staticFunctionGetter):
      (JSC::::callbackGetter):
      * API/JSContextRef.cpp:
      (JSContextCreateBacktrace):
      * API/JSObjectRef.cpp:
      (JSObjectMakeFunctionWithCallback):
      * bytecode/CodeBlock.cpp:
      (JSC::valueToSourceString):
      (JSC::CodeBlock::nameForRegister):
      * interpreter/Interpreter.cpp:
      (JSC::Interpreter::addStackTraceIfNecessary):
      * runtime/ArrayConstructor.cpp:
      (JSC::constructArrayWithSizeQuirk):
      * runtime/ArrayPrototype.cpp:
      (JSC::shift):
      (JSC::unshift):
      (JSC::arrayProtoFuncPop):
      (JSC::arrayProtoFuncReverse):
      * runtime/BooleanPrototype.cpp:
      (JSC::booleanProtoFuncToString): Instead of instanciating new strings, reuse the
      keywords available in SmallStrings. Avoiding the creation of the JSString and StringImpl
      makes the method significantly faster.
      
      * runtime/DateConversion.cpp:
      (JSC::formatDateTime):
      * runtime/DatePrototype.cpp:
      (JSC::formatLocaleDate):
      (JSC::formateDateInstance):
      (JSC::dateProtoFuncToISOString):
      Change the way we use snprintf() for clarity and performance.
      
      Instead of allocating one extra byte to put a zero "just in case", we use the size returned
      by snprintf().
      To prevent any overflow from a programming mistake, we explicitely test for overflow and
      return an empty string.
      
      (JSC::dateProtoFuncToJSON):
      * runtime/Error.cpp:
      (JSC::createNotEnoughArgumentsError):
      (JSC::throwTypeError):
      (JSC::throwSyntaxError):
      * runtime/Error.h:
      (JSC::StrictModeTypeErrorFunction::create):
      * runtime/ErrorPrototype.cpp:
      (JSC::ErrorPrototype::finishCreation):
      (JSC::errorProtoFuncToString):
      Using a null String is correct because (8) uses jsString(), (9) tests for a length of 0.
      
      * runtime/ExceptionHelpers.cpp:
      (JSC::InterruptedExecutionError::defaultValue):
      (JSC::TerminatedExecutionError::defaultValue):
      (JSC::createStackOverflowError):
      (JSC::createOutOfMemoryError):
      * runtime/Executable.cpp:
      (JSC::EvalExecutable::compileInternal):
      (JSC::FunctionExecutable::paramString):
      * runtime/FunctionConstructor.cpp:
      (JSC::constructFunction):
      (JSC::constructFunctionSkippingEvalEnabledCheck):
      * runtime/FunctionPrototype.h:
      (JSC::FunctionPrototype::create):
      Using a null String for the name is correct because InternalFunction uses jsString()
      to create the name value.
      
      * runtime/InternalFunction.cpp:
      (JSC::InternalFunction::finishCreation):
      There is no need to create an empty string for a null string, jsString() handle both
      cases as empty JSString.
      
      * runtime/JSArray.cpp:
      (JSC::reject):
      (JSC::SparseArrayValueMap::put):
      (JSC::JSArray::put):
      (JSC::JSArray::putByIndexBeyondVectorLength):
      (JSC::JSArray::putDirectIndexBeyondVectorLength):
      (JSC::JSArray::setLength):
      (JSC::JSArray::pop):
      (JSC::JSArray::push):
      * runtime/JSFunction.cpp:
      (JSC::JSFunction::finishCreation): Same issue as InternalFunction::finishCreation.
      
      (JSC::JSFunction::callerGetter):
      (JSC::JSFunction::defineOwnProperty):
      * runtime/JSGlobalData.cpp:
      (JSC::enableAssembler): Use CFSTR() instead of CFStringCreateWithCString().
      CFStringCreateWithCString() copy the content and may choose to decode the data.
      CFSTR() is much more efficient.
      
      * runtime/JSGlobalObject.cpp:
      (JSC::JSGlobalObject::reset):
      JSFunction uses jsString() to create the name, we can use null strings instead
      of creating empty strings.
      
      (JSC::JSGlobalObject::createThrowTypeError): ditto.
      * runtime/JSGlobalObjectFunctions.cpp:
      (JSC::encode):
      (JSC::decode):
      (JSC::globalFuncEval):
      * runtime/JSONObject.cpp:
      (JSC::Stringifier::appendStringifiedValue):
      (JSC::Stringifier::Holder::appendNextProperty):
      (JSC::JSONProtoFuncParse):
      (JSC::JSONProtoFuncStringify):
      * runtime/JSObject.cpp:
      (JSC::JSObject::put):
      (JSC::JSObject::defaultValue):
      (JSC::JSObject::hasInstance):
      (JSC::JSObject::defineOwnProperty):
      * runtime/JSString.cpp:
      Return an empty JSString to avoid the creation of a temporary empty String.
      
      (JSC::JSRopeString::getIndexSlowCase):
      * runtime/JSString.h:
      (JSC): Remove the versions of jsNontrivialString() taking a char*. All the callers
      have been replaced by calls using ASCIILiteral.
      
      * runtime/JSValue.cpp:
      (JSC::JSValue::putToPrimitive):
      * runtime/LiteralParser.cpp:
      (JSC::::Lexer::lex):
      (JSC::::Lexer::lexString):
      (JSC::::Lexer::lexNumber):
      (JSC::::parse):
      * runtime/LiteralParser.h:
      (JSC::LiteralParser::getErrorMessage):
      * runtime/NumberPrototype.cpp:
      (JSC::numberProtoFuncToExponential):
      (JSC::numberProtoFuncToFixed):
      (JSC::numberProtoFuncToPrecision):
      (JSC::numberProtoFuncToString):
      * runtime/ObjectConstructor.cpp:
      (JSC::objectConstructorGetPrototypeOf):
      (JSC::objectConstructorGetOwnPropertyDescriptor):
      (JSC::objectConstructorGetOwnPropertyNames):
      (JSC::objectConstructorKeys):
      (JSC::toPropertyDescriptor):
      (JSC::objectConstructorDefineProperty):
      (JSC::objectConstructorDefineProperties):
      (JSC::objectConstructorCreate):
      (JSC::objectConstructorSeal):
      (JSC::objectConstructorFreeze):
      (JSC::objectConstructorPreventExtensions):
      (JSC::objectConstructorIsSealed):
      (JSC::objectConstructorIsFrozen):
      (JSC::objectConstructorIsExtensible):
      * runtime/ObjectPrototype.cpp:
      (JSC::objectProtoFuncDefineGetter):
      (JSC::objectProtoFuncDefineSetter):
      (JSC::objectProtoFuncToString):
      * runtime/RegExpConstructor.cpp:
      (JSC::constructRegExp):
      * runtime/RegExpObject.cpp:
      (JSC::reject):
      (JSC::regExpObjectSource):
      * runtime/RegExpPrototype.cpp:
      (JSC::regExpProtoFuncCompile):
      * runtime/StringObject.cpp:
      (JSC::StringObject::defineOwnProperty):
      * runtime/StringPrototype.cpp:
      (JSC::jsSpliceSubstrings):
      (JSC::jsSpliceSubstringsWithSeparators):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127505 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      762e2c65
    • fpizlo@apple.com's avatar
      DFG GetByVal for JSArrays shouldn't OSR exit every time that the index is out of bound · 163e4775
      fpizlo@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=95717
      
      Reviewed by Oliver Hunt.
      
      Make GetByVal for JSArrayOutOfBounds do meaningful things. The profiling was already
      there so we should just use it!
      
      * bytecode/DFGExitProfile.h:
      (JSC::DFG::exitKindToString):
      * dfg/DFGAbstractState.cpp:
      (JSC::DFG::AbstractState::execute):
      * dfg/DFGOperations.cpp:
      * dfg/DFGOperations.h:
      * dfg/DFGSpeculativeJIT.h:
      (JSC::DFG::SpeculativeJIT::callOperation):
      * dfg/DFGSpeculativeJIT32_64.cpp:
      (JSC::DFG::SpeculativeJIT::compile):
      * dfg/DFGSpeculativeJIT64.cpp:
      (JSC::DFG::SpeculativeJIT::compile):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127503 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      163e4775
    • tonikitoo@webkit.org's avatar
      [BlackBerry] Use child/ScrollableContent layer's position instead of... · 94cb8dd8
      tonikitoo@webkit.org authored
      [BlackBerry] Use child/ScrollableContent layer's position instead of parent/ScrollLayer's boundsOrigin
      https://bugs.webkit.org/show_bug.cgi?id=95778
      PR #202252
      
      Reviewed by Rob Buis.
      Patch by Antonio Gomes <agomes@rim.com>
      Internally reviewed by Arvid Nilsson.
      
      Upstream has switch away from using the parent scroll layer's bounds origin
      in order to translate contents of all its child layers. Instead now, it directly
      sets the scroll position of the child scrollable contents layer.
      
      Source/WebCore:
      
      No new tests, since it is a catch-up with upstreaming code.
      
      Source/WebCore:
      * platform/graphics/blackberry/GraphicsLayerBlackBerry.cpp:
      (WebCore):
      * platform/graphics/blackberry/GraphicsLayerBlackBerry.h:
      (GraphicsLayerBlackBerry):
      * platform/graphics/blackberry/LayerCompositingThread.cpp:
      (WebCore::LayerCompositingThread::updateAnimations):
      * platform/graphics/blackberry/LayerCompositingThread.h:
      (WebCore::LayerOverride::LayerOverride):
      (LayerOverride):
      * platform/graphics/blackberry/LayerData.h:
      (LayerData):
      * platform/graphics/blackberry/LayerRenderer.cpp:
      (WebCore::LayerRenderer::updateLayersRecursive):
      * platform/graphics/blackberry/LayerWebKitThread.h:
      * rendering/RenderLayerBacking.cpp:
      (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
      
      Source/WebKit/blackberry:
      
      Source/WebKit/blackberry:
      * Api/InRegionScroller.cpp:
      (BlackBerry::WebKit::InRegionScrollerPrivate::setScrollPositionCompositingThread):
      * WebKitSupport/InRegionScrollableArea.cpp:
      (BlackBerry::WebKit::InRegionScrollableArea::InRegionScrollableArea):
      
      No new tests, since it is a catch-up with upstreaming code.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127502 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      94cb8dd8
    • tommyw@google.com's avatar
      MediaStream API: Add the async createOffer functionality to RTCPeerConnection · ee34ed92
      tommyw@google.com authored
      https://bugs.webkit.org/show_bug.cgi?id=95734
      
      Reviewed by Adam Barth.
      
      Source/Platform:
      
      * Platform.gypi:
      * chromium/public/WebRTCPeerConnectionHandler.h:
      (WebKit):
      (WebRTCPeerConnectionHandler):
      * chromium/public/WebRTCSessionDescriptionDescriptor.h: Added.
      (WebCore):
      (WebKit):
      (WebRTCSessionDescriptionDescriptor):
      (WebKit::WebRTCSessionDescriptionDescriptor::WebRTCSessionDescriptionDescriptor):
      (WebKit::WebRTCSessionDescriptionDescriptor::~WebRTCSessionDescriptionDescriptor):
      (WebKit::WebRTCSessionDescriptionDescriptor::operator=):
      (WebKit::WebRTCSessionDescriptionDescriptor::isNull):
      * chromium/public/WebRTCSessionDescriptionRequest.h: Added.
      (WebCore):
      (WebKit):
      (WebRTCSessionDescriptionRequest):
      (ExtraData):
      (WebKit::WebRTCSessionDescriptionRequest::ExtraData::~ExtraData):
      (WebKit::WebRTCSessionDescriptionRequest::WebRTCSessionDescriptionRequest):
      (WebKit::WebRTCSessionDescriptionRequest::~WebRTCSessionDescriptionRequest):
      (WebKit::WebRTCSessionDescriptionRequest::operator=):
      (WebKit::WebRTCSessionDescriptionRequest::isNull):
      
      Source/WebCore:
      
      createOffer sends a request to the platform implementer requesting it to gather up all candidates.
      This can take some time, therefore the request is async.
      
      Test: fast/mediastream/RTCPeerConnection-createOffer.html
      
      * CMakeLists.txt:
      * GNUmakefile.list.am:
      * Modules/mediastream/RTCErrorCallback.h: Copied from Source/WebCore/platform/mediastream/RTCSessionDescriptionDescriptor.h.
      (WebCore):
      (RTCErrorCallback):
      (WebCore::RTCErrorCallback::~RTCErrorCallback):
      * Modules/mediastream/RTCErrorCallback.idl: Copied from Source/WebCore/platform/mediastream/RTCSessionDescriptionDescriptor.h.
      * Modules/mediastream/RTCPeerConnection.cpp:
      (WebCore::RTCPeerConnection::createOffer):
      (WebCore):
      * Modules/mediastream/RTCPeerConnection.h:
      (WebCore):
      (RTCPeerConnection):
      * Modules/mediastream/RTCPeerConnection.idl:
      * Modules/mediastream/RTCSessionDescriptionCallback.h: Copied from Source/WebCore/platform/mediastream/RTCSessionDescriptionDescriptor.h.
      (WebCore):
      (RTCSessionDescriptionCallback):
      (WebCore::RTCSessionDescriptionCallback::~RTCSessionDescriptionCallback):
      * Modules/mediastream/RTCSessionDescriptionCallback.idl: Copied from Source/WebCore/platform/mediastream/RTCSessionDescriptionDescriptor.h.
      * Modules/mediastream/RTCSessionDescriptionRequestImpl.cpp: Added.
      (WebCore):
      (WebCore::RTCSessionDescriptionRequestImpl::create):
      (WebCore::RTCSessionDescriptionRequestImpl::RTCSessionDescriptionRequestImpl):
      (WebCore::RTCSessionDescriptionRequestImpl::~RTCSessionDescriptionRequestImpl):
      (WebCore::RTCSessionDescriptionRequestImpl::requestSucceeded):
      (WebCore::RTCSessionDescriptionRequestImpl::requestFailed):
      (WebCore::RTCSessionDescriptionRequestImpl::stop):
      (WebCore::RTCSessionDescriptionRequestImpl::clear):
      * Modules/mediastream/RTCSessionDescriptionRequestImpl.h: Copied from Source/WebCore/platform/mediastream/RTCSessionDescriptionDescriptor.h.
      (WebCore):
      (RTCSessionDescriptionRequestImpl):
      * WebCore.gypi:
      * platform/chromium/support/WebRTCSessionDescriptionDescriptor.cpp: Copied from Tools/DumpRenderTree/chromium/MockWebRTCPeerConnectionHandler.h.
      (WebKit):
      (WebKit::WebRTCSessionDescriptionDescriptor::WebRTCSessionDescriptionDescriptor):
      (WebKit::WebRTCSessionDescriptionDescriptor::assign):
      (WebKit::WebRTCSessionDescriptionDescriptor::reset):
      (WebKit::WebRTCSessionDescriptionDescriptor::operator WTF::PassRefPtr<WebCore::RTCSessionDescriptionDescriptor>):
      (WebKit::WebRTCSessionDescriptionDescriptor::initialize):
      (WebKit::WebRTCSessionDescriptionDescriptor::type):
      (WebKit::WebRTCSessionDescriptionDescriptor::setType):
      (WebKit::WebRTCSessionDescriptionDescriptor::sdp):
      (WebKit::WebRTCSessionDescriptionDescriptor::setSDP):
      * platform/chromium/support/WebRTCSessionDescriptionRequest.cpp: Added.
      (WebKit):
      (WebKit::WebRTCSessionDescriptionRequest::WebRTCSessionDescriptionRequest):
      (WebKit::WebRTCSessionDescriptionRequest::assign):
      (WebKit::WebRTCSessionDescriptionRequest::reset):
      (WebKit::WebRTCSessionDescriptionRequest::requestSucceeded):
      (WebKit::WebRTCSessionDescriptionRequest::requestFailed):
      (ExtraDataContainer):
      (WebKit::ExtraDataContainer::ExtraDataContainer):
      (WebKit::ExtraDataContainer::extraData):
      (WebKit::WebRTCSessionDescriptionRequest::extraData):
      (WebKit::WebRTCSessionDescriptionRequest::setExtraData):
      * platform/mediastream/RTCPeerConnectionHandler.cpp:
      (RTCPeerConnectionHandlerDummy):
      (WebCore::RTCPeerConnectionHandlerDummy::createOffer):
      (WebCore):
      * platform/mediastream/RTCPeerConnectionHandler.h:
      (WebCore):
      (RTCPeerConnectionHandler):
      * platform/mediastream/RTCSessionDescriptionDescriptor.h:
      (WebCore::RTCSessionDescriptionDescriptor::type):
      (WebCore::RTCSessionDescriptionDescriptor::sdp):
      * platform/mediastream/RTCSessionDescriptionRequest.h: Copied from Source/WebCore/platform/mediastream/RTCSessionDescriptionDescriptor.h.
      (WebCore):
      (RTCSessionDescriptionRequest):
      (ExtraData):
      (WebCore::RTCSessionDescriptionRequest::ExtraData::~ExtraData):
      (WebCore::RTCSessionDescriptionRequest::~RTCSessionDescriptionRequest):
      (WebCore::RTCSessionDescriptionRequest::extraData):
      (WebCore::RTCSessionDescriptionRequest::setExtraData):
      (WebCore::RTCSessionDescriptionRequest::RTCSessionDescriptionRequest):
      * platform/mediastream/chromium/RTCPeerConnectionHandlerChromium.cpp:
      (WebCore::RTCPeerConnectionHandlerChromium::createOffer):
      (WebCore):
      * platform/mediastream/chromium/RTCPeerConnectionHandlerChromium.h:
      (RTCPeerConnectionHandlerChromium):
      
      Tools:
      
      * DumpRenderTree/chromium/MockWebRTCPeerConnectionHandler.cpp:
      (MockWebRTCPeerConnectionHandler::SuccessCallbackTask::SuccessCallbackTask):
      (MockWebRTCPeerConnectionHandler::SuccessCallbackTask::runIfValid):
      (MockWebRTCPeerConnectionHandler::FailureCallbackTask::FailureCallbackTask):
      (MockWebRTCPeerConnectionHandler::FailureCallbackTask::runIfValid):
      (MockWebRTCPeerConnectionHandler::createOffer):
      * DumpRenderTree/chromium/MockWebRTCPeerConnectionHandler.h:
      (MockWebRTCPeerConnectionHandler):
      (MockWebRTCPeerConnectionHandler::taskList):
      (SuccessCallbackTask):
      (FailureCallbackTask):
      
      LayoutTests:
      
      * fast/mediastream/RTCPeerConnection-createOffer-expected.txt: Added.
      * fast/mediastream/RTCPeerConnection-createOffer.html: Added.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127501 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      ee34ed92
    • mitz@apple.com's avatar
      Reverted r127468 (the fix for <http://webkit.org/b/93443>) because the test it included caused · 6cb577ef
      mitz@apple.com authored
      an assertion failure in Document::updateStyleIfNeeded().
      
      Source/WebCore: 
      
      * dom/NamedFlowCollection.cpp:
      (WebCore::NamedFlowCollection::ensureFlowWithName):
      (WebCore::NamedFlowCollection::discardNamedFlow):
      * inspector/Inspector.json:
      * inspector/InspectorCSSAgent.cpp:
      (WebCore::InspectorCSSAgent::didCreateNamedFlow):
      (WebCore::InspectorCSSAgent::didRemoveNamedFlow):
      (WebCore::InspectorCSSAgent::getNamedFlowCollection):
      (WebCore::InspectorCSSAgent::getFlowByName):
      (WebCore):
      * inspector/InspectorCSSAgent.h:
      (InspectorCSSAgent):
      * inspector/InspectorInstrumentation.cpp:
      (WebCore):
      (WebCore::InspectorInstrumentation::didCreateNamedFlowImpl):
      (WebCore::InspectorInstrumentation::didRemoveNamedFlowImpl):
      * inspector/InspectorInstrumentation.h:
      (InspectorInstrumentation):
      (WebCore::InspectorInstrumentation::didCreateNamedFlow):
      (WebCore::InspectorInstrumentation::didRemoveNamedFlow):
      * inspector/front-end/CSSStyleModel.js:
      (WebInspector.CSSStyleModel):
      (WebInspector.CSSStyleModel.prototype.getNamedFlowCollectionAsync):
      (WebInspector.CSSStyleModel.prototype.getFlowByNameAsync):
      (WebInspector.CSSStyleModel.prototype._namedFlowCreated.callback):
      (WebInspector.CSSStyleModel.prototype._namedFlowCreated):
      (WebInspector.CSSStyleModel.prototype._namedFlowRemoved.callback):
      (WebInspector.CSSStyleModel.prototype._namedFlowRemoved):
      (WebInspector.CSSDispatcher.prototype.namedFlowCreated):
      (WebInspector.CSSDispatcher.prototype.namedFlowRemoved):
      (WebInspector.NamedFlow):
      (WebInspector.NamedFlow.parsePayloadArray):
      * rendering/RenderNamedFlowThread.cpp:
      (WebCore::RenderNamedFlowThread::dispatchRegionLayoutUpdateEvent):
      
      LayoutTests: 
      
      * inspector/styles/protocol-css-regions-commands-expected.txt:
      * inspector/styles/protocol-css-regions-commands.html:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127500 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      6cb577ef
    • simon.fraser@apple.com's avatar
      Regression: Heap-use-after-free in WebCore::FrameView::scrollContentsFastPath · 0dd46922
      simon.fraser@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=95754
      
      Reviewed by Dave Hyatt.
      
      Source/WebCore:
      
      It's possible to have a renderer with position:fixed or sticky style,
      but no layer, for example a RenderScrollBarPart. Don't register such
      renderers with the FrameView.
      
      Moved the code that registers/unregisters with the FrameView from
      styleWillChange() to styleDidChange(), since in the latter case
      we can check if we have a RenderLayer. Only register renderers with layers.
      We always unregister, which required removing an assertion in
      FrameView::removeFixedObject(), and replacing it with a null check of m_fixedObjects.
      
      Test: fast/css/remove-fixed-resizer-crash.html
      
      * page/FrameView.cpp:
      (WebCore::FrameView::removeFixedObject):
      * rendering/RenderBoxModelObject.cpp:
      (WebCore::RenderBoxModelObject::styleWillChange):
      (WebCore::RenderBoxModelObject::styleDidChange):
      
      LayoutTests:
      
      Testcase with a position:fixed resizer and scrolling.
      
      * fast/css/remove-fixed-resizer-crash-expected.txt: Added.
      * fast/css/remove-fixed-resizer-crash.html: Added.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127497 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      0dd46922
    • dominik.rottsches@intel.com's avatar
      ResourceErrorBase needs to identify timeouts · a8106ec0
      dominik.rottsches@intel.com authored
      https://bugs.webkit.org/show_bug.cgi?id=95755
      
      Reviewed by Alexey Proskuryakov.
      
      Adding a property to check whether this ResourceError was raised due to a timeout.
      This is preparatory work for bug 74802. In order to implement XHR2 timeout functionality,
      I need to identify some layers up whether the original network problem has been a timeout.
      
      No new tests, no change in behavior yet.
      
      * platform/network/ResourceErrorBase.cpp:
      (WebCore::ResourceErrorBase::copy): Copying new member.
      (WebCore::ResourceErrorBase::compare): Comparing new member.
      * platform/network/ResourceErrorBase.h:
      (WebCore::ResourceErrorBase::setIsTimeout): New setter.
      (WebCore::ResourceErrorBase::isTimeout): New getter.
      (ResourceErrorBase),
      (WebCore::ResourceErrorBase::ResourceErrorBase): Adding m_isTimeout member.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127495 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      a8106ec0
    • commit-queue@webkit.org's avatar
      [chromium] Rename WebViewClient::handleDisambiguationPopup · dd3ef38c
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=95529
      
      Patch by Tien-Ren Chen <trchen@chromium.org> on 2012-09-04
      Reviewed by Adam Barth.
      
      Rename it to something more descriptive (WebViewClient::didTapMultipleTargets) before people start using it.
      
      * public/WebViewClient.h:
      (WebKit::WebViewClient::didTapMultipleTargets):
      * src/WebViewImpl.cpp:
      (WebKit::WebViewImpl::handleGestureEvent):
      * tests/WebFrameTest.cpp:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127494 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      dd3ef38c
    • staikos@webkit.org's avatar
      [BlackBerry] Fix memory leak in InputHandler · bf435db0
      staikos@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=95771
      
      Reviewed by Rob Buis.
      
      Simply delete the arrays at function exit.
      
      * WebKitSupport/InputHandler.cpp:
      (BlackBerry::WebKit::InputHandler::openSelectPopup):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127493 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      bf435db0
    • lforschler@apple.com's avatar
      Versioning. · bf15a92d
      lforschler@apple.com authored
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127492 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      bf15a92d
    • roger_fong@apple.com's avatar
      Unreviewed. Removing accidentally added executable properties on test files. · 364b2484
      roger_fong@apple.com authored
      * platform/win/accessibility/canvas-description-and-role-expected.txt: Removed property svn:executable.
      * platform/win/fast/canvas/canvas-strokeRect-alpha-shadow-expected.txt: Removed property svn:executable.
      * platform/win/fast/css/image-resolution/image-resolution-expected.txt: Removed property svn:executable.
      * platform/win/fast/css/image-set-setting-expected.txt: Removed property svn:executable.
      * platform/win/fast/css/parse-border-image-repeat-null-crash-expected.txt: Removed property svn:executable.
      * platform/win/fast/css/variables/build-supports-variables-expected.txt: Removed property svn:executable.
      * platform/win/fast/css3-text-decoration/getComputedStyle/getComputedStyle-text-decoration-line-expected.txt: Removed property svn:executable.
      * platform/win/fast/css3-text-decoration/getComputedStyle/getComputedStyle-text-decoration-style-expected.txt: Removed property svn:executable.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127491 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      364b2484
    • staikos@webkit.org's avatar
      [BlackBerry] pass isMainFrame() through to notifyDocumentOnLoad() · 8553538b
      staikos@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=95766
      
      Reviewed by Rob Buis.
      
      Passing the frame status through will allow the client to make better
      decisions about how to act on the onload.
      
      * Api/WebPageClient.h:
      * WebCoreSupport/FrameLoaderClientBlackBerry.cpp:
      (WebCore::FrameLoaderClientBlackBerry::dispatchDidHandleOnloadEvents):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127489 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      8553538b
    • wangxianzhu@chromium.org's avatar
      [Chromium-Android] Output time and thread info in crash log · 921a7083
      wangxianzhu@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=95768
      
      Reviewed by Adam Barth.
      
      * Scripts/webkitpy/layout_tests/port/chromium_android.py:
      (ChromiumAndroidDriver._get_logcat): Add '-v threadtime' to adb logcat command line to get time and thread info.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127488 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      921a7083
    • commit-queue@webkit.org's avatar
      [Qt] Remove use of deprecated QInputMethod method · 68f7f613
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=95741
      
      Patch by Pekka Vuorela <pvuorela@iki.fi> on 2012-09-04
      Reviewed by Simon Hausmann.
      
      Adapt from deprecated QInputMethod::visible() to isVisible().
      
      * UIProcess/qt/QtWebPageEventHandler.cpp:
      (WebKit::setInputPanelVisible):
      (WebKit::QtWebPageEventHandler::inputPanelVisibleChanged):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127487 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      68f7f613
    • rwlbuis@webkit.org's avatar
      [BlackBerry] Provide virtual dtor for DumpRenderTreeClient · 90571290
      rwlbuis@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=95769
      
      Reviewed by NOBODY (OOPS!).
      
      Also remove WTF prefixes.
      
      * Api/DumpRenderTreeClient.h:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127486 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      90571290
    • tommyw@google.com's avatar
      MediaStream API: Change the MediaStreamTrackList track added/removed signaling · 4b9a957b
      tommyw@google.com authored
      https://bugs.webkit.org/show_bug.cgi?id=95721
      
      Reviewed by Adam Barth.
      
      Source/Platform:
      
      Adding the signaling to the WebKit interface.
      
      * chromium/public/WebMediaStreamCenter.h:
      (WebKit::WebMediaStreamCenter::didAddMediaStreamTrack):
      (WebKit::WebMediaStreamCenter::didRemoveMediaStreamTrack):
      
      Source/WebCore:
      
      This allows the platform implementor to throw an NOT_SUPPORTED_ERR exception if it doesn support these methods.
      
      Patch covered by expanded existing test.
      
      * Modules/mediastream/MediaStreamTrackList.cpp:
      (WebCore::MediaStreamTrackList::add):
      (WebCore::MediaStreamTrackList::remove):
      * platform/mediastream/MediaStreamCenter.h:
      (MediaStreamCenter):
      * platform/mediastream/blackberry/MediaStreamCenterBlackBerry.cpp:
      (WebCore::MediaStreamCenterBlackBerry::didAddMediaStreamTrack):
      (WebCore):
      (WebCore::MediaStreamCenterBlackBerry::didRemoveMediaStreamTrack):
      * platform/mediastream/blackberry/MediaStreamCenterBlackBerry.h:
      (MediaStreamCenterBlackBerry):
      * platform/mediastream/chromium/MediaStreamCenterChromium.cpp:
      (WebCore::MediaStreamCenterChromium::didAddMediaStreamTrack):
      (WebCore::MediaStreamCenterChromium::didRemoveMediaStreamTrack):
      * platform/mediastream/chromium/MediaStreamCenterChromium.h:
      (MediaStreamCenterChromium):
      * platform/mediastream/gstreamer/MediaStreamCenterGStreamer.cpp:
      (WebCore::MediaStreamCenterGStreamer::didAddMediaStreamTrack):
      (WebCore::MediaStreamCenterGStreamer::didRemoveMediaStreamTrack):
      * platform/mediastream/gstreamer/MediaStreamCenterGStreamer.h:
      (MediaStreamCenterGStreamer):
      
      Tools:
      
      * DumpRenderTree/chromium/MockWebMediaStreamCenter.cpp:
      (MockWebMediaStreamCenter::didAddMediaStreamTrack):
      (MockWebMediaStreamCenter::didRemoveMediaStreamTrack):
      * DumpRenderTree/chromium/MockWebMediaStreamCenter.h:
      (MockWebMediaStreamCenter):
      
      LayoutTests:
      
      * fast/mediastream/MediaStreamTrackList.html:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127485 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      4b9a957b
    • zoltan@webkit.org's avatar
      Extend the coverage of the Custom Allocation Framework in WTF and in JavaScriptCore · c6395da1
      zoltan@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=95737
      
      Reviewed by Eric Seidel.
      
      Add WTF_MAKE_FAST_ALLOCATED macro to the following class declarations because these are instantiated by operator new.
      
      Source/JavaScriptCore:
      
      * wtf/CryptographicallyRandomNumber.cpp: CryptographicallyRandomNumber is instantiated at wtf/CryptographicallyRandomNumber.cpp:162.
      
      * heap/MachineStackMarker.cpp:
      (MachineThreads::Thread): Thread is instantiated at heap/MachineStackMarker.cpp:196.
      * jit/ExecutableAllocatorFixedVMPool.cpp:
      (FixedVMPoolExecutableAllocator): FixedVMPoolExecutableAllocator is instantiated at jit/ExecutableAllocatorFixedVMPool.cpp:111
      * parser/SourceProviderCache.h:
      (SourceProviderCache): SourceProviderCache is instantiated at parser/SourceProvider.h:49.
      * parser/SourceProviderCacheItem.h:
      (SourceProviderCacheItem): SourceProviderCacheItem is instantiated at parser/Parser.cpp:843.
      * runtime/GCActivityCallback.h:
      (GCActivityCallback): GCActivityCallback is instantiated at runtime/GCActivityCallback.h:96.
      * tools/CodeProfile.h:
      (CodeProfile): CodeProfile is instantiated at JavaScriptCore/tools/CodeProfiling.cpp:140.
      
      Source/WTF:
      
      * wtf/CryptographicallyRandomNumber.cpp: CryptographicallyRandomNumber is instantiated at wtf/CryptographicallyRandomNumber.cpp:162.
      * wtf/MediaTime.h: MediaTime is instantiated at wtf/MediaTime.cpp:288.
      * wtf/MetaAllocator.h:
      (MetaAllocatorTracker): MetaAllocatorTracker is instantiated at JavaScriptCore/tools/CodeProfiling.cpp:120.
      * wtf/ThreadingPthreads.cpp:
      (PthreadState): PthreadState is instantiated at wtf/ThreadingPthreads.cpp:165.
      * wtf/text/AtomicString.cpp:
      (AtomicStringTable): AtomicStringTable is instantiated at wtf/text/AtomicString.cpp:43.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127484 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c6395da1
    • commit-queue@webkit.org's avatar
      [GTK] Crash in AccessibilityObject::accessibilityPlatformIncludesObject() · 366bc8b8
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=95740
      
      Patch by Joanmarie Diggs <jdiggs@igalia.com> on 2012-09-04
      Reviewed by Martin Robinson.
      
      Source/WebCore:
      
      Added sanity check to be sure we have a render object prior to seeing if
      said object is an anonymous block.
      
      Testing via unit test because a non-flaky layout test crasher could not
      be found.
      
      * accessibility/gtk/AccessibilityObjectAtk.cpp:
      (WebCore::AccessibilityObject::accessibilityPlatformIncludesObject):
      Sanity check for render object added.
      
      Source/WebKit/gtk:
      
      Updated unit test.
      
      * tests/testatk.c:
      (testWebkitAtkComboBox): Added checks that the menu popup in a combo box
      has 0 links and, more importantly, that checking doesn't result in a crash.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127483 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      366bc8b8
    • ojan@chromium.org's avatar
      Elide test names when running new-run-webkit-tests · 4384ece1
      ojan@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=95626
      
      Patch by Tony Chang <tony@chromium.org> on 2012-09-04
      Reviewed by Dirk Pranke.
      
      When the test name exceeds the number of terminal columns, it leaves
      text on the screen. Avoid this by eliding the test name when running
      tests. This is similar to what ninja does when compiling.
      
      * Scripts/webkitpy/layout_tests/views/metered_stream.py:
      (MeteredStream):
      (MeteredStream.number_of_columns): Helper method to get number of
      terminal columns. Won't work on Win32 python, but meh.
      * Scripts/webkitpy/layout_tests/views/printing.py:
      (Printer._test_status_line): New method for eliding the text. Doesn't use \u2026
      because stderr appears to be ascii only.
      (Printer.print_started_test): Route through _test_status_line.
      (Printer.print_finished_test): Route through _test_status_line.
      (Printer._print_test_trace): Route through _test_status_line.
      (Printer._print_baseline): Route through _test_status_line.
      * Scripts/webkitpy/layout_tests/views/printing_unittest.py:
      (test_test_status_line): Test for _test_status_line.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127482 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      4384ece1
    • commit-queue@webkit.org's avatar
      Automatic features should work in sandboxed iframes if "allow-scripts" flag is set · 5fa0b77a
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=93961
      
      Patch by Christophe Dumez <christophe.dumez@intel.com> on 2012-09-04
      Reviewed by Adam Barth.
      
      Source/WebCore:
      
      Allow automatic features (video autoplay and form control
      autofocus) in a sandboxed iframe that has "allow-scripts"
      flag set. This behavior is according to the latest
      specification at:
      http://dev.w3.org/html5/spec/browsers.html#attr-iframe-sandbox-allow-same-origin
      
      This sandboxed automatic features browsing context flag is
      relaxed by the same keyword as scripts, because when
      scripts are enabled these features are trivially possible
      anyway, and it would be unfortunate to force authors to
      use script to do them when sandboxed rather than allowing
      them to use the declarative features.
      
      Tests: fast/forms/autofocus-in-sandbox-with-allow-scripts.html
             media/auto-play-in-sandbox-with-allow-scripts.html
      
      * dom/SecurityContext.cpp:
      (WebCore::SecurityContext::parseSandboxPolicy):
      
      LayoutTests:
      
      Add layout tests to check that automatic features (video
      autoplay and form control autofocus) are allowed / working
      in sandboxed iframes if the "allow-scripts" flag is set.
      This behavior is according to the latest specification at:
      http://dev.w3.org/html5/spec/browsers.html#attr-iframe-sandbox-allow-same-origin
      
      The tests to check that automatic features are blocked in
      sandboxed iframes have been removed since they relied on
      the "allow-scripts" flag to work.
      
      * fast/forms/autofocus-in-sandbox-with-allow-scripts-expected.txt: Added.
      * fast/forms/autofocus-in-sandbox-with-allow-scripts.html: Renamed from LayoutTests/fast/forms/no-autofocus-in-sandbox.html.
      * fast/forms/no-autofocus-in-sandbox-expected.txt: Removed.
      * media/auto-play-in-sandbox-with-allow-scripts-expected.txt: Added.
      * media/auto-play-in-sandbox-with-allow-scripts.html: Renamed from LayoutTests/media/no-auto-play-in-sandbox.html.
      * media/no-auto-play-in-sandbox-expected.txt: Removed.
      * media/resources/auto-play-in-sandbox-with-allow-scripts-iframe.html: Added.
      * media/resources/no-auto-play-in-sandbox-iframe.html: Removed.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127481 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      5fa0b77a
    • commit-queue@webkit.org's avatar
      Register scrolling layers with ScrollingCoordinator · c032831a
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=78862
      
      Patch by Sami Kyostila <skyostil@google.com> on 2012-09-04
      Reviewed by James Robinson.
      
      In order to allow scrollable child layers to be scrolled off the main
      thread, register them with the ScrollingCoordinator. These layers are
      also removed from the non-fast scrollable region.
      
      Whenever the scroll offset or other scroll geometry related attribute of
      a compositor scrolled layer changes, the ScrollingCoordinator is
      informed to allow it to update its internal representation of the
      scrollable layer.
      
      No tests because the ScrollingCoordinator is currently not testable.
      
      * page/scrolling/ScrollingCoordinator.cpp:
      (WebCore::computeNonFastScrollableRegion): Composited scrolling layers
      can be scrolled off the main thread.
      (WebCore):
      (WebCore::ScrollingCoordinator::scrollableAreaScrollLayerDidChange):
      Callback to ScrollingCoordinator about changes the composited scrolling layers.
      * page/scrolling/ScrollingCoordinator.h:
      (WebCore):
      (ScrollingCoordinator):
      * page/scrolling/ScrollingCoordinatorNone.cpp:
      (WebCore):
      (WebCore::ScrollingCoordinator::scrollableAreaScrollLayerDidChange):
      * platform/ScrollableArea.h:
      (WebCore::ScrollableArea::usesCompositedScrolling):
      * rendering/RenderLayer.cpp:
      (WebCore):
      (WebCore::RenderLayer::usesCompositedScrolling):
      * rendering/RenderLayer.h:
      (RenderLayer):
      (WebCore::RenderLayer::usesCompositedScrolling):
      * rendering/RenderLayerBacking.cpp:
      (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
      (WebCore::RenderLayerBacking::updateScrollingLayers):
      * rendering/RenderLayerCompositor.cpp:
      (WebCore::RenderLayerCompositor::scrollingLayerDidChange):
      (WebCore):
      * rendering/RenderLayerCompositor.h:
      (RenderLayerCompositor):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127480 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c032831a
    • mhahnenberg@apple.com's avatar
      Remove uses of ClassInfo from SpeculativeJIT::compileObjectOrOtherLogicalNot · db8065f2
      mhahnenberg@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=95510
      
      Reviewed by Oliver Hunt.
      
      More refactoring to get rid of ClassInfo checks in the DFG.
      
      * dfg/DFGAbstractState.cpp:
      (JSC::DFG::AbstractState::execute):
      * dfg/DFGSpeculativeJIT.h:
      (SpeculativeJIT):
      * dfg/DFGSpeculativeJIT32_64.cpp:
      (JSC::DFG::SpeculativeJIT::compileNonStringCellOrOtherLogicalNot):
      (JSC::DFG::SpeculativeJIT::compileLogicalNot):
      * dfg/DFGSpeculativeJIT64.cpp:
      (JSC::DFG::SpeculativeJIT::compileNonStringCellOrOtherLogicalNot):
      (JSC::DFG::SpeculativeJIT::compileLogicalNot):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127479 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      db8065f2
    • tony@chromium.org's avatar
      Elide test names when running new-run-webkit-tests · 3ca57679
      tony@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=95626
      
      Reviewed by Dirk Pranke.
      
      When the test name exceeds the number of terminal columns, it leaves
      text on the screen. Avoid this by eliding the test name when running
      tests. This is similar to what ninja does when compiling.
      
      * Scripts/webkitpy/layout_tests/views/metered_stream.py:
      (MeteredStream):
      (MeteredStream.number_of_columns): Helper method to get number of
      terminal columns. Won't work on Win32 python, but meh.
      * Scripts/webkitpy/layout_tests/views/printing.py:
      (Printer._test_status_line): New method for eliding the text. Doesn't use \u2026
      because stderr appears to be ascii only.
      (Printer.print_started_test): Route through _test_status_line.
      (Printer.print_finished_test): Route through _test_status_line.
      (Printer._print_test_trace): Route through _test_status_line.
      (Printer._print_baseline): Route through _test_status_line.
      * Scripts/webkitpy/layout_tests/views/printing_unittest.py:
      (test_test_status_line): Test for _test_status_line.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127478 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      3ca57679
    • commit-queue@webkit.org's avatar
      [chromium] Do not allow infinite pending frames in CCFrameRateController · 341b68b6
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=94254
      
      Patch by Brian Anderson <brianderson@chromium.org> on 2012-09-04
      Reviewed by James Robinson.
      
      Removes support for infinite pending frames in CCFrameRateController
      if swap acks are available.
      
      Functionality covered by existing tests.
      
      * platform/graphics/chromium/cc/CCFrameRateController.cpp:
      (WebCore::CCFrameRateController::CCFrameRateController):
      (WebCore::CCFrameRateController::setMaxFramesPending):
      (WebCore::CCFrameRateController::setSwapBuffersCompleteSupported):
      (WebCore):
      (WebCore::CCFrameRateController::onTimerTick):
      (WebCore::CCFrameRateController::didBeginFrame):
      (WebCore::CCFrameRateController::didFinishFrame):
      * platform/graphics/chromium/cc/CCFrameRateController.h:
      (CCFrameRateController):
      * platform/graphics/chromium/cc/CCScheduler.cpp:
      (WebCore::CCScheduler::setSwapBuffersCompleteSupported):
      (WebCore):
      * platform/graphics/chromium/cc/CCScheduler.h:
      (CCScheduler):
      * platform/graphics/chromium/cc/CCThreadProxy.cpp:
      (WebCore::CCThreadProxy::initializeRendererOnImplThread):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127476 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      341b68b6
    • commit-queue@webkit.org's avatar
      [GTK] Print API missing documentation when generating gtkdoc · 0b338471
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=95703
      
      Patch by Martin Robinson <mrobinson@igalia.com> on 2012-09-04
      Reviewed by Carlos Garcia Campos.
      
      Print out API missing documentation when generating gtkdoc. This makes it
      easier to fix documentation errors.
      
      * gtk/generate-gtkdoc:
      (print_missing_api): Added.
      (generate_doc): Inline the rebase step, since it now reports an error
      when you try to rebase without generating documentation first.
      * gtk/gtkdoc.py:
      (GTKDoc.rebase_installed_docs): Raise an error when rebasing without
      generating documentation first to enable a small cleanup at the caller.
      (GTKDoc.api_missing_documentation): Added.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127475 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      0b338471
    • timothy_horton@apple.com's avatar
      ASSERTion failure when SVG element is removed from document and readded · 85558650
      timothy_horton@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=95517
      <rdar://problem/12175583>
      
      Reviewed by Brady Eidson.
      
      Previously, SVG animations would cease to animate when their parent
      <svg> element was removed and re-added to the document.
      
      Instead, to match Firefox and Opera, we should continue the animation
      with the same beginTime (i.e. the animation continues as if it had never
      been removed from the document).
      
      Test: svg/animations/reinserting-svg-into-document.html
      
      * svg/SVGSVGElement.cpp:
      (WebCore::SVGSVGElement::insertedInto): Don't call begin() on an already-started SMILTimeContainer().
      * svg/animation/SMILTimeContainer.cpp:
      (WebCore::SMILTimeContainer::isStarted): Added.
      * svg/animation/SMILTimeContainer.h: Add isStarted().
      * svg/animation/SVGSMILElement.cpp:
      (WebCore::SVGSMILElement::insertedInto): Always reschedule SVGSMILElements with
      their parent SMILTimeContainer when they are inserted into the document, otherwise
      they are lost (and never again update) when their subtree is removed and then
      readded to the document.
      
      Add a test that ensures that removing an SVG element from the document
      and readding it continues SMIL animations.
      
      * svg/animations/reinserting-svg-into-document.html: Added.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127474 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      85558650
    • scheib@chromium.org's avatar
      [Chromium] Allow asyncronous response of pointer lock requests in layout tests. · 34be567b
      scheib@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=95628
      
      Reviewed by James Robinson.
      
      Tools:
      
      Future tests need the ability to respond asynchronously that
      pointer lock requests have been accepted or rejected. This patch
      adds the following:
          testRunner.setPointerLockWillRespondAsynchronously();
          testRunner.didAcquirePointerLock();
          testRunner.didNotAcquirePointerLock();
      
      Tested in existing test:
          pointerlockchange-pointerlockerror-events.html
      
      * DumpRenderTree/chromium/DRTTestRunner.cpp:
      (DRTTestRunner::DRTTestRunner):
      (DRTTestRunner::didAcquirePointerLock):
      (DRTTestRunner::didNotAcquirePointerLock):
      (DRTTestRunner::setPointerLockWillRespondAsynchronously):
      * DumpRenderTree/chromium/DRTTestRunner.h:
      (DRTTestRunner):
      * DumpRenderTree/chromium/WebViewHost.cpp:
      (WebViewHost::requestPointerLock):
      (WebViewHost::didAcquirePointerLock):
      (WebViewHost::didNotAcquirePointerLock):
      * DumpRenderTree/chromium/WebViewHost.h:
      (WebViewHost):
      (WebViewHost::setPointerLockWillRespondAsynchronously):
      
      LayoutTests:
      
      Add testing for testRunner.setPointerLockWillRespondAsynchronously().
      
      * pointer-lock/pointerlockchange-pointerlockerror-events-expected.txt:
      * pointer-lock/pointerlockchange-pointerlockerror-events.html:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127473 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      34be567b
    • commit-queue@webkit.org's avatar
      [CSS Regions] Destroying a render named flow thread without unregistering... · 9e41565f
      commit-queue@webkit.org authored
      [CSS Regions] Destroying a render named flow thread without unregistering left-over content nodes triggered an assertion.
      https://bugs.webkit.org/show_bug.cgi?id=95645
      
      Patch by Andrei Bucur <abucur@adobe.com> on 2012-09-04
      Reviewed by Abhishek Arya.
      
      Source/WebCore:
      
      This patch cleans up the render named flow thread before destruction by unregistering left-over content nodes.
      
      Tests: fast/regions/moved-content-node-crash.html
      
      * rendering/RenderNamedFlowThread.cpp:
      (WebCore::RenderNamedFlowThread::~RenderNamedFlowThread):
      
      LayoutTests:
      
      Simple test case that triggers an ASSERT in debug mode and causes a crash in release.
      The ASSERT appears in RenderFlowThreadController::unregisterNamedFlowContentNode
      ASSERT(it != m_mapNamedFlowContentNodes.end());
      
      It happens because when a content node is added to an iframe document and then moved back, the iframe's RenderNamedFlowThread is destroyed
      without calling unregisterNamedFlowContentNode on the node. This triggers the before mentioned assertion after a lazyAttach and a detach
      in the parent document.
      
      * fast/regions/moved-content-node-crash-expected.txt: Added.
      * fast/regions/moved-content-node-crash.html: Added.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127472 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      9e41565f
    • peter@chromium.org's avatar
      [chromium] OpenTypeVerticalData.cpp in both webcore_remaining and... · 11128bf8
      peter@chromium.org authored
      [chromium] OpenTypeVerticalData.cpp in both webcore_remaining and webcore_platform seems to break incremental linking on Windows Chromium
      https://bugs.webkit.org/show_bug.cgi?id=95744
      
      Patch by Koji Ishii <kojiishi@gmail.com> on 2012-09-04
      Unreviewed build fix, verified by Scott Graham.
      
      The addition of 'platform/graphics/opentype/*' to webcore_platform in WebCore.gyp was redundant
      because '/opentype/' was already included to webcore_remaining.
      It was not only redundant but also breaks incremental linking.
      
      No new tests are required because no behavior changes.
      
      Patch by Koji Ishii <kojiishi@gmail.com> on 2012-09-04
      
      * WebCore.gyp/WebCore.gyp: Removed platform/graphics/opentype/* from webcore_platform.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127471 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      11128bf8
    • commit-queue@webkit.org's avatar
      [BlackBerry] Browser is not sending secured Cookie back to server over HTTPS connection · b0986158
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=95747
      
      PR199729
      
      Patch by Otto Derek Cheung <otcheung@rim.com> on 2012-09-04
      Reviewed by Rob Buis.
      Internally Reviewed by Joe Mason.
      
      If the browser has never saved a secure protocol cookie in its mapping before,
      and it tries to set and retreive a secure cookie over a non-secure
      protocol, it will not show up because the link between the secure and
      non-secure mapping isn't created until a cookie (sent through secure) is set.
      
      The fix is to also check for the linkage in getRawCookies. Note that we cannot
      map the secure CookieMap to the non-secure one because getRawCookies is a const
      function.
      
      Manually tested using our Browser Test suite.
      
      * platform/blackberry/CookieManager.cpp:
      (WebCore::CookieManager::getRawCookies):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127470 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      b0986158
    • philn@webkit.org's avatar
      [GStreamer] 0.11 build breaks due to rename of gst_message_new_duration · 1dd0161e
      philn@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=95751
      
      Reviewed by Martin Robinson.
      
      In gstreamer commit f712a9596c2bc1863edf9b816d9854eefca9ba45
      gst_message_new_duration was renamed to
      gst_message_new_duration_changed.
      
      However the only place where we used this is in the HTTP source
      element and only if appsrc < 0.10.27 is used at runtime. In the
      case of GStreamer 1.0 this condition will be always false so we
      can disable this code at build time.
      
      * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
      (StreamingClient::didReceiveResponse):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127469 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      1dd0161e
    • vsevik@chromium.org's avatar
      Web Inspector: Protocol Extension: Add "regionLayoutUpdate" event · ad981b04
      vsevik@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=93443
      
      Patch by Andrei Poenaru <poenaru@adobe.com> on 2012-09-04
      Reviewed by Pavel Feldman.
      
      Source/WebCore:
      
      Added "regionLayoutUpdate" event to the protocol.
      
      Removed "getFlowByName" from protocol.
      
      The front-end keeps in sync the requested Named Flow Collections.
      
      Modified existing test: inspector/styles/protocol-css-regions-commands.html
      
      * dom/NamedFlowCollection.cpp:
      (WebCore::NamedFlowCollection::ensureFlowWithName):
      (WebCore::NamedFlowCollection::discardNamedFlow):
      * inspector/Inspector.json:
      * inspector/InspectorCSSAgent.cpp:
      (WebCore::InspectorCSSAgent::didCreateNamedFlow):
      (WebCore::InspectorCSSAgent::willRemoveNamedFlow):
      (WebCore):
      (WebCore::InspectorCSSAgent::didUpdateRegionLayout):
      (WebCore::InspectorCSSAgent::getNamedFlowCollection):
      (WebCore::InspectorCSSAgent::documentNodeWithRequestedFlowsId):
      * inspector/InspectorCSSAgent.h:
      (InspectorCSSAgent):
      * inspector/InspectorInstrumentation.cpp:
      (WebCore):
      (WebCore::InspectorInstrumentation::didCreateNamedFlowImpl):
      (WebCore::InspectorInstrumentation::willRemoveNamedFlowImpl):
      (WebCore::InspectorInstrumentation::didUpdateRegionLayoutImpl):
      * inspector/InspectorInstrumentation.h:
      (InspectorInstrumentation):
      (WebCore::InspectorInstrumentation::didCreateNamedFlow):
      (WebCore::InspectorInstrumentation::willRemoveNamedFlow):
      (WebCore):
      (WebCore::InspectorInstrumentation::didUpdateRegionLayout):
      * inspector/front-end/CSSStyleModel.js:
      (WebInspector.CSSStyleModel):
      (WebInspector.CSSStyleModel.prototype.getNamedFlowCollectionAsync.callback):
      (WebInspector.CSSStyleModel.prototype.getNamedFlowCollectionAsync):
      (WebInspector.CSSStyleModel.prototype.getFlowByNameAsync.callback):
      (WebInspector.CSSStyleModel.prototype.getFlowByNameAsync):
      (WebInspector.CSSStyleModel.prototype._namedFlowCreated):
      (WebInspector.CSSStyleModel.prototype._namedFlowRemoved):
      (WebInspector.CSSStyleModel.prototype._regionLayoutUpdated):
      (WebInspector.CSSStyleModel.prototype._resetNamedFlowCollections):
      (WebInspector.CSSDispatcher.prototype.namedFlowCreated):
      (WebInspector.CSSDispatcher.prototype.namedFlowRemoved):
      (WebInspector.CSSDispatcher.prototype.regionLayoutUpdated):
      (WebInspector.NamedFlow):
      (WebInspector.NamedFlowCollection):
      (WebInspector.NamedFlowCollection.prototype.appendNamedFlow):
      (WebInspector.NamedFlowCollection.prototype.removeNamedFlow):
      (WebInspector.NamedFlowCollection.prototype.flowByName):
      * rendering/RenderNamedFlowThread.cpp:
      (WebCore::RenderNamedFlowThread::dispatchRegionLayoutUpdateEvent):
      
      LayoutTests:
      
      Validate "regionLayoutUpdate" event.
      
      * inspector/styles/protocol-css-regions-commands-expected.txt:
      * inspector/styles/protocol-css-regions-commands.html:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127468 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      ad981b04
    • commit-queue@webkit.org's avatar
      Fix IDL dependency generation correctly · 533412d7
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=95730
      
      Patch by Jonathan Liu <net147@gmail.com> on 2012-09-04
      Reviewed by Csaba Osztrogonác.
      
      IDL dependency generation is still not working after
      https://bugs.webkit.org/show_bug.cgi?id=88304. This is because spaces
      added after the filename in an echo command end up being added to the
      file which isn't handled correctly by preprocess-idls.pl. The problem
      is fixed by removing the space after the filename.
      
      * DerivedSources.pri:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127467 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      533412d7
    • commit-queue@webkit.org's avatar
      [Stable] [GTK] Crash in WebCore::HTMLSelectElement::selectedIndex · 61d00bd3
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=95618
      
      Patch by Mario Sanchez Prada <msanchez@igalia.com> on 2012-09-04
      Reviewed by Martin Robinson.
      
      Source/WebCore:
      
      Make sure we only emit the the signal for menu lists and list
      boxes rendered from actual HTML select elements.
      
      * accessibility/gtk/AXObjectCacheAtk.cpp:
      (WebCore::notifyChildrenSelectionChange): We support accessibility
      ListBoxes and MenuLists only here, assuming they represent HTML
      select elements, which might be not always true (e.g. ARIA). Thus,
      check if that condition is true, early returning in other case.
      
      LayoutTests:
      
      New layout test to ensure we don't crash with ATK notifications
      anymore when changing the selection in an ARIA listbox.
      
      * platform/gtk/accessibility/aria-listbox-crash-expected.txt: Added.
      * platform/gtk/accessibility/aria-listbox-crash.html: Added.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127466 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      61d00bd3
    • commit-queue@webkit.org's avatar
      [Cairo] [TextureMapper] Assertion failure in TextureMapperGL · aa1bfb9c
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=95713
      
      Patch by Martin Robinson <mrobinson@igalia.com> on 2012-09-04
      Reviewed by Noam Rosenthal.
      
      Fix an assertion failure by returning a valid context always for GraphicsContext3D::platformContext.
      This is important because TextureMapperGL uses the platform context to perform hashing.
      
      No new tests. This is covered by existing accelerated compositing tests.
      
      * platform/graphics/cairo/GraphicsContext3DPrivate.cpp:
      (WebCore::GraphicsContext3DPrivate::platformContext): Return the current GLContext
      when getting the platform context for private GraphicsContext3DPrivates that render
      to the currently active context.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127465 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      aa1bfb9c