1. 07 May, 2010 40 commits
    • dumi@chromium.org's avatar
      Adding the IDL files for the sync DB API and the stubs for the JS and V8 bindings. · a97902ef
      dumi@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=34994
      
      Reviewed by Brady Eidson.
      
      * DerivedSources.cpp:
      * DerivedSources.make:
      * GNUmakefile.am:
      * WebCore.gypi:
      * WebCore.pri:
      * WebCore.pro:
      * WebCore.vcproj/WebCore.vcproj:
      * WebCore.xcodeproj/project.pbxproj:
      * bindings/js/JSBindingsAllInOne.cpp:
      * bindings/js/JSDatabaseSyncCustom.cpp: Added.
      (WebCore::JSDatabaseSync::changeVersion):
      (WebCore::createTransaction):
      (WebCore::JSDatabaseSync::transaction):
      (WebCore::JSDatabaseSync::readTransaction):
      * bindings/js/JSSQLTransactionSyncCustom.cpp: Added.
      (WebCore::JSSQLTransactionSync::executeSql):
      * bindings/js/JSWorkerContextCustom.cpp:
      (WebCore::JSWorkerContext::openDatabaseSync):
      * bindings/v8/custom/V8BindingMacros.h: Added.
      * bindings/v8/custom/V8DatabaseSyncCustom.cpp: Added.
      (WebCore::V8DatabaseSync::changeVersionCallback):
      (WebCore::createTransaction):
      (WebCore::V8DatabaseSync::transactionCallback):
      (WebCore::V8DatabaseSync::readTransactionCallback):
      * bindings/v8/custom/V8SQLTransactionSyncCustom.cpp: Added.
      (WebCore::V8SQLTransactionSync::executeSqlCallback):
      * bindings/v8/custom/V8WorkerContextCustom.cpp:
      (WebCore::V8WorkerContext::openDatabaseSyncCallback):
      * storage/Database.idl:
      * storage/DatabaseCallback.h:
      * storage/DatabaseCallback.idl:
      * storage/DatabaseSync.cpp:
      (WebCore::DatabaseSync::changeVersion):
      (WebCore::DatabaseSync::transaction):
      * storage/DatabaseSync.h:
      * storage/DatabaseSync.idl: Added.
      * storage/SQLError.idl:
      * storage/SQLResultSet.idl:
      * storage/SQLResultSetRowList.idl:
      * storage/SQLTransaction.idl:
      * storage/SQLTransactionSync.idl: Added.
      * storage/SQLTransactionSyncCallback.h:
      * storage/SQLTransactionSyncCallback.idl: Added.
      * workers/WorkerContext.cpp:
      (WebCore::WorkerContext::openDatabaseSync):
      * workers/WorkerContext.h:
      * workers/WorkerContext.idl:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@58989 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      a97902ef
    • oliver@apple.com's avatar
      Windows build fix · cf710747
      oliver@apple.com authored
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@58988 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      cf710747
    • oliver@apple.com's avatar
      Windows build fix. · a02b0a44
      oliver@apple.com authored
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@58987 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      a02b0a44
    • oliver@apple.com's avatar
      2010-05-07 Oliver Hunt <oliver@apple.com> · e9af1242
      oliver@apple.com authored
              Reviewed by Geoffrey Garen.
      
              Optimize access to the global object from a function that uses eval
              https://bugs.webkit.org/show_bug.cgi?id=38644
      
              Add op_resolve_global_dynamic, a variant of op_resolve_global that
              checks each node in the scope chain for dynamically inserted properties
              and falls back to the normal resolve logic in that case.
      
              * JavaScriptCore.exp:
              * bytecode/CodeBlock.cpp:
              (JSC::isGlobalResolve):
              (JSC::CodeBlock::printStructures):
              (JSC::CodeBlock::dump):
              (JSC::CodeBlock::derefStructures):
              * bytecode/Opcode.h:
              * bytecompiler/BytecodeGenerator.cpp:
              (JSC::BytecodeGenerator::findScopedProperty):
                 Now take an additional reference parameter to used to indicate that
                 there were nodes that may gain dynamic properties
              (JSC::BytecodeGenerator::emitResolve):
              (JSC::BytecodeGenerator::emitResolveBase):
              (JSC::BytecodeGenerator::emitResolveWithBase):
                 deal with additional argument to findScopedProperty
              * bytecompiler/BytecodeGenerator.h:
              * bytecompiler/NodesCodegen.cpp:
              (JSC::FunctionCallResolveNode::emitBytecode):
              (JSC::PostfixResolveNode::emitBytecode):
              (JSC::PrefixResolveNode::emitBytecode):
              (JSC::ReadModifyResolveNode::emitBytecode):
              (JSC::AssignResolveNode::emitBytecode):
                 These functions use findScopedProperty directly in order to
                 optimise lookup.  They cannot trivially handle any degree of
                 dynamism in the lookup so we just give up in such case.
              * interpreter/Interpreter.cpp:
              (JSC::Interpreter::resolveGlobalDynamic):
              (JSC::Interpreter::execute):
              (JSC::Interpreter::privateExecute):
              * interpreter/Interpreter.h:
              * jit/JIT.cpp:
              (JSC::JIT::privateCompileMainPass):
              (JSC::JIT::privateCompileSlowCases):
              * jit/JIT.h:
              * jit/JITOpcodes.cpp:
              (JSC::JIT::emit_op_resolve_global):
              (JSC::JIT::emit_op_resolve_global_dynamic):
              (JSC::JIT::emitSlow_op_resolve_global):
              (JSC::JIT::emitSlow_op_resolve_global_dynamic):
                 Happily resolve_global_dynamic can share the slow case!
              * jit/JITStubs.h:
              (JSC::):
              * runtime/JSActivation.cpp:
              (JSC::JSActivation::isDynamicScope):
              * runtime/JSActivation.h:
              * runtime/JSGlobalObject.cpp:
              (JSC::JSGlobalObject::isDynamicScope):
              * runtime/JSGlobalObject.h:
              * runtime/JSStaticScopeObject.cpp:
              (JSC::JSStaticScopeObject::isDynamicScope):
              * runtime/JSStaticScopeObject.h:
              * runtime/JSVariableObject.h:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@58986 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      e9af1242
    • darin@chromium.org's avatar
      2010-05-07 Darin Fisher <darin@chromium.org> · 880780a6
      darin@chromium.org authored
              Fix build bustage.  Update to Chromium code that avoids a bad
              dependency from net/ on chrome/.
      
              * DEPS:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@58985 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      880780a6
    • dpranke@chromium.org's avatar
      2010-05-06 Dirk Pranke <dpranke@chromium.org> · 6a69cb9b
      dpranke@chromium.org authored
              Reviewed by Alexey Proskuryakov.
      
              Rewrite test to fail faster if the inner frame doesn't load at all
              for some reason (previous version would raise a TypeError before
              the timeout was set).
      
              https://bugs.webkit.org/show_bug.cgi?id=38705
      
              * http/tests/security/sandbox-inherit-to-initial-document-2.html:
              * platform/chromium/test_expectations.txt:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@58984 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      6a69cb9b
    • bdakin@apple.com's avatar
      Fix for <rdar://problem/7956972> REGRESSION: Can't focus and type · c5c9aafc
      bdakin@apple.com authored
      in GMail due to bad repainting
      -and corresponding-
      https://bugs.webkit.org/show_bug.cgi?id=38782
      
      Reviewed by Simon Fraser.
      
      This patch reverts back to pre-r58797 behavior when 
      shouldPropagateCompositingToIFrameParent() is false.
      * rendering/RenderLayerBacking.cpp:
      (WebCore::RenderLayerBacking::paintingGoesToWindow):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@58983 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c5c9aafc
    • andersca@apple.com's avatar
      <rdar://problem/7947356> · 865acb56
      andersca@apple.com authored
      QT Plug-in in hardware-accelerated WebKit is missing the controller
      
      Reviewed by Sam Weinig and Simon Fraser.
      
      Replace the useSoftwareRenderer boolean with an enum that lets the plug-in host opt into using a layer
      backed NSView instead of inserting the layer into the WebCore layer hierarchy.
      
      * Plugins/Hosted/NetscapePluginHostManager.mm:
      (WebKit::NetscapePluginHostManager::instantiatePlugin):
      * Plugins/Hosted/NetscapePluginHostProxy.mm:
      (WKPCInstantiatePluginReply):
      * Plugins/Hosted/NetscapePluginInstanceProxy.h:
      (WebKit::NetscapePluginInstanceProxy::rendererType):
      (WebKit::NetscapePluginInstanceProxy::setRendererType):
      (WebKit::NetscapePluginInstanceProxy::InstantiatePluginReply::InstantiatePluginReply):
      * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
      (WebKit::NetscapePluginInstanceProxy::NetscapePluginInstanceProxy):
      Replace the useSoftwareRenderer boolean everywhere with the RendererType enum.
              
      * Plugins/Hosted/WebHostedNetscapePluginView.mm:
      (-[WebHostedNetscapePluginView createPlugin]):
      Only go into full compositing mode when the renderer type returned is UseAcceleratedCompositing.
      Otherwise, use a layer backed NSView.
      
      * Plugins/Hosted/WebKitPluginHostTypes.h:
      Add a RendererType enum.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@58982 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      865acb56
    • darin@chromium.org's avatar
      2010-05-07 Darin Fisher <darin@chromium.org> · cce6eac6
      darin@chromium.org authored
              Fix build bustage.  Update to Chromium code that no longer uses
              deprecated methods.
      
              * DEPS:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@58981 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      cce6eac6
    • darin@chromium.org's avatar
      2010-05-07 Darin Fisher <darin@chromium.org> · 760d2da8
      darin@chromium.org authored
              Fix build bustage: toElement<T> should be to<T>.
      
              * DumpRenderTree/chromium/LayoutTestController.cpp:
              (LayoutTestController::elementDoesAutoCompleteForElementWithId):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@58975 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      760d2da8
    • ggaren@apple.com's avatar
      Fixed Sputnik failure seen on buildbot. · 5dca39c5
      ggaren@apple.com authored
      Reviewed by Gavin Barraclough.
      
      * runtime/NumberPrototype.cpp:
      (JSC::numberProtoFuncToString): Cast to unsigned before checking magnitude,
      to efficiently exclude negative numbers, which require two characters
      instead of one.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@58974 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      5dca39c5
    • johnnyg@google.com's avatar
      2010-05-07 Sheriff Bot <webkit.review.bot@gmail.com> · c5d731de
      johnnyg@google.com authored
              Unreviewed, rolling out r58963.
              http://trac.webkit.org/changeset/58963
              https://bugs.webkit.org/show_bug.cgi?id=38773
      
              Broke Chromium layout tests. (Requested by dcheng on #webkit).
      
              * platform/chromium/DragDataChromium.cpp:
              (WebCore::DragData::asURL):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@58973 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c5d731de
    • johnnyg@google.com's avatar
      2010-05-07 John Gregg <johnnyg@google.com> · 39a1cdad
      johnnyg@google.com authored
              Unreviewed [re-]baseline of chromium tests.
      
              * platform/chromium-linux/fast/frames/take-focus-from-iframe-expected.checksum: Added.
              * platform/chromium-linux/fast/frames/take-focus-from-iframe-expected.png: Added.
              * platform/chromium-mac/fast/frames/take-focus-from-iframe-expected.checksum: Added.
              * platform/chromium-win/fast/frames/take-focus-from-iframe-expected.checksum: Added.
              * platform/chromium-win/fast/frames/take-focus-from-iframe-expected.png: Added.
              * platform/chromium-win/fast/frames/take-focus-from-iframe-expected.txt: Added.
              * platform/chromium-win/svg/hixie/error/017-expected.txt:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@58972 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      39a1cdad
    • mrobinson@webkit.org's avatar
      2010-05-07 Martin Robinson <mrobinson@igalia.com> · f3b4a224
      mrobinson@webkit.org authored
              Reviewed by Gustavo Noronha Silva.
      
              Adjust the position of the comment on the WOFF test and
              link to the bug report. This should fix a spurious error
              while running layout tests.
      
              * platform/gtk/Skipped:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@58971 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      f3b4a224
    • ggaren@apple.com's avatar
      Slightly more effective way to guarantee a compile-time constant, at · a5aee2d3
      ggaren@apple.com authored
      least on gcc.
      
      Reviewed by Alexey Proskuryakov.
      
      * runtime/NumberPrototype.cpp:
      (JSC::numberProtoFuncToString): Use pointer notation instead of array
      notation, so the compiler treats the string and its contents as constant.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@58970 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      a5aee2d3
    • krit@webkit.org's avatar
      2010-05-07 Dirk Schulze <krit@webkit.org> · 4e2032a2
      krit@webkit.org authored
              Unreviewed fix of Windows test.
      
              Windows need an platform dependent DRT result for clip-path-referencing-use2.svg,
              Win doesn't have console output during DRT.
      
              * platform/win/svg/custom/clip-path-referencing-use2-expected.txt: Added.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@58969 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      4e2032a2
    • mrobinson@webkit.org's avatar
      2010-05-07 Martin Robinson <mrobinson@igalia.com> · a2e92b53
      mrobinson@webkit.org authored
              Reviewed by Gustavo Noronha Silva.
      
              https://bugs.webkit.org/show_bug.cgi?id=38769
              ClipboardGtk should write the URL label in the text portion of the DataObject
      
              No tests as this code path is currently unused in the GTK+ port.
      
              * platform/gtk/ClipboardGtk.cpp:
              (WebCore::ClipboardGtk::writeURL): Write the label to the text portion of the DataObject, instead of the URL.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@58968 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      a2e92b53
    • darin@chromium.org's avatar
      2010-05-07 Darin Fisher <darin@chromium.org> · acc468e0
      darin@chromium.org authored
              Reviewed by Dimitri Glazkov.
      
              [chromium] clear out more deprecated methods that are no longer used
              https://bugs.webkit.org/show_bug.cgi?id=38702
      
              * public/WebFrame.h:
              * public/WebNode.h:
              * src/WebFrameImpl.cpp:
              * src/WebFrameImpl.h:
              * src/WebNode.cpp:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@58967 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      acc468e0
    • abarth@webkit.org's avatar
      2010-05-07 Adam Barth <abarth@webkit.org> · cb87378e
      abarth@webkit.org authored
              Reviewed by Alexey Proskuryakov.
      
              [WTFURL] Add core URL parser
              https://bugs.webkit.org/show_bug.cgi?id=38572
      
              This patch adds the core of the URL parser.  The URL parser uses a
              templated notion of a code unit to support different string types.
              Later we'll add some non-templated APIs with concrete types that
              clients can use more conveniently.
      
              The URLParser has a couple calls to ASSERT(), which I've commented out
              for now.  I'm not 100% sure how to handle the dependency issues there
              yet, so I've punted on the issue for now.
      
              Also, there are a number of methods that are declared public in this
              patch that are only used by the canonicalizer.  My plan is to make
              those private or protected and make the canonicalizer a friend of the
              parser.  The details will be in a later patch.
      
              * wtf/url/src/URLComponent.h:
              (WTF::URLComponent::fromRange):
              (WTF::URLComponent::isNonEmpty):
              (WTF::URLComponent::isEmptyOrInvalid):
              * wtf/url/src/URLParser.h: Added.
              (WTF::URLParser::):
              (WTF::URLParser::isPossibleAuthorityTerminator):
              (WTF::URLParser::parseAuthority):
              (WTF::URLParser::extractScheme):
              (WTF::URLParser::parseAfterScheme):
              (WTF::URLParser::parseStandardURL):
              (WTF::URLParser::parsePath):
              (WTF::URLParser::parsePathURL):
              (WTF::URLParser::parseMailtoURL):
              (WTF::URLParser::parsePort):
              (WTF::URLParser::extractFileName):
              (WTF::URLParser::extractQueryKeyValue):
              (WTF::URLParser::isURLSlash):
              (WTF::URLParser::shouldTrimFromURL):
              (WTF::URLParser::trimURL):
              (WTF::URLParser::consecutiveSlashes):
              (WTF::URLParser::isPortDigit):
              (WTF::URLParser::nextAuthorityTerminator):
              (WTF::URLParser::parseUserInfo):
              (WTF::URLParser::parseServerInfo):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@58966 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      cb87378e
    • zimmermann@webkit.org's avatar
      2010-05-07 Nikolas Zimmermann <nzimmermann@rim.com> · 1cd96d72
      zimmermann@webkit.org authored
              Reviewed by Dirk Schulze.
      
              RenderSVGResourceClipper assigns a temporary mutated RenderStyle but does not correctly preserve the old style
              https://bugs.webkit.org/show_bug.cgi?id=38767
      
              Fix small logic error leading to a problem in RenderSVGResourceClipper. It assigns a new temporary RenderStyle
              to the target object, but fails to reset it correctly to the old style. Fixes all svg/clip-path errors on the windows bots.
      
              * rendering/RenderSVGResourceClipper.cpp:
              (WebCore::RenderSVGResourceClipper::createClipData):
      2010-05-07  Nikolas Zimmermann  <nzimmermann@rim.com>
      
              Reviewed by Dirk Schulze.
      
              RenderSVGResourceClipper assigns a temporary mutated RenderStyle but does not correctly preserve the old style
              https://bugs.webkit.org/show_bug.cgi?id=38767
      
              Update baseline after fixing a logic error in RenderSVGResourceClipper.
      
              * platform/mac/svg/clip-path/clip-path-child-clipped-expected.txt:
              * platform/mac/svg/clip-path/clip-path-childs-clipped-expected.txt:
              * platform/mac/svg/clip-path/clip-path-clipped-expected.txt:
              * platform/mac/svg/clip-path/clip-path-evenodd-expected.txt:
              * platform/mac/svg/clip-path/clip-path-evenodd-nonzero-expected.txt:
              * platform/mac/svg/clip-path/clip-path-nonzero-evenodd-expected.txt:
              * platform/mac/svg/clip-path/clip-path-text-and-shape-expected.txt:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@58965 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      1cd96d72
    • ggaren@apple.com's avatar
      Added a fast path for number-to-character conversion via · 8e63746c
      ggaren@apple.com authored
      Number.prototype.toString base 36.
              
      Reviewed by Oliver Hunt.
      
      0.7% speedup on SunSpider.
      
      * runtime/NumberPrototype.cpp:
      (JSC::numberProtoFuncToString): Made radix interpretation a little more
      efficient by keeping it in int space. Turned "const char" into
      "static const char" just in case. Added a fast path for base 36
      conversion of something that will turn into a character.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@58964 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      8e63746c
    • jianli@chromium.org's avatar
      Add a few more files with Windows linefeeds to the .gitattributes file. · 23ae971b
      jianli@chromium.org authored
      Patch by Simon Hausmann <simon.hausmann@nokia.com> on 2010-05-07
      * .gitattributes:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@58963 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      23ae971b
    • simon.fraser@apple.com's avatar
      2010-05-07 Simon Fraser <simon.fraser@apple.com> · 61cd24bd
      simon.fraser@apple.com authored
              Reviewed by Dan Bernstein.
      
              Fix debug-only render tree output to show object addresses in hex.
      
              * rendering/RenderTreeAsText.cpp:
              (WebCore::writeRenderObject):
              (WebCore::write):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@58962 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      61cd24bd
    • ap@apple.com's avatar
      Reviewed by Adele Peterson. · e13f19fc
      ap@apple.com authored
              https://bugs.webkit.org/show_bug.cgi?id=38546
              Node.focus() fails to move focus from subframe properly
      
              Test: fast/frames/take-focus-from-iframe.html
      
              * html/HTMLFrameElementBase.cpp: (WebCore::HTMLFrameElementBase::setFocus): Don't clear
              focus if this frame doesn't have it. This can happen if page's and HTMLFrameElement's ideas
              of focused frame get out of sync temporarily.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@58961 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      e13f19fc
    • zimmermann@webkit.org's avatar
      2010-05-07 Nikolas Zimmermann <nzimmermann@rim.com> · 2de2ca36
      zimmermann@webkit.org authored
              Reviewed by Dirk Schulze.
      
              svg/custom/use-instanceRoot-as-event-target.xhtml crashes randomly
              https://bugs.webkit.org/show_bug.cgi?id=37798
      
              When creating JSEventListeners through attributes (onclick, etc..) or add/removeEventListener
              calls on a SVGElementInstance, do NOT pass the element instance itself as JS wrapper object
              but the correspondingElement(). SVGElementInstance redirects all event listener registrations
              to the correspondingElement(), as they share an event listener list, per SVG spec. The old
              code was very dangerous, leading to random assertions, when garbage collection teared down
              the JSSVGElementInstance and event listeners fired, whose listeners were registered with
              it, but residing in the correspondingElement() event listener list.
      
              Removes the need for CustomToJS code for JSSVGElementInstance, which was wrong anyways. We hoped
              to keep the event listeers alive by just creating a js wrapper of the correspondingElement(), that
              could only work as long as garbage collection didn't tear it down, just luck. Also remove the
              CustomPushEventHandlerScope marker, as it is only used for JSLazyEventListeners and only works
              for JSNode derived objects, it was a no-op for SVGElementInstance, thus removed it.
      
              Should fix all random crashes/assertions seen with svg/custom/use-instanceRoot-as-event-target.xhtml
              See bug report for a detailed crash analysis.
      
              * bindings/js/JSSVGElementInstanceCustom.cpp: Remove custom toJS()/pushEventHandlerScope() handling, not necessary anymore.
              (WebCore::JSSVGElementInstance::markChildren):
              * bindings/scripts/CodeGeneratorJS.pm: For JSSVGElementInstance pass the correspondingElement() as JS wrapper object, not itself.
              * svg/SVGElementInstance.cpp:
              (WebCore::SVGElementInstance::invalidateAllInstancesOfElement): Be sure to trigger a style update here, so dirty shadow trees for <use> get rebuild. Otherwhise DOM may be out-of-sync.
              (WebCore::SVGElementInstance::eventTargetData): Add ASSERT_NOT_REACHED(), all event listener calls are forwarded to the correspondingElement().
              (WebCore::SVGElementInstance::ensureEventTargetData): Ditto.
              * svg/SVGElementInstance.idl: Remove CustomToJS, CustomPushEventHandlerScope markers.
      2010-05-07  Nikolas Zimmermann  <nzimmermann@rim.com>
      
              Reviewed by Dirk Schulze.
      
              svg/custom/use-instanceRoot-as-event-target.xhtml crashes randomly
              https://bugs.webkit.org/show_bug.cgi?id=37798
      
              Make use-instanceRoot-as-event-target.xhtml behave more correctly. Due a copy & paste problem test #7 was not executed. Fixed.
              Make destruction more reliable, by using the standard js-test-post.js injection through <script> before calling notifyDone(), and "TEST COMPLETE" magically appears.
      
              * platform/mac/svg/hixie/error/017-expected.txt: Update result, now that invalidateAllInstancesOfElement(), correctly triggers <use> shadow tree rebuilds.
              * svg/custom/use-instanceRoot-as-event-target-expected.txt: Update result, was missing a "TEST COMPLETE" marker, and Test #7 was not executed before.
              * svg/custom/use-instanceRoot-as-event-target.xhtml: Fix typo, test #7 is now executed, it also had a bug which has been corrected. 
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@58960 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      2de2ca36
    • eric@webkit.org's avatar
      2010-05-07 Adam Barth <abarth@webkit.org> · 0d9d8c94
      eric@webkit.org authored
              Reviewed by Darin Fisher.
      
              [WTFURL] Add a malloc-backed URLBuffer
              https://bugs.webkit.org/show_bug.cgi?id=38694
      
              This patch adds a URLBuffer that uses new/delete to manage the backing
              store for the buffer.
      
              * wtf/url/src/RawURLBuffer.h: Added.
              (WTF::RawURLBuffer::RawURLBuffer):
              (WTF::RawURLBuffer::~RawURLBuffer):
              (WTF::RawURLBuffer::resize):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@58959 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      0d9d8c94
    • eric@webkit.org's avatar
      2010-05-07 Finnur Thorarinsson <finnur.webkit@gmail.com> · 5df5e1e8
      eric@webkit.org authored
              Reviewed by Dimitri Glazkov.
      
              [chromium]: Fixing Find in page crash on sites.google.com
              https://bugs.webkit.org/show_bug.cgi?id=38591
      
              setMarkerActive should not try to set a collapsed marker as
              active. This can happen when you Edit a Sites page after doing
              a Find operation and then you press FindNext.
      
              * src/WebFrameImpl.cpp:
              (WebKit::WebFrameImpl::setMarkerActive):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@58958 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      5df5e1e8
    • kbr@google.com's avatar
      2010-05-06 Kenneth Russell <kbr@google.com> · 79af5734
      kbr@google.com authored
              Reviewed by Dimitri Glazkov.
      
              WebCore::WebGLUnsignedIntArrayInternal::getCallback ReadAV@Arbitrary (deef89ee3d0345edebeaf13cf974c47c)
              https://bugs.webkit.org/show_bug.cgi?id=38039
      
              Web IDL now allows indexed getters and setters to be unnamed. Per
              discussion in WebGL working group and recent update to spec,
              removed the buggy get() and single-element set() methods from the
              JavaScript bindings to the WebGL array types. Refactored set()
              implementation in JSC bindings to share more code and modified V8
              binding to look more like it. Added unit tests for indexed getter
              with out-of-range indices and verifying removal of get and
              single-element set methods. Updated existing WebGL array tests.
      
              Tests: fast/canvas/webgl/array-get-and-set-method-removal.html
                     fast/canvas/webgl/array-get-out-of-bounds.html
      
              * bindings/js/JSWebGLArrayHelper.h:
              (WebCore::setWebGLArrayHelper):
              * bindings/js/JSWebGLByteArrayCustom.cpp:
              (WebCore::JSWebGLByteArray::set):
              * bindings/js/JSWebGLFloatArrayCustom.cpp:
              (WebCore::JSWebGLFloatArray::set):
              * bindings/js/JSWebGLIntArrayCustom.cpp:
              (WebCore::JSWebGLIntArray::set):
              * bindings/js/JSWebGLShortArrayCustom.cpp:
              (WebCore::JSWebGLShortArray::set):
              * bindings/js/JSWebGLUnsignedByteArrayCustom.cpp:
              (WebCore::JSWebGLUnsignedByteArray::set):
              * bindings/js/JSWebGLUnsignedIntArrayCustom.cpp:
              (WebCore::JSWebGLUnsignedIntArray::set):
              * bindings/js/JSWebGLUnsignedShortArrayCustom.cpp:
              (WebCore::JSWebGLUnsignedShortArray::set):
              * bindings/v8/custom/V8WebGLArrayCustom.h:
              (WebCore::setWebGLArrayHelper):
              * bindings/v8/custom/V8WebGLByteArrayCustom.cpp:
              (WebCore::V8WebGLByteArray::setCallback):
              * bindings/v8/custom/V8WebGLFloatArrayCustom.cpp:
              (WebCore::V8WebGLFloatArray::setCallback):
              * bindings/v8/custom/V8WebGLIntArrayCustom.cpp:
              (WebCore::V8WebGLIntArray::setCallback):
              * bindings/v8/custom/V8WebGLShortArrayCustom.cpp:
              (WebCore::V8WebGLShortArray::setCallback):
              * bindings/v8/custom/V8WebGLUnsignedByteArrayCustom.cpp:
              (WebCore::V8WebGLUnsignedByteArray::setCallback):
              * bindings/v8/custom/V8WebGLUnsignedIntArrayCustom.cpp:
              (WebCore::V8WebGLUnsignedIntArray::setCallback):
              * bindings/v8/custom/V8WebGLUnsignedShortArrayCustom.cpp:
              (WebCore::V8WebGLUnsignedShortArray::setCallback):
              * html/canvas/WebGLByteArray.h:
              * html/canvas/WebGLByteArray.idl:
              * html/canvas/WebGLFloatArray.h:
              * html/canvas/WebGLFloatArray.idl:
              * html/canvas/WebGLIntArray.h:
              * html/canvas/WebGLIntArray.idl:
              * html/canvas/WebGLShortArray.h:
              * html/canvas/WebGLShortArray.idl:
              * html/canvas/WebGLUnsignedByteArray.h:
              * html/canvas/WebGLUnsignedByteArray.idl:
              * html/canvas/WebGLUnsignedIntArray.h:
              * html/canvas/WebGLUnsignedIntArray.idl:
              * html/canvas/WebGLUnsignedShortArray.h:
              * html/canvas/WebGLUnsignedShortArray.idl:
      2010-05-06  Kenneth Russell  <kbr@google.com>
      
              Reviewed by Dimitri Glazkov.
      
              WebCore::WebGLUnsignedIntArrayInternal::getCallback ReadAV@Arbitrary (deef89ee3d0345edebeaf13cf974c47c)
              https://bugs.webkit.org/show_bug.cgi?id=38039
      
              Web IDL now allows indexed getters and setters to be unnamed. Per
              discussion in WebGL working group and recent update to spec,
              removed the buggy get() and single-element set() methods from the
              JavaScript bindings to the WebGL array types. Refactored set()
              implementation in JSC bindings to share more code and modified V8
              binding to look more like it. Added unit tests for indexed getter
              with out-of-range indices and verifying removal of get and
              single-element set methods. Updated existing WebGL array tests.
      
              * fast/canvas/webgl/array-get-and-set-method-removal-expected.txt: Added.
              * fast/canvas/webgl/array-get-and-set-method-removal.html: Added.
              * fast/canvas/webgl/array-get-out-of-bounds-expected.txt: Added.
              * fast/canvas/webgl/array-get-out-of-bounds.html: Added.
              * fast/canvas/webgl/array-setters-expected.txt:
              * fast/canvas/webgl/array-setters.html:
              * fast/canvas/webgl/array-unit-tests-expected.txt:
              * fast/canvas/webgl/array-unit-tests.html:
              * fast/canvas/webgl/bug-32456-expected.txt:
              * fast/canvas/webgl/bug-32456.html:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@58957 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      79af5734
    • pfeldman@chromium.org's avatar
      2010-05-07 Pavel Feldman <pfeldman@chromium.org> · 9c2c937f
      pfeldman@chromium.org authored
              Not reviewed: chromium dev tools tests fix.
              Add a more strict check prior to accessing constructor property in
              Web Inspector frontend.
      
              * inspector/front-end/InjectedScript.js:
              (injectedScriptConstructor):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@58956 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      9c2c937f
    • johnnyg@google.com's avatar
      2010-05-07 John Gregg <johnnyg@google.com> · f445e686
      johnnyg@google.com authored
              Unreviewed, rebaseline for chromium. 
      
              * platform/chromium-mac/fast/layers/video-layer-expected.checksum:
              * platform/chromium-mac/fast/layers/video-layer-expected.png:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@58955 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      f445e686
    • pfeldman@chromium.org's avatar
      2010-05-07 Pavel Feldman <pfeldman@chromium.org> · 657bfdd0
      pfeldman@chromium.org authored
              Reviewed by Joseph Pecoraro.
      
              Web Inspector: On Linux/Windows panel history is
              traversed while iterating over words in text prompt.
      
              https://bugs.webkit.org/show_bug.cgi?id=38740
      
              * inspector/front-end/TextPrompt.js:
              (WebInspector.TextPrompt):
              * inspector/front-end/inspector.js:
              (WebInspector.documentKeyDown):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@58954 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      657bfdd0
    • pfeldman@chromium.org's avatar
      2010-05-07 Pavel Feldman <pfeldman@chromium.org> · f774b43b
      pfeldman@chromium.org authored
              Reviewed by Timothy Hatcher.
      
              Web Inspector: come up with InjectedScript._className that works for both JSC and V8.
      
              https://bugs.webkit.org/show_bug.cgi?id=38755
      
              * inspector/front-end/InjectedScript.js:
              (injectedScriptConstructor):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@58953 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      f774b43b
    • johnnyg@google.com's avatar
      2010-05-07 John Gregg <johnnyg@google.com> · 6736f79b
      johnnyg@google.com authored
              Unreviewed, rebaseline for chromium.
      
              * platform/chromium-mac/media/audio-controls-rendering-expected.checksum:
              * platform/chromium-mac/media/audio-controls-rendering-expected.png:
              * platform/chromium-mac/media/controls-after-reload-expected.checksum:
              * platform/chromium-mac/media/controls-after-reload-expected.png:
              * platform/chromium-mac/media/controls-strict-expected.checksum:
              * platform/chromium-mac/media/controls-strict-expected.png:
              * platform/chromium-mac/media/video-controls-rendering-expected.checksum:
              * platform/chromium-mac/media/video-controls-rendering-expected.png:
              * platform/chromium-mac/media/video-display-toggle-expected.checksum:
              * platform/chromium-mac/media/video-display-toggle-expected.png:
              * platform/chromium-mac/media/video-empty-source-expected.checksum:
              * platform/chromium-mac/media/video-empty-source-expected.png:
              * platform/chromium-mac/media/video-no-audio-expected.checksum:
              * platform/chromium-mac/media/video-no-audio-expected.png:
              * platform/chromium-mac/media/video-volume-slider-expected.checksum:
              * platform/chromium-mac/media/video-volume-slider-expected.png:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@58952 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      6736f79b
    • cjerdonek@webkit.org's avatar
      Refactored VCSUtils.pm's parse-related methods to leave inapplicable · 3fead96a
      cjerdonek@webkit.org authored
      hash values unset instead of setting them to "undef".
      
      Reviewed by Daniel Bates.
      
      https://bugs.webkit.org/show_bug.cgi?id=38724
      
      Preferring "not set" over "undef" keeps the unit tests smaller and
      easier to maintain.  Otherwise, we would have to update every unit
      test case each time we add support for a new key-value pair --
      instead of just the relevant ones.
      
      * Scripts/VCSUtils.pm:
        - In parseGitDiffHeader(), adjusted the handling of these key-values:
          executableBitDelta and isBinary.
        - In parseSvnDiffHeader(), adjusted the handling of these key-values:
          copiedFromPath, isBinary, and sourceRevision.
        - In parseDiffHeader(), adjusted the handling of these key-values:
          isGit and isSvn.
        - In parseDiff(), adjusted the handling of these key-values:
          isBinary, isGit, isSvn, and sourceRevision.
      
      * Scripts/webkitperl/VCSUtils_unittest/parseDiff.pl:
        - Updated the unit tests as necessary.
      
      * Scripts/webkitperl/VCSUtils_unittest/parseDiffHeader.pl:
        - Updated the unit tests as necessary.
      
      * Scripts/webkitperl/VCSUtils_unittest/parseGitDiffHeader.pl:
        - Updated the unit tests as necessary.
      
      * Scripts/webkitperl/VCSUtils_unittest/parseSvnDiffHeader.pl:
        - Updated the unit tests as necessary.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@58951 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      3fead96a
    • joepeck@webkit.org's avatar
      2010-05-07 Joseph Pecoraro <joepeck@webkit.org> · 77072c62
      joepeck@webkit.org authored
              Reviewed by Adam Barth.
      
              document.write is not synchronous after page load
              https://bugs.webkit.org/show_bug.cgi?id=38146
      
              If there are no pending scripts, a document.write call should be
              synchronous. This matches other browsers and the HTML5 spec. Forcing
              the tokenizer to be synchronous in Document::write does not affect
              external scripts written by the write call. This should only change
              behavior of document.write after the page is done loading.
      
              Difficult to test reliably due to HTMLTokenizing relying on processing time.
              I made a manual test because the test requires processing very large strings
              synchronously and therefore can take some time.
      
              Test: WebCore/manual-tests/dom/document-write-synchronous-after-page-load.html
      
              * dom/Document.cpp:
              (WebCore::SynchronousHTMLTokenizerGuard::SynchronousHTMLTokenizerGuard): if the provided tokenizer is an HTMLTokenizer make it synchronous
              (WebCore::SynchronousHTMLTokenizerGuard::~SynchronousHTMLTokenizerGuard): if the provided tokenizer was an HTMLTokenizer return its synchronous state
              (WebCore::Document::write): temporarily set the tokenizer to synchronous during document.write
              * dom/Tokenizer.h:
              (WebCore::Tokenizer::asHTMLTokenizer): default implementation returns 0, to be overridden by HTMLTokenizer
              * html/HTMLTokenizer.h: allow access to to the force synchronous state
              (WebCore::HTMLTokenizer::forceSynchronous): accessor
              (WebCore::HTMLTokenizer::asHTMLTokenizer): override the default to return itself
              * manual-tests/dom/document-write-synchronous-after-page-load.html: Added.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@58950 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      77072c62
    • vestbo@webkit.org's avatar
      [Qt] Fix rendering of -webkit-user-select: none · 8eb445d8
      vestbo@webkit.org authored
      Reviewed by Simon Hausmann.
      
      -webkit-user-select: none is implemented by filling
      the area with an invalid default-constructed Color.
      In most ports passing an invalid color down to the
      graphics backend seems to produce transparent fills.
      
      In Qt the behavior of painting with an invalid QColor
      is undefined, and in practice it results in painting
      black opaque areas.
      
      One way to fix this would be to use Qt::transparent
      when converting an undefined Color to a QColor, but
      Qt does not have short circuits for fully transparent
      painting, and we actually end up in slow code paths
      due to the transparency. So, we're better of doing the
      short circuit in WebKit.
      
      https://bugs.webkit.org/show_bug.cgi?id=38523
      
      * platform/graphics/qt/GraphicsContextQt.cpp:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@58949 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      8eb445d8
    • eric@webkit.org's avatar
      2010-05-07 Ben Murdoch <benm@google.com> · b226f8ea
      eric@webkit.org authored
              Reviewed by Darin Adler.
      
              Potential crash in EventHandler::handleTouchEvent
              https://bugs.webkit.org/show_bug.cgi?id=38646
      
              Fix a ref counting bug that can cause a crash if the m_originatingouchPointTargets
              hashmap holds the last ref to an EventTarget when the user lifts their finger.
      
              This is very hard to reproduce in a consistent way and clearly a
              simple logic error in the code, therefore no new tests.
      
              * page/EventHandler.cpp:
              (WebCore::EventHandler::handleTouchEvent): Don't let the RefPtr we get back from
                  the hasmap go out of scope so soon as it could delete the wrapped ptr if the
                  hashmap held the last ref (and we use the raw ptr that the RefPtr
                  wraps later in the WebCore::Touch constructor).
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@58948 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      b226f8ea
    • hausmann@webkit.org's avatar
      Add a few more files with Windows linefeeds to the .gitattributes file. · a61080f3
      hausmann@webkit.org authored
      * .gitattributes:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@58947 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      a61080f3
    • kov@webkit.org's avatar
      2010-05-07 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk> · 2c4c9b7c
      kov@webkit.org authored
              Rubber-stamped by Kenneth Rohde Christiansen.
      
              [GTK] Fails to build on GTK+ < 2.14
              https://bugs.webkit.org/show_bug.cgi?id=38746
      
              Build fix only. Do basically the same as gtk_adjustment_configure
              would do if we are bellow GTK+ 2.14.
      
              * platform/gtk/ScrollViewGtk.cpp:
              (WebCore::AdjustmentConfigure):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@58946 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      2c4c9b7c
    • kov@webkit.org's avatar
      2010-05-07 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk> · 83ba649f
      kov@webkit.org authored
              Rubber-stamped by Xan Lopez.
      
              Crash with MgOpenModerna font, with non-UTF-8 character
              https://bugs.webkit.org/show_bug.cgi?id=37795
      
              NULL-check the font platform data, for now, to avoid the crash.
      
              Could not yet figure out a way to get a test written that does not
              involve adding the font to the tree, but there are doubts about
              licensing.
      
              * platform/graphics/cairo/FontCacheCairo.cpp:
              (WebCore::FontCache::getFontDataForCharacters):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@58945 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      83ba649f