1. 15 Jun, 2008 21 commits
    • mitz@apple.com's avatar
      WebCore: · 8291e207
      mitz@apple.com authored
              Reviewed by Darin Adler.
      
              - fix <rdar://problem/5825683> Three slash URLs are modified by WebKit
      
              Test: fast/loader/url-parse-1.html
      
              URIs in which the scheme is followed by "://" are ambiguous, because
              "//" can be either the beginning of a net_path or the beginning of an
              abs_path whose first path segment is empty. In the case of ":///", the
              net_path interpretation is invalid, because the authority (the part
              between the second and third slashes) cannot be empty. However, for
              historical reasons, this is allowed in http:, https: and file: URLs,
              in which an empty authority means the local host.
      
              * platform/KURL.cpp:
              (WebCore::KURL::parse): Changed to interpret URLs in which the scheme
              is followed by ":///" as abs_path-only URLs, unless the scheme is http,
              https or file.
      
      LayoutTests:
      
              Reviewed by Darin Adler.
      
              - test for <rdar://problem/5825683> Three slash URLs are modified by WebKit
      
              * fast/loader/url-parse-1-expected.txt: Added.
              * fast/loader/url-parse-1.html: Added.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@34579 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      8291e207
    • darin@apple.com's avatar
      JavaScriptCore: · 980c614d
      darin@apple.com authored
      2008-06-15  Darin Adler  <darin@apple.com>
      
              Rubber stamped by Sam.
      
              - use JS prefix and simpler names for basic JavaScriptCore types,
                to complement JSValue and JSObject
      
              * JavaScriptCore.exp:
              * VM/Machine.cpp:
              (KJS::jsLess):
              (KJS::jsLessEq):
              (KJS::jsAdd):
              (KJS::callEval):
              (KJS::Machine::execute):
              (KJS::Machine::retrieveArguments):
              (KJS::Machine::retrieveCaller):
              (KJS::Machine::getCallFrame):
              (KJS::Machine::getFunctionAndArguments):
              * VM/Machine.h:
              * VM/Register.h:
              * kjs/DebuggerCallFrame.cpp:
              (KJS::DebuggerCallFrame::functionName):
              * kjs/ExecState.h:
              * kjs/JSActivation.cpp:
              (KJS::JSActivation::createArgumentsObject):
              * kjs/array_instance.cpp:
              (KJS::):
              (KJS::JSArray::checkConsistency):
              (KJS::JSArray::JSArray):
              (KJS::JSArray::~JSArray):
              (KJS::JSArray::getItem):
              (KJS::JSArray::lengthGetter):
              (KJS::JSArray::inlineGetOwnPropertySlot):
              (KJS::JSArray::getOwnPropertySlot):
              (KJS::JSArray::put):
              (KJS::JSArray::deleteProperty):
              (KJS::JSArray::getPropertyNames):
              (KJS::JSArray::increaseVectorLength):
              (KJS::JSArray::setLength):
              (KJS::JSArray::mark):
              (KJS::JSArray::sort):
              (KJS::JSArray::compactForSorting):
              (KJS::JSArray::lazyCreationData):
              (KJS::JSArray::setLazyCreationData):
              * kjs/array_instance.h:
              * kjs/array_object.cpp:
              (KJS::):
              (KJS::ArrayPrototype::ArrayPrototype):
              (KJS::ArrayPrototype::getOwnPropertySlot):
              (KJS::arrayProtoFuncToString):
              (KJS::arrayProtoFuncToLocaleString):
              (KJS::arrayProtoFuncConcat):
              (KJS::arrayProtoFuncSort):
              (KJS::ArrayObjectImp::construct):
              * kjs/array_object.h:
              * kjs/completion.h:
              * kjs/function.cpp:
              (KJS::):
              (KJS::JSFunction::JSFunction):
              (KJS::JSFunction::mark):
              (KJS::JSFunction::getCallData):
              (KJS::JSFunction::callAsFunction):
              (KJS::JSFunction::argumentsGetter):
              (KJS::JSFunction::callerGetter):
              (KJS::JSFunction::lengthGetter):
              (KJS::JSFunction::getOwnPropertySlot):
              (KJS::JSFunction::put):
              (KJS::JSFunction::deleteProperty):
              (KJS::JSFunction::getParameterName):
              (KJS::JSFunction::getConstructData):
              (KJS::JSFunction::construct):
              (KJS::IndexToNameMap::IndexToNameMap):
              (KJS::Arguments::Arguments):
              * kjs/function.h:
              * kjs/function_object.cpp:
              (KJS::functionProtoFuncToString):
              (KJS::functionProtoFuncApply):
              (KJS::FunctionObjectImp::construct):
              * kjs/internal.cpp:
              (KJS::JSString::toPrimitive):
              (KJS::JSString::getPrimitiveNumber):
              (KJS::JSString::toBoolean):
              (KJS::JSString::toNumber):
              (KJS::JSString::toString):
              (KJS::StringInstance::create):
              (KJS::JSString::toObject):
              (KJS::JSString::toThisObject):
              (KJS::JSString::lengthGetter):
              (KJS::JSString::indexGetter):
              (KJS::JSString::indexNumericPropertyGetter):
              (KJS::JSString::getOwnPropertySlot):
              (KJS::JSNumberCell::type):
              (KJS::JSNumberCell::toPrimitive):
              (KJS::JSNumberCell::getPrimitiveNumber):
              (KJS::JSNumberCell::toBoolean):
              (KJS::JSNumberCell::toNumber):
              (KJS::JSNumberCell::toString):
              (KJS::JSNumberCell::toObject):
              (KJS::JSNumberCell::toThisObject):
              (KJS::JSNumberCell::getUInt32):
              (KJS::JSNumberCell::getTruncatedInt32):
              (KJS::JSNumberCell::getTruncatedUInt32):
              (KJS::GetterSetter::mark):
              (KJS::GetterSetter::toPrimitive):
              (KJS::GetterSetter::getPrimitiveNumber):
              (KJS::GetterSetter::toBoolean):
              (KJS::GetterSetter::toNumber):
              (KJS::GetterSetter::toString):
              (KJS::GetterSetter::toObject):
              (KJS::GetterSetter::getOwnPropertySlot):
              (KJS::GetterSetter::put):
              (KJS::GetterSetter::toThisObject):
              * kjs/internal.h:
              (KJS::JSString::JSString):
              (KJS::JSString::getStringPropertySlot):
              * kjs/nodes.cpp:
              (KJS::FuncDeclNode::makeFunction):
              (KJS::FuncExprNode::makeFunction):
              * kjs/nodes.h:
              * kjs/object.cpp:
              (KJS::JSObject::put):
              (KJS::JSObject::deleteProperty):
              (KJS::JSObject::defineGetter):
              (KJS::JSObject::defineSetter):
              (KJS::JSObject::lookupGetter):
              (KJS::JSObject::lookupSetter):
              (KJS::JSObject::fillGetterPropertySlot):
              * kjs/object.h:
              (KJS::):
              (KJS::GetterSetter::GetterSetter):
              * kjs/operations.cpp:
              (KJS::equal):
              (KJS::strictEqual):
              * kjs/property_map.cpp:
              (KJS::PropertyMap::containsGettersOrSetters):
              * kjs/regexp_object.cpp:
              (KJS::RegExpMatchesArray::getOwnPropertySlot):
              (KJS::RegExpMatchesArray::put):
              (KJS::RegExpMatchesArray::deleteProperty):
              (KJS::RegExpMatchesArray::getPropertyNames):
              (KJS::RegExpMatchesArray::RegExpMatchesArray):
              (KJS::RegExpMatchesArray::fillArrayInstance):
              * kjs/string_object.cpp:
              (KJS::StringInstance::StringInstance):
              (KJS::replace):
              (KJS::stringProtoFuncReplace):
              (KJS::stringProtoFuncToLowerCase):
              (KJS::stringProtoFuncToUpperCase):
              (KJS::stringProtoFuncToLocaleLowerCase):
              (KJS::stringProtoFuncToLocaleUpperCase):
              * kjs/string_object.h:
              (KJS::StringInstance::internalValue):
              * kjs/value.cpp:
              (KJS::JSCell::getNumber):
              (KJS::JSCell::getString):
              (KJS::JSCell::getObject):
              (KJS::jsString):
              (KJS::jsOwnedString):
              * kjs/value.h:
              (KJS::JSNumberCell::JSNumberCell):
              (KJS::jsNumberCell):
              (KJS::JSValue::uncheckedGetNumber):
              * profiler/Profiler.cpp:
              (KJS::createCallIdentifier):
              (KJS::createCallIdentifierFromFunctionImp):
      
      WebCore:
      
      2008-06-15  Darin Adler  <darin@apple.com>
      
              Rubber stamped by Sam.
      
              - use JS prefix and simpler names for basic JavaScriptCore types,
                to complement JSValue and JSObject
      
              * bindings/js/JSNavigatorCustom.cpp:
              (WebCore::needsYouTubeQuirk):
              * bindings/js/kjs_events.cpp:
              (WebCore::JSLazyEventListener::parseCode):
              * bridge/jni/jni_utility.cpp:
              (KJS::Bindings::convertArrayInstanceToJavaArray):
              (KJS::Bindings::convertValueToJValue):
              * bridge/qt/qt_runtime.cpp:
              (KJS::Bindings::valueRealType):
              (KJS::Bindings::convertValueToQVariant):
              (KJS::Bindings::QtConnectionObject::execute):
              * bridge/runtime_array.cpp:
      
      WebKit/mac:
      
      2008-06-15  Darin Adler  <darin@apple.com>
      
              Rubber stamped by Sam.
      
              - use JS prefix and simpler names for basic JavaScriptCore types,
                to complement JSValue and JSObject
      
              * WebView/WebView.mm:
              (aeDescFromJSValue):
      
      WebKit/win:
      
      2008-06-15  Darin Adler  <darin@apple.com>
      
              Rubber stamped by Sam.
      
              - use JS prefix and simpler names for basic JavaScriptCore types,
                to complement JSValue and JSObject
      
              * WebScriptCallFrame.cpp:
              (WebScriptCallFrame::functionName):
      
      WebKitTools:
      
      2008-06-15  Darin Adler  <darin@apple.com>
      
              * Scripts/do-webcore-rename: Updated for the latest round of renaming.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@34578 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      980c614d
    • alp@webkit.org's avatar
      Versioning. · 611be9e9
      alp@webkit.org authored
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@34577 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      611be9e9
    • mjs@apple.com's avatar
      2008-06-15 Maciej Stachowiak <mjs@apple.com> · 33b7578c
      mjs@apple.com authored
              Reviewed by Alexey.
              
              - add emitUnaryOp, emitNullaryOp and emitUnaryOpNoDst; use them
              
              This removes some boilerplate code and also reduces the number of
              places that will need to be changed to do on-demand emit of
              loads (and thus support k operands).
      
              * VM/CodeGenerator.cpp:
              (KJS::CodeGenerator::emitUnaryOp):
              (KJS::CodeGenerator::emitNullaryOp):
              (KJS::CodeGenerator::emitUnaryOpNoDst):
              (KJS::CodeGenerator::emitPushScope):
              * VM/CodeGenerator.h:
              (KJS::CodeGenerator::emitNewObject):
              (KJS::CodeGenerator::emitNewArray):
              (KJS::CodeGenerator::emitNot):
              (KJS::CodeGenerator::emitBitNot):
              (KJS::CodeGenerator::emitToJSNumber):
              (KJS::CodeGenerator::emitNegate):
              (KJS::CodeGenerator::emitInstanceOf):
              (KJS::CodeGenerator::emitTypeOf):
              (KJS::CodeGenerator::emitIn):
              (KJS::CodeGenerator::emitReturn):
              (KJS::CodeGenerator::emitEnd):
              (KJS::CodeGenerator::emitGetPropertyNames):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@34576 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      33b7578c
    • darin@apple.com's avatar
      2008-06-15 Darin Adler <darin@apple.com> · fb32d42d
      darin@apple.com authored
              Reviewed by Mitz.
      
              - fix https://bugs.webkit.org/show_bug.cgi?id=19556
                REGRESSION (r34544): Crash while visiting bigglook.com
      
              This fix eliminates the crash, but the logic remaining seems a little strange.
              We create an IconRecord and then immediately destroy it. Worth taking another
              look at this later.
      
              * loader/icon/IconDatabase.cpp:
              (WebCore::IconDatabase::setIconDataForIconURL): Added code to remove the icon
              just as in the other cases where we might be holding the single reference to it.
              (WebCore::IconDatabase::setIconURLForPageURL): Fixed comment typo.
              (WebCore::IconDatabase::writeToDatabase): Removed unused local variable.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@34575 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      fb32d42d
    • weinig@apple.com's avatar
      WebCore: · 3feb4c33
      weinig@apple.com authored
      2008-06-15  Darin Adler  <darin@apple.com>
      
              Reviewed and tweaked by Sam Weinig.
      
              Fix for <rdar://problem/5908591>
              https://bugs.webkit.org/show_bug.cgi?id=18743
      
              Makes DOMImplementation per-document.
      
              Test: http/tests/security/cross-frame-access-DOMImplementation.html
      
              * bindings/objc/DOMImplementationFront.cpp:
              (WebCore::DOMImplementationFront::getInterface):
              * bindings/objc/DOMImplementationFront.h:
              * dom/DOMImplementation.cpp:
              (WebCore::DOMImplementation::hasFeature):
              (WebCore::DOMImplementation::createDocumentType):
              (WebCore::DOMImplementation::getInterface):
              (WebCore::DOMImplementation::createDocument):
              (WebCore::DOMImplementation::createHTMLDocument):
              * dom/DOMImplementation.h:
              (WebCore::DOMImplementation::create):
              * dom/Document.cpp:
              (WebCore::Document::Document):
              (WebCore::Document::implementation):
              * dom/Document.h:
              (WebCore::Document::create):
              (WebCore::Document::createXHTML):
              * dom/DocumentType.cpp:
              * dom/DocumentType.h:
              (WebCore::DocumentType::create):
              (WebCore::DocumentType::entities):
              (WebCore::DocumentType::notations):
              (WebCore::DocumentType::name):
              (WebCore::DocumentType::publicId):
              (WebCore::DocumentType::systemId):
              (WebCore::DocumentType::internalSubset):
              * dom/Node.cpp:
              (WebCore::Node::isSupported):
              * dom/XMLTokenizer.cpp:
              (WebCore::XMLTokenizer::internalSubset):
              * html/HTMLDocument.cpp:
              (WebCore::HTMLDocument::HTMLDocument):
              * html/HTMLDocument.h:
              (WebCore::HTMLDocument::create):
              (WebCore::HTMLDocument::isHTMLDocument):
              * html/HTMLParser.cpp:
              (WebCore::HTMLParser::parseDoctypeToken):
              * html/HTMLViewSourceDocument.cpp:
              (WebCore::HTMLViewSourceDocument::HTMLViewSourceDocument):
              (WebCore::HTMLViewSourceDocument::createTokenizer):
              * html/HTMLViewSourceDocument.h:
              (WebCore::HTMLViewSourceDocument::create):
              * loader/CachedFont.cpp:
              (WebCore::CachedFont::ensureSVGFontData):
              * loader/FTPDirectoryDocument.cpp:
              (WebCore::FTPDirectoryDocument::FTPDirectoryDocument):
              * loader/FTPDirectoryDocument.h:
              (WebCore::FTPDirectoryDocument::create):
              * loader/FrameLoader.cpp:
              (WebCore::FrameLoader::begin):
              * loader/ImageDocument.cpp:
              (WebCore::ImageDocument::ImageDocument):
              * loader/ImageDocument.h:
              (WebCore::ImageDocument::create):
              (WebCore::ImageDocument::isImageDocument):
              * loader/PluginDocument.cpp:
              (WebCore::PluginDocument::PluginDocument):
              * loader/PluginDocument.h:
              (WebCore::PluginDocument::create):
              (WebCore::PluginDocument::isPluginDocument):
              * loader/TextDocument.cpp:
              (WebCore::TextTokenizer::checkBuffer):
              (WebCore::TextDocument::TextDocument):
              (WebCore::createTextTokenizer):
              * loader/TextDocument.h:
              (WebCore::TextDocument::create):
              * svg/SVGDocument.cpp:
              (WebCore::SVGDocument::SVGDocument):
              * svg/SVGDocument.h:
              (WebCore::SVGDocument::create):
              * svg/SVGElement.cpp:
              (WebCore::SVGElement::isSupported):
              * svg/SVGTests.cpp:
              (WebCore::SVGTests::isValid):
              * xml/DOMParser.cpp:
              (WebCore::DOMParser::parseFromString):
      
      LayoutTests:
      
      2008-06-15  Darin Adler  <darin@apple.com>
      
              Reviewed and tweaked by Sam Weinig.
      
              Test for <rdar://problem/5908591>
              https://bugs.webkit.org/show_bug.cgi?id=18743
      
              * http/tests/security/cross-frame-access-DOMImplementation-expected.txt: Added.
              * http/tests/security/cross-frame-access-DOMImplementation.html: Added.
              * http/tests/security/resources/cross-frame-iframe-for-DOMImplementation-test.html: Added.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@34574 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      3feb4c33
    • mitz@apple.com's avatar
      Rubber-stamped by Sam Weinig. · 193d4d68
      mitz@apple.com authored
              - copy generic test results from r34449 to platform/win, because the Mac
                behavior is not shared by Windows.
      
              * platform/win/editing/selection/drag-text-delay-expected.txt: Copied from LayoutTests/editing/selection/drag-text-delay-expected.txt.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@34573 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      193d4d68
    • mitz@apple.com's avatar
      - update Windows copy of generic test results for r34475 · 06bc7ec7
      mitz@apple.com authored
              * platform/win/editing/selection/move-left-right-expected.txt: Replaced with LayoutTests/editing/selection/move-left-right-expected.txt.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@34572 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      06bc7ec7
    • christian@webkit.org's avatar
      f0dedeae
    • christian@webkit.org's avatar
      Tiny documentation fix, s/capacity/limit · 9f65fde2
      christian@webkit.org authored
      Reviewed by Alp Toker.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@34570 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      9f65fde2
    • cwzwarich@webkit.org's avatar
      2008-06-15 Cameron Zwarich <cwzwarich@uwaterloo.ca> · dd447ed0
      cwzwarich@webkit.org authored
              Reviewed by Maciej.
      
              Mac build fix.
      
              * WebCore.base.exp:
              * WebCore.order:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@34569 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      dd447ed0
    • alp@webkit.org's avatar
      2008-06-15 Alp Toker <alp@nuanti.com> · 643f3eff
      alp@webkit.org authored
              Rubber-stamped by Maciej.
      
              Install 'jsc' application by default.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@34568 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      643f3eff
    • mjs@apple.com's avatar
      2008-06-15 Maciej Stachowiak <mjs@apple.com> · 1a2baf1f
      mjs@apple.com authored
              Rubber stamped by Oliver.
              
              - fix WebKit solution for testkjs --> jsc rename
      
              * WebKit.vcproj/WebKit.sln:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@34567 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      1a2baf1f
    • mjs@apple.com's avatar
      JavaScriptCore: · 13202588
      mjs@apple.com authored
      2008-06-15  Maciej Stachowiak  <mjs@apple.com>
      
              Reviewed by Oliver.
              
              - rename testkjs to jsc
      
              * GNUmakefile.am:
              * JavaScriptCore.vcproj/JavaScriptCore.sln:
              * JavaScriptCore.vcproj/jsc: Added.
              * JavaScriptCore.vcproj/jsc/jsc.vcproj: Copied from JavaScriptCore.vcproj/testkjs/testkjs.vcproj.
              * JavaScriptCore.vcproj/testkjs: Removed.
              * JavaScriptCore.vcproj/testkjs/testkjs.vcproj: Removed.
              * JavaScriptCore.xcodeproj/project.pbxproj:
              * jscore.bkl:
              * kjs/Shell.cpp: Copied from kjs/testkjs.cpp.
              (main):
              (printUsageStatement):
              (jscmain):
              * kjs/jsc.pro: Copied from kjs/testkjs.pro.
              * kjs/testkjs.cpp: Removed.
              * kjs/testkjs.pro: Removed.
              * tests/mozilla/expected.html:
              * tests/mozilla/js1_2/Array/tostring_1.js:
              * tests/mozilla/js1_2/Array/tostring_2.js:
              * tests/mozilla/jsDriver.pl:
      
      WebKitTools:
      
      2008-06-15  Maciej Stachowiak  <mjs@apple.com>
      
              Reviewed by Oliver.
              
              - rename testkjs to jsc
      
              * Scripts/build-jsc: Copied from Scripts/build-testkjs.
              * Scripts/build-testkjs: Removed.
              * Scripts/run-javascriptcore-tests:
              * Scripts/run-jsc: Copied from Scripts/run-testkjs.
              * Scripts/run-sunspider:
              * Scripts/run-testkjs: Removed.
              * Scripts/sunspider-compare-results:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@34566 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      13202588
    • cwzwarich@webkit.org's avatar
      2008-06-15 Cameron Zwarich <cwzwarich@uwaterloo.ca> · 0ce29fde
      cwzwarich@webkit.org authored
              Reviewed by Maciej.
      
              Mac build fix.
      
              * JavaScriptCore.xcodeproj/project.pbxproj:
              * kjs/nodes.h:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@34565 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      0ce29fde
    • cwzwarich@webkit.org's avatar
      2008-06-15 Cameron Zwarich <cwzwarich@uwaterloo.ca> · 7c15e709
      cwzwarich@webkit.org authored
              Reviewed by Maciej.
      
              Change the spelling of PrecMultiplicitave to PrecMultiplicative.
      
              * kjs/nodes.h:
              (KJS::):
              (KJS::MultNode::precedence):
              (KJS::DivNode::precedence):
              (KJS::ModNode::precedence):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@34564 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      7c15e709
    • cwzwarich@webkit.org's avatar
      2008-06-15 Cameron Zwarich <cwzwarich@uwaterloo.ca> · fc13377a
      cwzwarich@webkit.org authored
              Reviewed by Maciej.
      
              Remove unused preprocessor macros related to exceptions in the old
              interpreter.
      
              * kjs/nodes.cpp:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@34563 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      fc13377a
    • cwzwarich@webkit.org's avatar
      2008-06-15 Cameron Zwarich <cwzwarich@uwaterloo.ca> · 875318ae
      cwzwarich@webkit.org authored
              Reviewed by Maciej.
      
              Bug 19484: More instructions needs to use temporary registers
              <https://bugs.webkit.org/show_bug.cgi?id=19484>
      
              Fix codegen for all binary operations so that temporaries are used if
              necessary. This was done by making BinaryOpNode and ReverseBinaryOpNode
              subclasses of ExpressionNode, and eliminating the custom emitCode()
              methods for the individual node classes.
      
              This only adds 3 new instructions to SunSpider code, and there is no
              difference in SunSpider execution time.
      
              JavaScriptCore:
      
              * VM/CodeGenerator.cpp:
              (KJS::CodeGenerator::emitBitNot):
              (KJS::CodeGenerator::emitBinaryOp):
              * VM/CodeGenerator.h:
              * kjs/grammar.y:
              * kjs/nodes.cpp:
              (KJS::PreIncResolveNode::emitCode):
              (KJS::PreDecResolveNode::emitCode):
              (KJS::BinaryOpNode::emitCode):
              (KJS::ReverseBinaryOpNode::emitCode):
              (KJS::emitReadModifyAssignment):
              (KJS::CaseBlockNode::emitCodeForBlock):
              * kjs/nodes.h:
              (KJS::BinaryOpNode::BinaryOpNode):
              (KJS::ReverseBinaryOpNode::ReverseBinaryOpNode):
              (KJS::MultNode::):
              (KJS::DivNode::):
              (KJS::DivNode::precedence):
              (KJS::ModNode::):
              (KJS::ModNode::precedence):
              (KJS::AddNode::):
              (KJS::AddNode::precedence):
              (KJS::SubNode::):
              (KJS::SubNode::precedence):
              (KJS::LeftShiftNode::):
              (KJS::LeftShiftNode::precedence):
              (KJS::RightShiftNode::):
              (KJS::RightShiftNode::precedence):
              (KJS::UnsignedRightShiftNode::):
              (KJS::UnsignedRightShiftNode::precedence):
              (KJS::LessNode::):
              (KJS::LessNode::precedence):
              (KJS::GreaterNode::):
              (KJS::GreaterNode::precedence):
              (KJS::LessEqNode::):
              (KJS::LessEqNode::precedence):
              (KJS::GreaterEqNode::):
              (KJS::GreaterEqNode::precedence):
              (KJS::InstanceOfNode::):
              (KJS::InstanceOfNode::precedence):
              (KJS::InNode::):
              (KJS::InNode::precedence):
              (KJS::EqualNode::):
              (KJS::EqualNode::precedence):
              (KJS::NotEqualNode::):
              (KJS::NotEqualNode::precedence):
              (KJS::StrictEqualNode::):
              (KJS::StrictEqualNode::precedence):
              (KJS::NotStrictEqualNode::):
              (KJS::NotStrictEqualNode::precedence):
              (KJS::BitAndNode::):
              (KJS::BitAndNode::precedence):
              (KJS::BitOrNode::):
              (KJS::BitOrNode::precedence):
              (KJS::BitXOrNode::):
              (KJS::BitXOrNode::precedence):
              * kjs/nodes2string.cpp:
              (KJS::LessNode::streamTo):
              (KJS::GreaterNode::streamTo):
              (KJS::LessEqNode::streamTo):
              (KJS::GreaterEqNode::streamTo):
              (KJS::InstanceOfNode::streamTo):
              (KJS::InNode::streamTo):
              (KJS::EqualNode::streamTo):
              (KJS::NotEqualNode::streamTo):
              (KJS::StrictEqualNode::streamTo):
              (KJS::NotStrictEqualNode::streamTo):
              (KJS::BitAndNode::streamTo):
              (KJS::BitXOrNode::streamTo):
              (KJS::BitOrNode::streamTo):
      
              LayoutTests:
      
              * fast/js/codegen-temporaries-expected.txt:
              * fast/js/resources/codegen-temporaries.js:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@34562 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      875318ae
    • darin@apple.com's avatar
      WebCore: · 92aaa2a0
      darin@apple.com authored
      2008-06-14  Darin Adler  <darin@apple.com>
      
              Rubber stamped by Sam.
      
              - new names for kjs_binding.h and kjs_proxy.h
      
              * GNUmakefile.am:
              * WebCore.pro:
              * WebCore.vcproj/WebCore.vcproj:
              * WebCore.xcodeproj/project.pbxproj:
              * WebCoreSources.bkl:
              * bindings/js/JSAudioConstructor.h:
              * bindings/js/JSCustomSQLStatementCallback.cpp:
              * bindings/js/JSCustomSQLStatementErrorCallback.cpp:
              * bindings/js/JSCustomSQLTransactionCallback.cpp:
              * bindings/js/JSCustomSQLTransactionErrorCallback.cpp:
              * bindings/js/JSCustomVoidCallback.cpp:
              * bindings/js/JSCustomXPathNSResolver.cpp:
              * bindings/js/JSDOMBinding.cpp: Copied from WebCore/bindings/js/kjs_binding.cpp.
              * bindings/js/JSDOMBinding.h: Copied from WebCore/bindings/js/kjs_binding.h.
              * bindings/js/JSDOMWindowBase.cpp:
              * bindings/js/JSDOMWindowBase.h:
              * bindings/js/JSDOMWindowCustom.cpp:
              * bindings/js/JSDOMWindowShell.cpp:
              * bindings/js/JSDOMWindowShell.h:
              * bindings/js/JSDocumentCustom.cpp:
              * bindings/js/JSHTMLCollectionCustom.cpp:
              * bindings/js/JSHTMLFrameElementCustom.cpp:
              * bindings/js/JSHTMLFrameSetElementCustom.cpp:
              * bindings/js/JSHTMLIFrameElementCustom.cpp:
              * bindings/js/JSHTMLInputElementBase.h:
              * bindings/js/JSHTMLOptionElementConstructor.h:
              * bindings/js/JSImageConstructor.h:
              * bindings/js/JSLocationCustom.cpp:
              * bindings/js/JSNamedNodeMapCustom.cpp:
              * bindings/js/JSNamedNodesCollection.h:
              * bindings/js/JSNodeFilterCondition.cpp:
              * bindings/js/JSNodeFilterCustom.cpp:
              * bindings/js/JSRGBColor.h:
              * bindings/js/JSSVGPathSegCustom.cpp:
              * bindings/js/JSXMLHttpRequestConstructor.h:
              * bindings/js/JSXSLTProcessorConstructor.h:
              * bindings/js/JSXSLTProcessorCustom.cpp:
              * bindings/js/ScheduledAction.cpp:
              (WebCore::ScheduledAction::execute):
              * bindings/js/ScriptController.cpp: Copied from WebCore/bindings/js/kjs_proxy.cpp.
              * bindings/js/ScriptController.h: Copied from WebCore/bindings/js/kjs_proxy.h.
              * bindings/js/kjs_binding.cpp: Removed.
              * bindings/js/kjs_binding.h: Removed.
              * bindings/js/kjs_events.cpp:
              (WebCore::JSAbstractEventListener::handleEvent):
              * bindings/js/kjs_html.cpp:
              * bindings/js/kjs_html.h:
              * bindings/js/kjs_proxy.cpp: Removed.
              * bindings/js/kjs_proxy.h: Removed.
              * bindings/objc/DOMInternal.mm:
              * bindings/scripts/CodeGeneratorJS.pm:
              * bridge/jni/jni_jsobject.mm:
              * dom/Document.cpp:
              * dom/EventTarget.cpp:
              * dom/Node.cpp:
              * dom/XMLTokenizer.cpp:
              (WebCore::XMLTokenizer::startElementNs):
              * history/CachedPage.cpp:
              (WebCore::CachedPage::CachedPage):
              (WebCore::CachedPage::restore):
              * html/HTMLPlugInElement.cpp:
              * html/HTMLScriptElement.cpp:
              * html/HTMLTokenizer.cpp:
              (WebCore::HTMLTokenizer::processToken):
              * loader/FrameLoader.cpp:
              (WebCore::FrameLoader::executeScript):
              * page/Frame.cpp:
              (WebCore::Frame::scriptProxy):
              * page/Frame.h:
              * page/FramePrivate.h:
              * page/InspectorController.cpp:
              * page/JavaScriptDebugServer.cpp:
              * page/JavaScriptProfileNode.cpp:
              * page/Page.cpp:
              * page/gtk/FrameGtk.cpp:
              * page/mac/FrameMac.mm:
              * page/qt/FrameQt.cpp:
              * page/win/FrameWin.cpp:
              * plugins/PluginView.cpp:
              (WebCore::getString):
              * plugins/gtk/PluginViewGtk.cpp:
              * plugins/qt/PluginViewQt.cpp:
              * plugins/win/PluginViewWin.cpp:
              * svg/SVGDocumentExtensions.cpp:
              * xml/XMLHttpRequest.cpp:
      
      WebKit/gtk:
      
      2008-06-14  Darin Adler  <darin@apple.com>
      
              Rubber stamped by Sam.
      
              - new names for kjs_binding.h and kjs_proxy.h
      
              * WebCoreSupport/FrameLoaderClientGtk.cpp:
              * webkit/webkitwebframe.cpp:
      
      WebKit/mac:
      
      2008-06-14  Darin Adler  <darin@apple.com>
      
              Rubber stamped by Sam.
      
              - new names for kjs_binding.h and kjs_proxy.h
      
              * WebView/WebFrame.mm:
              * WebView/WebScriptDebugDelegate.mm:
              * WebView/WebView.mm:
      
      WebKit/qt:
      
      2008-06-14  Darin Adler  <darin@apple.com>
      
              Rubber stamped by Sam.
      
              - new names for kjs_binding.h and kjs_proxy.h
      
              * Api/qwebframe.cpp:
              (QWebFrame::evaluateJavaScript):
              * WebKit_pch.h:
      
      WebKit/win:
      
      2008-06-14  Darin Adler  <darin@apple.com>
      
              Rubber stamped by Sam.
      
              - new names for kjs_binding.h and kjs_proxy.h
      
              * WebFrame.cpp:
      
      WebKit/wx:
      
      2008-06-14  Darin Adler  <darin@apple.com>
      
              Rubber stamped by Sam.
      
              - new names for kjs_binding.h and kjs_proxy.h
      
              * WebView.cpp:
      
      WebKitTools:
      
      2008-06-14  Darin Adler  <darin@apple.com>
      
              * Scripts/do-webcore-rename: Moved planned renames into a separate hash
              from the actual renames. Removed many renames that are either done or
              no longer planned.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@34561 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      92aaa2a0
    • darin@apple.com's avatar
      2008-06-14 Darin Adler <darin@apple.com> · 51d6b26b
      darin@apple.com authored
              Rubber stamped by Sam.
      
              - rename a bunch of local symbols within the regular expression code to
                follow our usual coding style, and do a few other name tweaks
      
              * pcre/pcre_compile.cpp:
              (CompileData::CompileData):
              (checkEscape):
              (readRepeatCounts):
              (compileBranch):
              (compileBracket):
              (calculateCompiledPatternLength):
              (returnError):
              (jsRegExpCompile):
              * pcre/pcre_exec.cpp:
              (MatchStack::MatchStack):
              (MatchStack::canUseStackBufferForNextFrame):
              (MatchStack::popCurrentFrame):
              (match):
              (tryFirstByteOptimization):
              (tryRequiredByteOptimization):
              (jsRegExpExecute):
              * pcre/pcre_internal.h:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@34560 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      51d6b26b
    • darin@apple.com's avatar
      WebCore: · 3d8b64f1
      darin@apple.com authored
      2008-06-14  Darin Adler  <darin@apple.com>
      
              Rubber stamped by Sam.
      
              - renamed HTMLGenericFormElement to HTMLFormControlElement
      
              * GNUmakefile.am:
              * WebCore.pro:
              * WebCore.vcproj/WebCore.vcproj:
              * WebCore.xcodeproj/project.pbxproj:
              * WebCoreSources.bkl:
              * html/HTMLButtonElement.cpp:
              (WebCore::HTMLButtonElement::HTMLButtonElement):
              (WebCore::HTMLButtonElement::parseMappedAttribute):
              (WebCore::HTMLButtonElement::defaultEventHandler):
              * html/HTMLButtonElement.h:
              * html/HTMLFieldSetElement.cpp:
              (WebCore::HTMLFieldSetElement::HTMLFieldSetElement):
              * html/HTMLFieldSetElement.h:
              * html/HTMLFormCollection.cpp:
              (WebCore::HTMLFormCollection::item):
              (WebCore::HTMLFormCollection::getNamedFormItem):
              (WebCore::HTMLFormCollection::updateNameCache):
              * html/HTMLFormControlElement.cpp: Copied from WebCore/html/HTMLGenericFormElement.cpp.
              * html/HTMLFormControlElement.h: Copied from WebCore/html/HTMLGenericFormElement.h.
              * html/HTMLFormElement.cpp:
              (WebCore::HTMLFormElement::formData):
              (WebCore::HTMLFormElement::submit):
              (WebCore::HTMLFormElement::formElementIndex):
              (WebCore::HTMLFormElement::registerFormElement):
              (WebCore::HTMLFormElement::removeFormElement):
              (WebCore::HTMLFormElement::elementForAlias):
              (WebCore::HTMLFormElement::addElementAlias):
              (WebCore::HTMLFormElement::getNamedElements):
              (WebCore::HTMLFormElement::CheckedRadioButtons::addButton):
              (WebCore::HTMLFormElement::CheckedRadioButtons::removeButton):
              * html/HTMLFormElement.h:
              * html/HTMLGenericFormElement.cpp: Removed.
              * html/HTMLGenericFormElement.h: Removed.
              * html/HTMLInputElement.h:
              * html/HTMLIsIndexElement.cpp:
              (WebCore::HTMLIsIndexElement::parseMappedAttribute):
              * html/HTMLKeygenElement.cpp:
              (WebCore::HTMLKeygenElement::parseMappedAttribute):
              * html/HTMLLegendElement.cpp:
              (WebCore::HTMLLegendElement::HTMLLegendElement):
              * html/HTMLLegendElement.h:
              * html/HTMLOptGroupElement.cpp:
              (WebCore::HTMLOptGroupElement::HTMLOptGroupElement):
              (WebCore::HTMLOptGroupElement::insertBefore):
              (WebCore::HTMLOptGroupElement::replaceChild):
              (WebCore::HTMLOptGroupElement::removeChild):
              (WebCore::HTMLOptGroupElement::appendChild):
              (WebCore::HTMLOptGroupElement::removeChildren):
              (WebCore::HTMLOptGroupElement::childrenChanged):
              (WebCore::HTMLOptGroupElement::parseMappedAttribute):
              (WebCore::HTMLOptGroupElement::attach):
              (WebCore::HTMLOptGroupElement::detach):
              * html/HTMLOptGroupElement.h:
              * html/HTMLOptionElement.cpp:
              (WebCore::HTMLOptionElement::HTMLOptionElement):
              (WebCore::HTMLOptionElement::attach):
              (WebCore::HTMLOptionElement::detach):
              (WebCore::HTMLOptionElement::parseMappedAttribute):
              (WebCore::HTMLOptionElement::childrenChanged):
              (WebCore::HTMLOptionElement::disabled):
              (WebCore::HTMLOptionElement::insertedIntoDocument):
              * html/HTMLOptionElement.h:
              * html/HTMLSelectElement.h:
              * html/HTMLTextAreaElement.h:
              * page/Frame.cpp:
              (WebCore::scanForForm):
              (WebCore::Frame::currentForm):
              * page/mac/FrameMac.mm:
              * rendering/RenderFieldset.cpp:
              (WebCore::RenderFieldset::RenderFieldset):
              * rendering/RenderFieldset.h:
              * rendering/RenderLegend.cpp:
              (WebCore::RenderLegend::RenderLegend):
              * rendering/RenderLegend.h:
              * rendering/RenderTextControl.cpp:
              (WebCore::RenderTextControl::createInnerTextStyle):
              (WebCore::RenderTextControl::updateFromElement):
              (WebCore::RenderTextControl::subtreeHasChanged):
              (WebCore::RenderTextControl::selectionChanged):
      
      WebKit/mac:
      
      2008-06-14  Darin Adler  <darin@apple.com>
      
              Rubber stamped by Sam.
      
              - renamed HTMLGenericFormElement to HTMLFormControlElement
      
              * WebView/WebHTMLRepresentation.mm:
              (-[WebHTMLRepresentation elementWithName:inForm:]):
              (-[WebHTMLRepresentation controlsInForm:]):
      
      WebKit/win:
      
      2008-06-14  Darin Adler  <darin@apple.com>
      
              Rubber stamped by Sam.
      
              - renamed HTMLGenericFormElement to HTMLFormControlElement
      
              * WebFrame.cpp:
              (WebFrame::elementWithName):
              (WebFrame::controlsInForm):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@34559 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      3d8b64f1
  2. 14 Jun, 2008 19 commits
    • darin@apple.com's avatar
      ../win: · bae71f70
      darin@apple.com authored
      2008-06-14  Darin Adler  <darin@apple.com>
      
              - try to fix Windows build, again
      
              * WebFrame.cpp:
              (WebFrame::dispatchDecidePolicyForNewWindowAction): Fix arguments. Pass form.
              (WebFrame::dispatchDecidePolicyForNavigationAction): Ditto.
              * WebFrame.h: Fix arguments.
      
      ../wx:
      
      2008-06-14  Darin Adler  <darin@apple.com>
      
              - try to fix wx build, again
      
              * WebView.cpp:
              (wxWebView::Create): Use create function instead of new.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@34558 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      bae71f70
    • weinig@apple.com's avatar
      2008-06-14 Sam Weinig <sam@webkit.org> · 099304c2
      weinig@apple.com authored
              Windows build fix.
      
              * bindings/scripts/CodeGeneratorCOM.pm:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@34557 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      099304c2
    • cwzwarich@webkit.org's avatar
      2008-06-14 Cameron Zwarich <cwzwarich@uwaterloo.ca> · 5cbef674
      cwzwarich@webkit.org authored
              Reviewed by Darin.
      
              Remove redundant uses of get().
      
              * kjs/nodes.cpp:
              (KJS::BracketAccessorNode::emitCode):
              (KJS::AddNode::emitCode):
              (KJS::SubNode::emitCode):
              (KJS::ReadModifyResolveNode::emitCode):
              (KJS::AssignDotNode::emitCode):
              (KJS::ReadModifyDotNode::emitCode):
              (KJS::AssignBracketNode::emitCode):
              (KJS::ReadModifyBracketNode::emitCode):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@34556 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      5cbef674
    • cwzwarich@webkit.org's avatar
      2008-06-14 Cameron Zwarich <cwzwarich@uwaterloo.ca> · 29477592
      cwzwarich@webkit.org authored
              Reviewed by Maciej.
      
              Make code generation not use a temporary for the left-hand side of an
              expression if the right-hand side is a local variable.
      
              * VM/CodeGenerator.cpp:
              (KJS::CodeGenerator::isLocal):
              * VM/CodeGenerator.h:
              (KJS::CodeGenerator::leftHandSideNeedsCopy):
              (KJS::CodeGenerator::emitNodeForLeftHandSide):
              * kjs/nodes.cpp:
              (KJS::ResolveNode::isPure):
              (KJS::BracketAccessorNode::emitCode):
              (KJS::AddNode::emitCode):
              (KJS::SubNode::emitCode):
              (KJS::ReadModifyResolveNode::emitCode):
              (KJS::AssignDotNode::emitCode):
              (KJS::ReadModifyDotNode::emitCode):
              (KJS::AssignBracketNode::emitCode):
              (KJS::ReadModifyBracketNode::emitCode):
              * kjs/nodes.h:
              (KJS::ExpressionNode::):
              (KJS::BooleanNode::):
              (KJS::NumberNode::):
              (KJS::StringNode::):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@34555 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      29477592
    • darin@apple.com's avatar
      2008-06-14 Darin Adler <darin@apple.com> · ec650339
      darin@apple.com authored
              - more build fixing
      
              * platform/gtk/DragDataGtk.cpp: Added missing header.
              * platform/wx/DragDataWx.cpp: Ditto.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@34554 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      ec650339
    • darin@apple.com's avatar
      2008-06-14 Darin Adler <darin@apple.com> · bb28b975
      darin@apple.com authored
              - try to fix Windows build
      
              * WebActionPropertyBag.cpp:
              (WebActionPropertyBag::Read): Use IDOMNode, not IHTMLFormElement.
              * WebFrame.h: Added missing FormState arguments.
              * WebScrollBar.cpp:
              (WebScrollBar::init): Use create instead of new.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@34553 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      bb28b975
    • darin@apple.com's avatar
      2008-06-14 Darin Adler <darin@apple.com> · 6c46d604
      darin@apple.com authored
              Reviewed by Sam.
      
              - fix https://bugs.webkit.org/show_bug.cgi?id=19544
                DashboardRegion pieces are leaking
      
              My recent change introduced a leak of objects owned by each DashboardRegion,
              because I made ~Rect non-virtual. By using a separate RefCounted class for
              each of Rect and DashboardRegion, the leak is gone. It's not clear if the
              DashboardRegion class should really exist -- it doesn't have a DOM binding,
              so it could conceivably be removed some day.
      
              * css/DashboardRegion.h: Derive from RectBase instead of from Rect.
              * css/Rect.h: Added RectBase. Changed Rect to derive from RectBase.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@34552 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      6c46d604
    • darin@apple.com's avatar
      2008-06-14 Darin Adler <darin@apple.com> · 3aa89278
      darin@apple.com authored
              Reviewed by Sam.
      
              - https://bugs.webkit.org/show_bug.cgi?id=19545
                use PassRefPtr, not RefPtr, for return values
      
              * css/CSSParser.cpp:
              (WebCore::CSSParser::parseGradient): Call release() when assigning result to avoid
              a little bit of refcount churn.
      
              * css/CSSStyleSelector.cpp:
              (WebCore::CSSStyleSelector::styleRulesForElement): Changed return value to PassRefPtr.
              (WebCore::CSSStyleSelector::pseudoStyleRulesForElement): Ditto.
              * css/CSSStyleSelector.h: Ditto.
      
              * svg/SVGElementInstanceList.cpp:
              (WebCore::SVGElementInstanceList::length): Tweaked formatting.
              (WebCore::SVGElementInstanceList::item): Changed return value to raw pointer.
              * svg/SVGElementInstanceList.h: Ditto.
      
              * xml/XSLTProcessor.cpp:
              (WebCore::XSLTProcessor::createDocumentFromSource): Changed return value to PassRefPtr.
              (WebCore::XSLTProcessor::transformToDocument): Ditto.
              (WebCore::XSLTProcessor::transformToFragment): Ditto.
              * xml/XSLTProcessor.h: Ditto.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@34551 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      3aa89278
    • darin@apple.com's avatar
      2008-06-14 Darin Adler <darin@apple.com> · 0cd074ea
      darin@apple.com authored
              - try to fix the gtk build
      
              * platform/gtk/DragDataGtk.cpp:
              (WebCore::DragData::createClipboard): Changed return type to PassRefPtr.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@34550 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      0cd074ea
    • darin@apple.com's avatar
      2008-06-14 Darin Adler <darin@apple.com> · c6c2b233
      darin@apple.com authored
              - another try at fixing the wx build
      
              * platform/wx/DragDataWx.cpp:
              (WebCore::DragData::createClipboard): Changed return type to PassRefPtr.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@34549 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c6c2b233
    • darin@apple.com's avatar
      2008-06-14 Darin Adler <darin@apple.com> · 9ef41dfc
      darin@apple.com authored
              - try to fix Windows build
      
              * svg/graphics/SVGImageEmptyClients.h: Added missing include.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@34548 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      9ef41dfc
    • darin@apple.com's avatar
      2008-06-14 Darin Adler <darin@apple.com> · a5581f52
      darin@apple.com authored
              - fix wx build
      
              * platform/wx/TemporaryLinkStubs.cpp: Removed unneeded Icon constructor.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@34547 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      a5581f52
    • darin@apple.com's avatar
      2008-06-14 Darin Adler <darin@apple.com> · 3370f744
      darin@apple.com authored
              - fix build
      
              * Api/qwebframe.cpp:
              (QWebFramePrivate::init): Added a missing semicolon.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@34546 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      3370f744
    • darin@apple.com's avatar
      2008-06-14 Darin Adler <darin@apple.com> · 5eff5774
      darin@apple.com authored
              - fix build
      
              * webkit/webkitwebframe.cpp: Remove a bogus release() call.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@34545 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      5eff5774
    • darin@apple.com's avatar
      JavaScriptCore: · d5ceaf86
      darin@apple.com authored
      2008-06-14  Darin Adler  <darin@apple.com>
      
              Reviewed by Sam.
      
              - more of https://bugs.webkit.org/show_bug.cgi?id=17257
                start ref counts at 1 instead of 0 for speed
      
              * kjs/nodes.cpp:
              (KJS::ParserRefCounted::hasOneRef): Added. Replaces refcount.
              * kjs/nodes.h: Replaced refcount with hasOneRef.
      
              * wtf/ListRefPtr.h:
              (WTF::ListRefPtr::~ListRefPtr): Changed to use hasOneRef instead of
              refcount, so this class can be used with the RefCounted template.
      
              * wtf/RefCounted.h:
              (WTF::RefCounted::hasOneRef): Made const, since there's no reason for
              it to be non-const.
      
      WebCore:
      
      2008-06-14  Darin Adler  <darin@apple.com>
      
              Reviewed by Sam.
      
              - more work on https://bugs.webkit.org/show_bug.cgi?id=17257
                start ref counts at 1 instead of 0 for speed
      
              * WebCore.base.exp: Added some new exports needed for functions that are now
              non-virtual.
      
              * WebCore.xcodeproj/project.pbxproj: Moved the "icon" group to the correct
              location in the project. Before it was inside "appcache"!
      
              * css/CSSStyleSelector.cpp:
              (WebCore::CSSStyleSelector::applyProperty):
              * dom/Clipboard.cpp:
              (WebCore::Clipboard::Clipboard):
              * editing/mac/EditorMac.mm:
              (WebCore::Editor::newGeneralClipboard):
              * editing/qt/EditorQt.cpp:
              (WebCore::Editor::newGeneralClipboard):
              * editing/wx/EditorWx.cpp:
              (WebCore::Editor::newGeneralClipboard):
              * loader/DocumentLoader.cpp:
              (WebCore::DocumentLoader::DocumentLoader):
              * loader/DocumentLoader.h:
              (WebCore::DocumentLoader::create):
              * loader/icon/IconDatabase.cpp:
              (WebCore::IconDatabase::defaultIcon):
              (WebCore::IconDatabase::setIconDataForIconURL):
              (WebCore::IconDatabase::setIconURLForPageURL):
              (WebCore::IconDatabase::getOrCreateIconRecord):
              (WebCore::IconDatabase::performURLImport):
              * loader/icon/IconDatabase.h:
              * loader/icon/IconRecord.cpp:
              (WebCore::IconRecord::IconRecord):
              * loader/icon/IconRecord.h:
              (WebCore::IconRecord::create):
              * page/EventHandler.h:
              * page/Frame.cpp:
              (WebCore::Frame::Frame):
              * page/Frame.h:
              (WebCore::Frame::create):
              * page/gtk/EventHandlerGtk.cpp:
              (WebCore::EventHandler::createDraggingClipboard):
              * page/mac/EventHandlerMac.mm:
              (WebCore::EventHandler::createDraggingClipboard):
              * page/qt/EventHandlerQt.cpp:
              (WebCore::EventHandler::createDraggingClipboard):
              * page/win/EventHandlerWin.cpp:
              (WebCore::EventHandler::createDraggingClipboard):
              * page/wx/EventHandlerWx.cpp:
              (WebCore::EventHandler::createDraggingClipboard):
              * platform/Cursor.h:
              (WebCore::SharedCursor::create):
              (WebCore::SharedCursor::~SharedCursor):
              (WebCore::SharedCursor::SharedCursor):
              * platform/DragData.h:
              * platform/PopupMenu.h:
              (WebCore::PopupMenu::create):
              (WebCore::PopupMenu::isActive):
              * platform/ScrollBar.cpp:
              (WebCore::Scrollbar::Scrollbar):
              * platform/SearchPopupMenu.h:
              (WebCore::SearchPopupMenu::create):
              * platform/graphics/FontFamily.cpp:
              (WebCore::FontFamily::FontFamily):
              (WebCore::operator==):
              * platform/graphics/FontFamily.h:
              (WebCore::FontFamily::FontFamily):
              (WebCore::SharedFontFamily::create):
              (WebCore::SharedFontFamily::SharedFontFamily):
              (WebCore::operator!=):
              (WebCore::FontFamily::next):
              (WebCore::FontFamily::appendFamily):
              (WebCore::FontFamily::releaseNext):
              * platform/graphics/Icon.h:
              * platform/graphics/gtk/IconGtk.cpp:
              (WebCore::Icon::Icon):
              (WebCore::Icon::~Icon):
              (WebCore::Icon::newIconForFile):
              * platform/graphics/mac/IconMac.mm:
              (WebCore::Icon::Icon):
              (WebCore::Icon::newIconForFile):
              * platform/graphics/qt/IconQt.cpp:
              (WebCore::Icon::Icon):
              (WebCore::Icon::newIconForFile):
              * platform/graphics/win/IconWin.cpp:
              (WebCore::Icon::Icon):
              (WebCore::Icon::~Icon):
              (WebCore::Icon::newIconForFile):
              * platform/gtk/ClipboardGtk.cpp:
              (WebCore::Editor::newGeneralClipboard):
              * platform/gtk/ClipboardGtk.h:
              (WebCore::ClipboardGtk::create):
              * platform/gtk/PlatformScrollBar.h:
              (WebCore::PlatformScrollbar::create):
              * platform/gtk/PopupMenuGtk.cpp:
              (WebCore::PopupMenu::PopupMenu):
              * platform/gtk/ScrollViewGtk.cpp:
              (WebCore::ScrollViewScrollbar::create):
              (WebCore::ScrollView::ScrollViewPrivate::setHasHorizontalScrollbar):
              (WebCore::ScrollView::ScrollViewPrivate::setHasVerticalScrollbar):
              * platform/mac/ClipboardMac.h:
              (WebCore::ClipboardMac::create):
              * platform/mac/DragDataMac.mm:
              (WebCore::DragData::createClipboard):
              (WebCore::DragData::containsCompatibleContent):
              * platform/mac/PlatformScrollBar.h:
              (WebCore::PlatformScrollbar::create):
              (WebCore::PlatformScrollbar::horizontalScrollbarHeight):
              (WebCore::PlatformScrollbar::verticalScrollbarWidth):
              * platform/mac/PopupMenuMac.mm:
              (WebCore::PopupMenu::PopupMenu):
              * platform/qt/ClipboardQt.h:
              (WebCore::ClipboardQt::create):
              * platform/qt/DragDataQt.cpp:
              (WebCore::DragData::createClipboard):
              * platform/qt/PlatformScrollBar.h:
              (WebCore::PlatformScrollbar::create):
              * platform/qt/PopupMenuQt.cpp:
              (WebCore::PopupMenu::PopupMenu):
              * platform/qt/ScrollViewQt.cpp:
              (WebCore::ScrollView::ScrollViewPrivate::setHasHorizontalScrollbar):
              (WebCore::ScrollView::ScrollViewPrivate::setHasVerticalScrollbar):
              * platform/win/ClipboardWin.h:
              (WebCore::ClipboardWin::create):
              * platform/win/CursorWin.cpp:
              (WebCore::Cursor::Cursor):
              (WebCore::loadSharedCursor):
              * platform/win/DragDataWin.cpp:
              (WebCore::DragData::createClipboard):
              * platform/win/EditorWin.cpp:
              (WebCore::Editor::newGeneralClipboard):
              * platform/win/PlatformScrollBar.h:
              (WebCore::PlatformScrollbar::create):
              * platform/win/PopupMenuWin.cpp:
              (WebCore::PopupMenu::PopupMenu):
              (WebCore::PopupMenu::show):
              * platform/win/ScrollViewWin.cpp:
              (WebCore::ScrollView::ScrollViewPrivate::setHasHorizontalScrollbar):
              (WebCore::ScrollView::ScrollViewPrivate::setHasVerticalScrollbar):
              * platform/wx/ClipboardWx.h:
              (WebCore::ClipboardWx::create):
              * platform/wx/PlatformScrollBar.h:
              (WebCore::PlatformScrollbar::create):
              * platform/wx/PopupMenuWx.cpp:
              (WebCore::PopupMenu::PopupMenu):
              * platform/wx/TemporaryLinkStubs.cpp:
              (Icon::Icon):
              (Icon::newIconForFile):
              * rendering/RenderLayer.cpp:
              (WebCore::RenderLayer::createScrollbar):
              * rendering/RenderListBox.cpp:
              (WebCore::RenderListBox::updateFromElement):
              * svg/graphics/SVGImage.cpp:
              (WebCore::SVGImage::dataChanged):
              * svg/graphics/SVGImageEmptyClients.h:
              (WebCore::SVGEmptyFrameLoaderClient::createDocumentLoader):
      
      WebKit/gtk:
      
      2008-06-14  Darin Adler  <darin@apple.com>
      
              Reviewed by Sam.
      
              - more https://bugs.webkit.org/show_bug.cgi?id=17257
                start ref counts at 1 instead of 0 for speed
      
              * WebCoreSupport/FrameLoaderClientGtk.cpp:
              (WebKit::FrameLoaderClient::createDocumentLoader): Use create instead of new.
              * webkit/webkitwebframe.cpp:
              (webkit_web_frame_new): Ditto.
              (webkit_web_frame_init_with_web_view): Ditto.
      
      WebKit/mac:
      
      2008-06-14  Darin Adler  <darin@apple.com>
      
              Reviewed by Sam.
      
              - more of https://bugs.webkit.org/show_bug.cgi?id=17257
                start ref counts at 1 instead of 0 for speed
      
              * WebCoreSupport/WebFrameLoaderClient.mm:
              (WebFrameLoaderClient::createDocumentLoader): Use create instead of new.
              (WebFrameLoaderClient::createFrame): Remove now-obsolete adoptRef that was balanced by
              a ref call inside the Frame constructor. The lifetime rules for Frame are now the
              conventional ones without a special case.
      
              * WebView/WebDataSource.mm:
              (-[WebDataSource _initWithDocumentLoader:]): Changed argument to be a PassRefPtr, since
              this function takes ownership of the DocumentLoader.
              (-[WebDataSource initWithRequest:]): Use create instead of new.
              * WebView/WebDataSourceInternal.h: Changed _initWithDocumentLoader argument to be a
              PassRefPtr and also cleaned up the header a bit.
      
              * WebView/WebDocumentLoaderMac.h:
              (WebDocumentLoaderMac::create): Added. Also made the constructor and a couple of virtual
              functions private.
      
              * WebView/WebFrame.mm:
              (+[WebFrame _createFrameWithPage:frameName:frameView:ownerElement:]): Use create instead
              of new.
      
      WebKit/qt:
      
      2008-06-14  Darin Adler  <darin@apple.com>
      
              Reviewed by Sam.
      
              - more https://bugs.webkit.org/show_bug.cgi?id=17257
                start ref counts at 1 instead of 0 for speed
      
              * Api/qwebframe.cpp:
              (QWebFramePrivate::init): Use create instead of new.
              * WebCoreSupport/FrameLoaderClientQt.cpp:
              (WebCore::FrameLoaderClientQt::createDocumentLoader): Ditto.
      
      WebKit/win:
      
      2008-06-14  Darin Adler  <darin@apple.com>
      
              Reviewed by Sam.
      
              - more of https://bugs.webkit.org/show_bug.cgi?id=17257
                start ref counts at 1 instead of 0 for speed
      
              * WebCoreSupport/WebFrameLoaderClient.cpp:
              (WebFrameLoaderClient::createFrame): Remove now-obsolete adoptRef that was balanced by
              a ref call inside the Frame constructor. The lifetime rules for Frame are now the
              conventional ones without a special case.
      
              * WebFrame.cpp:
              (WebFrame::init): Renamed function from initWithWebFrameView and removed the unused
              IWebFrameView argument (every caller was passing 0). Also changed this to return the
              WebCore Frame object, which is needed to straighten out the lifetime and ownership
              issues.
              * WebFrame.h: Ditto.
      
              * WebView.cpp:
              (WebView::initWithFrame): Changed to call new init function and use the return value.
      
      WebKit/wx:
      
      2008-06-14  Darin Adler  <darin@apple.com>
      
              Reviewed by Sam.
      
              - more https://bugs.webkit.org/show_bug.cgi?id=17257
                start ref counts at 1 instead of 0 for speed
      
              * WebKitSupport/FrameLoaderClientWx.cpp:
              (WebCore::FrameLoaderClientWx::createDocumentLoader): Use create function
              instead of new.
      
      LayoutTests:
      
      2008-06-14  Darin Adler  <darin@apple.com>
      
              Reviewed by Maciej.
      
              - test for https://bugs.webkit.org/show_bug.cgi?id=19538
                <rdar://problem/5957595> Reading transition property from the style JS gives the wrong value
      
              * fast/dom/CSSStyleDeclaration/resources/transition-property-names.js: Added.
              * fast/dom/CSSStyleDeclaration/transition-property-names-expected.txt: Added.
              * fast/dom/CSSStyleDeclaration/transition-property-names.html: Added.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@34544 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      d5ceaf86
    • weinig@apple.com's avatar
      WebCore: · fa4b1a10
      weinig@apple.com authored
      2008-06-14  Sam Weinig  <sam@webkit.org>
      
              Reviewed by Dan Bernstein.
      
              Fix for <rdar://problem/5775192>
              insertAdjacentHTML and insertAdjacentText are not implemented although insertAdjacentElement is.
      
              - Implements insertAdjacentHTML and insertAdjacentText for HTMLElement.
              - Moves the insertAdjacentElement implementation from Element to HTMLElement.
      
              Tests: fast/dynamic/insertAdjacentHTML.html
                     fast/dynamic/insertAdjacentText.html
      
              * dom/Element.cpp:
              * dom/Element.h:
              * dom/Element.idl:
              * html/HTMLElement.cpp:
              (WebCore::HTMLElement::insertAdjacent):
              (WebCore::HTMLElement::insertAdjacentElement):
              (WebCore::HTMLElement::insertAdjacentHTML):
              (WebCore::HTMLElement::insertAdjacentText):
              * html/HTMLElement.h:
              * html/HTMLElement.idl:
      
      LayoutTests:
      
      2008-06-14  Sam Weinig  <sam@webkit.org>
      
              Reviewed by Dan Bernstein.
      
              Tests for <rdar://problem/5775192>
              insertAdjacentHTML and insertAdjacentText are not implemented although insertAdjacentElement is.
      
              * fast/dom/Window/window-properties-expected.txt:
              * fast/dom/domListEnumeration-expected.txt:
              * fast/dom/resources/domListEnumeration.js:
              * fast/dynamic/insertAdjacentElement.html:
              * fast/dynamic/insertAdjacentHTML-expected.txt: Added.
              * fast/dynamic/insertAdjacentHTML.html: Copied from fast/dynamic/insertAdjacentElement.html.
              * fast/dynamic/insertAdjacentText-expected.txt: Added.
              * fast/dynamic/insertAdjacentText.html: Copied from fast/dynamic/insertAdjacentElement.html.
              * platform/mac/fast/dynamic/insertAdjacentElement-expected.txt:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@34543 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      fa4b1a10
    • darin@apple.com's avatar
      WebCore: · 166f2512
      darin@apple.com authored
      2008-06-14  Darin Adler  <darin@apple.com>
      
              Reviewed by Maciej.
      
              - fix https://bugs.webkit.org/show_bug.cgi?id=19538
                <rdar://problem/5957595> Reading transition property from the style JS gives the wrong value
      
              Test: fast/dom/CSSStyleDeclaration/transition-property-names.html
      
              * css/CSSPrimitiveValue.cpp:
              (WebCore::valueOrPropertyName): Added.
              (WebCore::CSSPrimitiveValue::getStringValue): Use valueOrPropertyName since the ident can either
              be a value or property ID.
              (WebCore::CSSPrimitiveValue::cssText): Ditto.
      
              * css/makeprop.pl: Assign property IDs starting at 1001 instead of 1 so they can be stored along
              with value IDs with no ambiguity.
      
      LayoutTests:
      
      2008-06-14  Darin Adler  <darin@apple.com>
      
              Reviewed by Maciej.
      
              - test for https://bugs.webkit.org/show_bug.cgi?id=19538
                <rdar://problem/5957595> Reading transition property from the style JS gives the wrong value
      
              * fast/dom/CSSStyleDeclaration/resources/transition-property-names.js: Added.
              * fast/dom/CSSStyleDeclaration/transition-property-names-expected.txt: Added.
              * fast/dom/CSSStyleDeclaration/transition-property-names.html: Added.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@34542 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      166f2512
    • mjs@apple.com's avatar
      2008-06-14 Maciej Stachowiak <mjs@apple.com> · ff10c48f
      mjs@apple.com authored
              Reviewed by Oliver.
              
              - initialize local vars as side effect of call instead of in bytecode
              1.004x speedup on SunSpider.
      
              This removes just the dispatch overhead for these loads - in the
              future, dead store elimination might be able to eliminate them
              entirely.
              
              * VM/CodeGenerator.cpp:
              (KJS::CodeGenerator::CodeGenerator): For function blocks, don't
              emit loads of undefined for var initialization.
              * VM/Machine.cpp:
              (KJS::slideRegisterWindowForCall): Instead, initialize locals
              as part of the call.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@34541 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      ff10c48f
    • abarth@webkit.org's avatar
      2008-06-14 Adam Barth <abarth@webkit.org> · 1b74c09a
      abarth@webkit.org authored
              Reviewed by David Kilzer.
      
              Fix typo.
      
              * dom/XMLTokenizer.cpp:
              (WebCore::shouldAllowExternalLoad):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@34540 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      1b74c09a