1. 10 Nov, 2007 1 commit
  2. 08 Nov, 2007 1 commit
    • weinig@apple.com's avatar
      JavaScriptCore: · a73c15f5
      weinig@apple.com authored
              Reviewed by Darin.
      
              Convert JavaScript internal function objects to use one class per
              function.  This avoids a switch statement inside what used to be
              the shared function classes and will allow Shark to better analyze
              the code.
      
              To make this switch, the value property of the HashEntry was changed
              to a union of an intptr_t (which is used to continue handle valueGetters)
              and function pointer which points to a static constructor for the
              individual new function objects.
      
              SunSpider claims this is a 0.5% speedup. 
      
              * kjs/array_object.cpp:
              (KJS::ArrayPrototype::getOwnPropertySlot):
              (KJS::getProperty):
              (KJS::ArrayProtoFuncToString::callAsFunction):
              (KJS::ArrayProtoFuncToLocaleString::callAsFunction):
              (KJS::ArrayProtoFuncJoin::callAsFunction):
              (KJS::ArrayProtoFuncConcat::callAsFunction):
              (KJS::ArrayProtoFuncPop::callAsFunction):
              (KJS::ArrayProtoFuncPush::callAsFunction):
              (KJS::ArrayProtoFuncReverse::callAsFunction):
              (KJS::ArrayProtoFuncShift::callAsFunction):
              (KJS::ArrayProtoFuncSlice::callAsFunction):
              (KJS::ArrayProtoFuncSort::callAsFunction):
              (KJS::ArrayProtoFuncSplice::callAsFunction):
              (KJS::ArrayProtoFuncUnShift::callAsFunction):
              (KJS::ArrayProtoFuncFilter::callAsFunction):
              (KJS::ArrayProtoFuncMap::callAsFunction):
              (KJS::ArrayProtoFuncEvery::callAsFunction):
              (KJS::ArrayProtoFuncForEach::callAsFunction):
              (KJS::ArrayProtoFuncSome::callAsFunction):
              (KJS::ArrayProtoFuncIndexOf::callAsFunction):
              (KJS::ArrayProtoFuncLastIndexOf::callAsFunction):
              * kjs/array_object.h:
              (KJS::ArrayPrototype::classInfo):
              * kjs/create_hash_table:
              * kjs/date_object.cpp:
              (KJS::DatePrototype::getOwnPropertySlot):
              (KJS::DateProtoFuncToString::callAsFunction):
              (KJS::DateProtoFuncToUTCString::callAsFunction):
              (KJS::DateProtoFuncToDateString::callAsFunction):
              (KJS::DateProtoFuncToTimeString::callAsFunction):
              (KJS::DateProtoFuncToLocaleString::callAsFunction):
              (KJS::DateProtoFuncToLocaleDateString::callAsFunction):
              (KJS::DateProtoFuncToLocaleTimeString::callAsFunction):
              (KJS::DateProtoFuncValueOf::callAsFunction):
              (KJS::DateProtoFuncGetTime::callAsFunction):
              (KJS::DateProtoFuncGetFullYear::callAsFunction):
              (KJS::DateProtoFuncGetUTCFullYear::callAsFunction):
              (KJS::DateProtoFuncToGMTString::callAsFunction):
              (KJS::DateProtoFuncGetMonth::callAsFunction):
              (KJS::DateProtoFuncGetUTCMonth::callAsFunction):
              (KJS::DateProtoFuncGetDate::callAsFunction):
              (KJS::DateProtoFuncGetUTCDate::callAsFunction):
              (KJS::DateProtoFuncGetDay::callAsFunction):
              (KJS::DateProtoFuncGetUTCDay::callAsFunction):
              (KJS::DateProtoFuncGetHours::callAsFunction):
              (KJS::DateProtoFuncGetUTCHours::callAsFunction):
              (KJS::DateProtoFuncGetMinutes::callAsFunction):
              (KJS::DateProtoFuncGetUTCMinutes::callAsFunction):
              (KJS::DateProtoFuncGetSeconds::callAsFunction):
              (KJS::DateProtoFuncGetUTCSeconds::callAsFunction):
              (KJS::DateProtoFuncGetMilliSeconds::callAsFunction):
              (KJS::DateProtoFuncGetUTCMilliseconds::callAsFunction):
              (KJS::DateProtoFuncGetTimezoneOffset::callAsFunction):
              (KJS::DateProtoFuncSetTime::callAsFunction):
              (KJS::DateProtoFuncSetMilliSeconds::callAsFunction):
              (KJS::DateProtoFuncSetUTCMilliseconds::callAsFunction):
              (KJS::DateProtoFuncSetSeconds::callAsFunction):
              (KJS::DateProtoFuncSetUTCSeconds::callAsFunction):
              (KJS::DateProtoFuncSetMinutes::callAsFunction):
              (KJS::DateProtoFuncSetUTCMinutes::callAsFunction):
              (KJS::DateProtoFuncSetHours::callAsFunction):
              (KJS::DateProtoFuncSetUTCHours::callAsFunction):
              (KJS::DateProtoFuncSetDate::callAsFunction):
              (KJS::DateProtoFuncSetUTCDate::callAsFunction):
              (KJS::DateProtoFuncSetMonth::callAsFunction):
              (KJS::DateProtoFuncSetUTCMonth::callAsFunction):
              (KJS::DateProtoFuncSetFullYear::callAsFunction):
              (KJS::DateProtoFuncSetUTCFullYear::callAsFunction):
              (KJS::DateProtoFuncSetYear::callAsFunction):
              (KJS::DateProtoFuncGetYear::callAsFunction):
              * kjs/date_object.h:
              * kjs/lookup.cpp:
              (KJS::Lookup::find):
              * kjs/lookup.h:
              (KJS::HashEntry::):
              (KJS::staticFunctionGetter):
              (KJS::staticValueGetter):
              (KJS::getStaticPropertySlot):
              (KJS::getStaticFunctionSlot):
              (KJS::lookupPut):
              * kjs/math_object.cpp:
              (KJS::MathObjectImp::getOwnPropertySlot):
              (KJS::MathProtoFuncAbs::callAsFunction):
              (KJS::MathProtoFuncACos::callAsFunction):
              (KJS::MathProtoFuncASin::callAsFunction):
              (KJS::MathProtoFuncATan::callAsFunction):
              (KJS::MathProtoFuncATan2::callAsFunction):
              (KJS::MathProtoFuncCeil::callAsFunction):
              (KJS::MathProtoFuncCos::callAsFunction):
              (KJS::MathProtoFuncExp::callAsFunction):
              (KJS::MathProtoFuncFloor::callAsFunction):
              (KJS::MathProtoFuncLog::callAsFunction):
              (KJS::MathProtoFuncMax::callAsFunction):
              (KJS::MathProtoFuncMin::callAsFunction):
              (KJS::MathProtoFuncPow::callAsFunction):
              (KJS::MathProtoFuncRandom::callAsFunction):
              (KJS::MathProtoFuncRound::callAsFunction):
              (KJS::MathProtoFuncSin::callAsFunction):
              (KJS::MathProtoFuncSqrt::callAsFunction):
              (KJS::MathProtoFuncTan::callAsFunction):
              * kjs/math_object.h:
              (KJS::MathObjectImp::classInfo):
              (KJS::MathObjectImp::):
              * kjs/string_object.cpp:
              (KJS::StringPrototype::getOwnPropertySlot):
              (KJS::StringProtoFuncToString::callAsFunction):
              (KJS::StringProtoFuncValueOf::callAsFunction):
              (KJS::StringProtoFuncCharAt::callAsFunction):
              (KJS::StringProtoFuncCharCodeAt::callAsFunction):
              (KJS::StringProtoFuncConcat::callAsFunction):
              (KJS::StringProtoFuncIndexOf::callAsFunction):
              (KJS::StringProtoFuncLastIndexOf::callAsFunction):
              (KJS::StringProtoFuncMatch::callAsFunction):
              (KJS::StringProtoFuncSearch::callAsFunction):
              (KJS::StringProtoFuncReplace::callAsFunction):
              (KJS::StringProtoFuncSlice::callAsFunction):
              (KJS::StringProtoFuncSplit::callAsFunction):
              (KJS::StringProtoFuncSubstr::callAsFunction):
              (KJS::StringProtoFuncSubstring::callAsFunction):
              (KJS::StringProtoFuncToLowerCase::callAsFunction):
              (KJS::StringProtoFuncToUpperCase::callAsFunction):
              (KJS::StringProtoFuncToLocaleLowerCase::callAsFunction):
              (KJS::StringProtoFuncToLocaleUpperCase::callAsFunction):
              (KJS::StringProtoFuncLocaleCompare::callAsFunction):
              (KJS::StringProtoFuncBig::callAsFunction):
              (KJS::StringProtoFuncSmall::callAsFunction):
              (KJS::StringProtoFuncBlink::callAsFunction):
              (KJS::StringProtoFuncBold::callAsFunction):
              (KJS::StringProtoFuncFixed::callAsFunction):
              (KJS::StringProtoFuncItalics::callAsFunction):
              (KJS::StringProtoFuncStrike::callAsFunction):
              (KJS::StringProtoFuncSub::callAsFunction):
              (KJS::StringProtoFuncSup::callAsFunction):
              (KJS::StringProtoFuncFontcolor::callAsFunction):
              (KJS::StringProtoFuncFontsize::callAsFunction):
              (KJS::StringProtoFuncAnchor::callAsFunction):
              (KJS::StringProtoFuncLink::callAsFunction):
              * kjs/string_object.h:
      
      WebCore:
      
              Reviewed by Darin.
      
              Convert JavaScript internal function objects to use one class per
              function.  This avoids a switch statement inside what used to be
              the shared function classes and will allow Shark to better analyze
              the code.
      
              To make this switch, the value property of the HashEntry was changed
              to a union of an intptr_t (which is used to continue handle valueGetters)
              and function pointer which points to a static constructor for the
              individual new function objects.
      
              SunSpider claims this is a 0.5% speedup.
      
              - On the WebCore side, I updated CodeGeneratorJS.pm to generate the
                new classes and hand updated the remain non-generated (groan) classes.
      
              * bindings/js/JSDOMWindowCustom.cpp:
              (WebCore::JSDOMWindow::customGetOwnPropertySlot):
              * bindings/js/JSEventTargetNode.cpp:
              (WebCore::JSEventTargetNodePrototypeFunctionAddEventListener::callAsFunction):
              (WebCore::JSEventTargetNodePrototypeFunctionRemoveEventListener::callAsFunction):
              (WebCore::JSEventTargetNodePrototypeFunctionDispatchEvent::callAsFunction):
              * bindings/js/JSEventTargetNode.h:
              * bindings/js/JSHTMLInputElementBase.cpp:
              (WebCore::JSHTMLInputElementBaseFunctionSetSelectionRange::callAsFunction):
              (WebCore::JSHTMLInputElementBase::getOwnPropertySlot):
              * bindings/js/JSHTMLInputElementBase.h:
              (WebCore::JSHTMLInputElementBase::):
              * bindings/js/JSXMLHttpRequest.cpp:
              (KJS::JSXMLHttpRequestPrototypeFunctionAbort::callAsFunction):
              (KJS::JSXMLHttpRequestPrototypeFunctionGetAllResponseHeaders::callAsFunction):
              (KJS::JSXMLHttpRequestPrototypeFunctionGetResponseHeader::callAsFunction):
              (KJS::JSXMLHttpRequestPrototypeFunctionOpen::callAsFunction):
              (KJS::JSXMLHttpRequestPrototypeFunctionSend::callAsFunction):
              (KJS::JSXMLHttpRequestPrototypeFunctionSetRequestHeader::callAsFunction):
              (KJS::JSXMLHttpRequestPrototypeFunctionOverrideMIMEType::callAsFunction):
              (KJS::JSXMLHttpRequestPrototypeFunctionAddEventListener::callAsFunction):
              (KJS::JSXMLHttpRequestPrototypeFunctionRemoveEventListener::callAsFunction):
              (KJS::JSXMLHttpRequestPrototypeFunctionDispatchEvent::callAsFunction):
              * bindings/js/JSXMLHttpRequest.h:
              (KJS::JSXMLHttpRequest::impl):
              * bindings/js/JSXSLTProcessor.cpp:
              (KJS::JSXSLTProcessorPrototypeFunctionImportStylesheet::callAsFunction):
              (KJS::JSXSLTProcessorPrototypeFunctionTransformToFragment::callAsFunction):
              (KJS::JSXSLTProcessorPrototypeFunctionTransformToDocument::callAsFunction):
              (KJS::JSXSLTProcessorPrototypeFunctionSetParameter::callAsFunction):
              (KJS::JSXSLTProcessorPrototypeFunctionGetParameter::callAsFunction):
              (KJS::JSXSLTProcessorPrototypeFunctionRemoveParameter::callAsFunction):
              (KJS::JSXSLTProcessorPrototypeFunctionClearParameters::callAsFunction):
              (KJS::JSXSLTProcessorPrototypeFunctionReset::callAsFunction):
              * bindings/js/JSXSLTProcessor.h:
              * bindings/js/kjs_events.cpp:
              (WebCore::JSClipboardPrototypeFunctionClearData::callAsFunction):
              (WebCore::JSClipboardPrototypeFunctionGetData::callAsFunction):
              (WebCore::JSClipboardPrototypeFunctionSetData::callAsFunction):
              (WebCore::JSClipboardPrototypeFunctionSetDragImage::callAsFunction):
              * bindings/js/kjs_events.h:
              * bindings/js/kjs_navigator.cpp:
              (KJS::Plugins::):
              (KJS::Navigator::getOwnPropertySlot):
              (KJS::Plugins::getOwnPropertySlot):
              (KJS::PluginsFunctionRefresh::callAsFunction):
              (KJS::NavigatorProtoFuncJavaEnabled::callAsFunction):
              * bindings/js/kjs_navigator.h:
              (KJS::Navigator::):
              * bindings/js/kjs_window.cpp:
              (KJS::Window::getOwnPropertySlot):
              (KJS::Window::put):
              (KJS::WindowProtoFuncAToB::callAsFunction):
              (KJS::WindowProtoFuncBToA::callAsFunction):
              (KJS::WindowProtoFuncOpen::callAsFunction):
              (KJS::WindowProtoFuncScrollBy::callAsFunction):
              (KJS::WindowProtoFuncScrollTo::callAsFunction):
              (KJS::WindowProtoFuncMoveBy::callAsFunction):
              (KJS::WindowProtoFuncMoveTo::callAsFunction):
              (KJS::WindowProtoFuncResizeBy::callAsFunction):
              (KJS::WindowProtoFuncResizeTo::callAsFunction):
              (KJS::WindowProtoFuncSetTimeout::callAsFunction):
              (KJS::WindowProtoFuncClearTimeout::callAsFunction):
              (KJS::WindowProtoFuncSetInterval::callAsFunction):
              (KJS::WindowProtoFuncAddEventListener::callAsFunction):
              (KJS::WindowProtoFuncRemoveEventListener::callAsFunction):
              (KJS::WindowProtoFuncShowModalDialog::callAsFunction):
              (KJS::WindowProtoFuncNotImplemented::callAsFunction):
              (KJS::Location::getOwnPropertySlot):
              (KJS::Location::put):
              (KJS::LocationProtoFuncReplace::callAsFunction):
              (KJS::LocationProtoFuncReload::callAsFunction):
              (KJS::LocationProtoFuncAssign::callAsFunction):
              (KJS::LocationProtoFuncToString::callAsFunction):
              * bindings/js/kjs_window.h:
              (KJS::Window::):
              * bindings/scripts/CodeGeneratorJS.pm:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@27608 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      a73c15f5
  3. 05 Nov, 2007 1 commit
    • ggaren's avatar
      JavaScriptCore: · 879ab75a
      ggaren authored
              Reviewed by Darin Adler.
              
              http://bugs.webkit.org/show_bug.cgi?id=15835
      
              Switched List implementation from a custom heap allocator to an inline
              Vector, for a disappointing .5% SunSpider speedup.
              
              Also renamed List::slice to List::getSlice because "get" is the 
              conventional prefix for functions returning a value through an out 
              parameter.
      
              * kjs/array_object.cpp:
              (KJS::ArrayProtoFunc::callAsFunction): Removed some redundant function
              calls and memory accesses.
      
              * kjs/bool_object.cpp:
              (BooleanObjectImp::construct): Removed questionable use of iterator.
      
              * kjs/list.cpp:
              * kjs/list.h: New List class, implemented in terms of Vector. Two 
              interesting differences:
                  1. The inline capacity is 8, not 5. Many of the Lists constructed 
                  during a SunSpider run are larger than 5; almost none are larger
                  than 8.
      
                  2. The growth factor is 4, not 2. Since we can guarantee that Lists
                  aren't long-lived, we can grow them more aggressively, to avoid
                  excessive copying.
      
              * kjs/regexp_object.cpp:
              (RegExpObjectImp::construct): Removed redundant function calls.
      
              * kjs/string_object.cpp:
              (KJS::StringObjectImp::construct): Removed questionable use of iterator.
      
              * wtf/Vector.h:
              (WTF::::uncheckedAppend): Added a fast, unchecked version of append.
      
      WebCore:
      
              Reviewed by Darin Adler.
              
              http://bugs.webkit.org/show_bug.cgi?id=15835
      
              Small adaptations to new KJS::List class.
      
              * bindings/js/kjs_window.cpp:
              (KJS::WindowFunc::callAsFunction):
              (KJS::ScheduledAction::ScheduledAction):
      
      WebKit:
      
              Reviewed by Darin Adler.
              
              http://bugs.webkit.org/show_bug.cgi?id=15835
      
              Small adaptations to new KJS::List class.
      
              * ForwardingHeaders/kjs/value.h: Added.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@27448 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      879ab75a
  4. 04 Nov, 2007 1 commit
  5. 03 Nov, 2007 1 commit
    • weinig@apple.com's avatar
      JavaScriptCore: · a845d282
      weinig@apple.com authored
              Reviewed by Oliver.
      
              Remove dummy variable from ClassInfo reducing the size of the struct by 1 word.
              The variable had been kept around for binary compatibility, but since nothing
              else is there is no point in continuing to keep it around.
      
              * API/JSCallbackConstructor.cpp:
              (KJS::):
              * API/JSCallbackFunction.cpp:
              (KJS::):
              * API/JSCallbackObject.cpp:
              (KJS::):
              * bindings/objc/objc_runtime.mm:
              * bindings/runtime_array.cpp:
              * bindings/runtime_object.cpp:
              * kjs/array_instance.cpp:
              (KJS::):
              * kjs/array_object.cpp:
              (KJS::):
              * kjs/bool_object.cpp:
              * kjs/date_object.cpp:
              (KJS::):
              * kjs/error_object.cpp:
              * kjs/function.cpp:
              (KJS::):
              * kjs/internal.cpp:
              (KJS::):
              * kjs/lookup.h:
              * kjs/math_object.cpp:
              * kjs/number_object.cpp:
              * kjs/object.h:
              * kjs/regexp_object.cpp:
              * kjs/string_object.cpp:
              (KJS::):
      
      WebCore:
      
              Reviewed by Oliver.
      
              Remove dummy variable from ClassInfo reducing the size of the struct by 1 word.
              The variable had been kept around for binary compatibility, but since nothing
              else is there is no point in continuing to keep it around.
      
              * bindings/js/JSDOMExceptionConstructor.cpp:
              (WebCore::):
              * bindings/js/JSHTMLInputElementBase.cpp:
              (WebCore::):
              * bindings/js/JSNamedNodesCollection.cpp:
              (WebCore::):
              * bindings/js/JSXMLHttpRequest.cpp:
              (KJS::):
              * bindings/js/JSXSLTProcessor.cpp:
              (KJS::):
              * bindings/js/kjs_css.cpp:
              (WebCore::):
              * bindings/js/kjs_events.cpp:
              (WebCore::):
              * bindings/js/kjs_navigator.cpp:
              (KJS::):
              * bindings/js/kjs_window.cpp:
              (KJS::):
              * bindings/scripts/CodeGeneratorJS.pm:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@27413 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      a845d282
  6. 02 Nov, 2007 1 commit
    • darin@apple.com's avatar
      JavaScriptCore: · 387d7a0e
      darin@apple.com authored
              Reviewed by Maciej.
      
              - http://bugs.webkit.org/show_bug.cgi?id=15807
                HashMap needs a take() function that combines get and remove
      
              * wtf/HashMap.h: Added take function. Simplistic implementation for now,
              but still does only one hash table lookup.
      
              * kjs/array_instance.cpp: (KJS::ArrayInstance::put): Use take rather than
              a find followed by a remove.
      
      WebCore:
      
              Reviewed by Maciej.
      
              - use the new HashMap::take function where appropriate
      
              * bindings/js/kjs_binding.cpp:
              (KJS::addWrapper): Made an inline rather than a macro; inlines good, macros bad.
              (KJS::removeWrapper): Ditto.
              (KJS::removeWrappers): Ditto.
              (KJS::ScriptInterpreter::putDOMObject): Use the inline instead of the macro.
              (KJS::ScriptInterpreter::forgetDOMObject): Ditto. This involves using take instead
              of remove -- in theory ever so slightly less efficient, but I think it's fine.
              (KJS::ScriptInterpreter::forgetDOMNodeForDocument): Ditto.
              (KJS::ScriptInterpreter::putDOMNodeForDocument): Use the inline instead of the macro.
              (KJS::ScriptInterpreter::forgetAllDOMNodesForDocument): Use take instead of find/remove.
              (KJS::ScriptInterpreter::updateDOMNodeDocument): Use the inlines instead of the macros.
      
              * bindings/js/kjs_window.cpp: (KJS::Window::clearTimeout): Use take instead of find/remove.
              * bridge/mac/AXObjectCacheMac.mm: (WebCore::AXObjectCache::remove): Ditto.
              * page/AnimationController.cpp: (WebCore::AnimationControllerPrivate::clear): Ditto.
              * rendering/RenderBlock.cpp:
              (WebCore::RenderBlock::~RenderBlock): Ditto.
              (WebCore::RenderBlock::setDesiredColumnCountAndWidth): Ditto.
              * rendering/RootInlineBox.cpp: Ditto.(WebCore::RootInlineBox::detachEllipsisBox): Ditto.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@27385 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      387d7a0e
  7. 01 Nov, 2007 1 commit
    • ggaren's avatar
      JavaScriptCore: · f6701b3f
      ggaren authored
              Reviewed by Maciej Stachowiak.
              
              In preparation for making List a simple stack-allocated Vector:
      
              Removed all instances of List copying and/or assignment, and made List 
              inherit from Noncopyable.
              
              Functions that used to return a List by copy now take List& out 
              parameters.
              
              Layout tests and JS tests pass.
      
              * kjs/list.cpp:
              (KJS::List::slice): Replaced copyTail with a more generic slice 
              alternative. (JavaScriptCore only calls slice(1), but WebCore calls 
              slice(2)).
      
      WebCore:
      
              Reviewed by Maciej Stachowiak.
              
              In preparation for making List a simple stack-allocated Vector:
      
              Removed all instances of List copying, assignment, and/or storage.
              
              Layout tests and JS tests pass.
      
              * bindings/js/kjs_window.cpp:
              (KJS::WindowFunc::callAsFunction): Stores a Vector of protected 
              JSValue*'s instead of a List now. Converts to List on the fly when 
              calling the timer function. This is slightly less efficient, but the 
              common case is 0-2 arguments, so it's no biggie.
      
              (HTML iBench shows no regression. PLT does not use JS timers.)
              
              (KJS::ScheduledAction::execute): Uses the more efficient and non-copying
              List::slice now.
              (KJS::ScheduledAction::ScheduledAction): ditto
      
              * bindings/objc/WebScriptObject.mm:
              (getListFromNSArray): Takes a List out parameter now, to avoid copying.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@27373 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      f6701b3f
  8. 30 Oct, 2007 1 commit
    • antti's avatar
      Rubber stamped by Adele. · 76787a87
      antti authored
              Initial media (<video> and <audio>) support from feature branch and 
              QTKit based platform implementation.
              
              This will need to be updated to match current draft specification.
      
              * Configurations/WebCore.xcconfig:
              * DerivedSources.make:
              * WebCore.base.exp:
              * WebCore.xcodeproj/project.pbxproj:
              * bindings/js/JSEventCustom.cpp:
              (WebCore::toJS):
              * bindings/js/JSHTMLAudioElementConstructor.cpp: Added.
              (WebCore::JSHTMLAudioElementConstructor::JSHTMLAudioElementConstructor):
              (WebCore::JSHTMLAudioElementConstructor::implementsConstruct):
              (WebCore::JSHTMLAudioElementConstructor::construct):
              * bindings/js/JSHTMLAudioElementConstructor.h: Added.
              * bindings/js/JSHTMLElementWrapperFactory.cpp:
              (WebCore::createJSHTMLWrapper):
              * bindings/js/kjs_window.cpp:
              (KJS::Window::getValueProperty):
              * bindings/js/kjs_window.h:
              (KJS::Window::):
              * bindings/scripts/CodeGeneratorJS.pm:
              * dom/Document.cpp:
              (WebCore::Document::createEvent):
              (WebCore::Document::willSaveToCache):
              (WebCore::Document::didRestoreFromCache):
              (WebCore::Document::registerForCacheCallbacks):
              (WebCore::Document::unregisterForCacheCallbacks):
              * dom/Document.h:
              * dom/Element.cpp:
              (WebCore::Element::setBooleanAttribute):
              * dom/Element.h:
              (WebCore::Element::willSaveToCache):
              * dom/Event.cpp:
              (WebCore::Event::isProgressEvent):
              * dom/Event.h:
              * dom/EventNames.h:
              * dom/EventTargetNode.cpp:
              (WebCore::EventTargetNode::dispatchProgressEvent):
              * dom/EventTargetNode.h:
              * dom/ProgressEvent.cpp: Added.
              (WebCore::ProgressEvent::ProgressEvent):
              (WebCore::ProgressEvent::initProgressEvent):
              (WebCore::ProgressEvent::initProgressEventNS):
              * dom/ProgressEvent.h: Added.
              (WebCore::ProgressEvent::lengthComputable):
              (WebCore::ProgressEvent::loaded):
              (WebCore::ProgressEvent::total):
              (WebCore::ProgressEvent::isProgressEvent):
              * dom/ProgressEvent.idl: Added.
              * history/CachedPage.cpp:
              (WebCore::CachedPage::CachedPage):
              * html/HTMLAttributeNames.in:
              * html/HTMLAudioElement.cpp: Added.
              (WebCore::HTMLAudioElement::HTMLAudioElement):
              * html/HTMLAudioElement.h: Added.
              (WebCore::HTMLAudioElement::tagPriority):
              * html/HTMLAudioElement.idl: Added.
              * html/HTMLElement.cpp:
              (WebCore::inlineTagList):
              * html/HTMLElementFactory.cpp:
              (WebCore::audioConstructor):
              (WebCore::videoConstructor):
              (WebCore::sourceConstructor):
              (WebCore::createFunctionMap):
              * html/HTMLInputElement.cpp:
              (WebCore::HTMLInputElement::~HTMLInputElement):
              (WebCore::HTMLInputElement::setInputType):
              (WebCore::HTMLInputElement::willMoveToNewOwnerDocument):
              (WebCore::HTMLInputElement::didMoveToNewOwnerDocument):
              * html/HTMLMediaElement.cpp: Added.
              (WebCore::HTMLMediaElement::HTMLMediaElement):
              (WebCore::HTMLMediaElement::~HTMLMediaElement):
              (WebCore::HTMLMediaElement::checkDTD):
              (WebCore::HTMLMediaElement::rendererIsNeeded):
              (WebCore::HTMLMediaElement::createRenderer):
              (WebCore::HTMLMediaElement::insertedIntoDocument):
              (WebCore::HTMLMediaElement::removedFromDocument):
              (WebCore::HTMLMediaElement::scheduleLoad):
              (WebCore::HTMLMediaElement::initAndDispatchProgressEvent):
              (WebCore::HTMLMediaElement::dispatchEventAsync):
              (WebCore::HTMLMediaElement::loadTimerFired):
              (WebCore::HTMLMediaElement::asyncEventTimerFired):
              (WebCore::serializeTimeOffset):
              (WebCore::parseTimeOffset):
              (WebCore::HTMLMediaElement::getTimeOffsetAttribute):
              (WebCore::HTMLMediaElement::setTimeOffsetAttribute):
              (WebCore::HTMLMediaElement::error):
              (WebCore::HTMLMediaElement::src):
              (WebCore::HTMLMediaElement::HTMLMediaElement::setSrc):
              (WebCore::HTMLMediaElement::currentSrc):
              (WebCore::HTMLMediaElement::networkState):
              (WebCore::HTMLMediaElement::bufferingRate):
              (WebCore::HTMLMediaElement::load):
              (WebCore::HTMLMediaElement::movieNetworkStateChanged):
              (WebCore::HTMLMediaElement::movieReadyStateChanged):
              (WebCore::HTMLMediaElement::setReadyState):
              (WebCore::HTMLMediaElement::progressEventTimerFired):
              (WebCore::HTMLMediaElement::seek):
              (WebCore::HTMLMediaElement::readyState):
              (WebCore::HTMLMediaElement::seeking):
              (WebCore::HTMLMediaElement::currentTime):
              (WebCore::HTMLMediaElement::setCurrentTime):
              (WebCore::HTMLMediaElement::duration):
              (WebCore::HTMLMediaElement::paused):
              (WebCore::HTMLMediaElement::defaultPlaybackRate):
              (WebCore::HTMLMediaElement::setDefaultPlaybackRate):
              (WebCore::HTMLMediaElement::playbackRate):
              (WebCore::HTMLMediaElement::setPlaybackRate):
              (WebCore::HTMLMediaElement::ended):
              (WebCore::HTMLMediaElement::autoplay):
              (WebCore::HTMLMediaElement::setAutoplay):
              (WebCore::HTMLMediaElement::play):
              (WebCore::HTMLMediaElement::pause):
              (WebCore::HTMLMediaElement::loopCount):
              (WebCore::HTMLMediaElement::setLoopCount):
              (WebCore::HTMLMediaElement::start):
              (WebCore::HTMLMediaElement::setStart):
              (WebCore::HTMLMediaElement::end):
              (WebCore::HTMLMediaElement::setEnd):
              (WebCore::HTMLMediaElement::loopStart):
              (WebCore::HTMLMediaElement::setLoopStart):
              (WebCore::HTMLMediaElement::loopEnd):
              (WebCore::HTMLMediaElement::setLoopEnd):
              (WebCore::HTMLMediaElement::currentLoop):
              (WebCore::HTMLMediaElement::setCurrentLoop):
              (WebCore::HTMLMediaElement::controls):
              (WebCore::HTMLMediaElement::setControls):
              (WebCore::HTMLMediaElement::volume):
              (WebCore::HTMLMediaElement::setVolume):
              (WebCore::HTMLMediaElement::muted):
              (WebCore::HTMLMediaElement::setMuted):
              (WebCore::HTMLMediaElement::pickMedia):
              (WebCore::HTMLMediaElement::checkIfSeekNeeded):
              (WebCore::HTMLMediaElement::movieVolumeChanged):
              (WebCore::HTMLMediaElement::movieDidEnd):
              (WebCore::HTMLMediaElement::movieCuePointReached):
              (WebCore::HTMLMediaElement::addCuePoint):
              (WebCore::HTMLMediaElement::removeCuePoint):
              (WebCore::HTMLMediaElement::buffered):
              (WebCore::HTMLMediaElement::played):
              (WebCore::HTMLMediaElement::seekable):
              (WebCore::HTMLMediaElement::effectiveStart):
              (WebCore::HTMLMediaElement::effectiveEnd):
              (WebCore::HTMLMediaElement::effectiveLoopStart):
              (WebCore::HTMLMediaElement::effectiveLoopEnd):
              (WebCore::HTMLMediaElement::activelyPlaying):
              (WebCore::HTMLMediaElement::endedPlayback):
              (WebCore::HTMLMediaElement::willSaveToCache):
              (WebCore::HTMLMediaElement::didRestoreFromCache):
              * html/HTMLMediaElement.h: Added.
              (WebCore::HTMLMediaElement::movie):
              (WebCore::HTMLMediaElement::isVideo):
              (WebCore::HTMLMediaElement::):
              (WebCore::HTMLMediaElement::CallbackEntry::CallbackEntry):
              * html/HTMLMediaElement.idl: Added.
              * html/HTMLSourceElement.cpp: Added.
              (WebCore::HTMLSourceElement::HTMLSourceElement):
              (WebCore::HTMLSourceElement::~HTMLSourceElement):
              (WebCore::HTMLSourceElement::insertedIntoDocument):
              (WebCore::HTMLSourceElement::src):
              (WebCore::HTMLSourceElement::setSrc):
              (WebCore::HTMLSourceElement::media):
              (WebCore::HTMLSourceElement::setMedia):
              (WebCore::HTMLSourceElement::type):
              (WebCore::HTMLSourceElement::setType):
              * html/HTMLSourceElement.h: Added.
              (WebCore::HTMLSourceElement::endTagRequirement):
              (WebCore::HTMLSourceElement::tagPriority):
              * html/HTMLSourceElement.idl: Added.
              * html/HTMLTagNames.in:
              * html/HTMLVideoElement.cpp: Added.
              (WebCore::HTMLVideoElement::HTMLVideoElement):
              (WebCore::HTMLVideoElement::videoWidth):
              (WebCore::HTMLVideoElement::videoHeight):
              * html/HTMLVideoElement.h: Added.
              (WebCore::HTMLVideoElement::tagPriority):
              (WebCore::HTMLVideoElement::isVideo):
              * html/HTMLVideoElement.idl: Added.
              * html/MediaError.h: Added.
              (WebCore::MediaError::):
              (WebCore::MediaError::MediaError):
              (WebCore::MediaError::code):
              * html/MediaError.idl: Added.
              * html/TimeRanges.cpp: Added.
              (TimeRanges::TimeRanges):
              (TimeRanges::start):
              (TimeRanges::end):
              (TimeRanges::add):
              (TimeRanges::contain):
              * html/TimeRanges.h: Added.
              (WebCore::TimeRanges::TimeRanges):
              (WebCore::TimeRanges::length):
              (WebCore::TimeRanges::Range::Range):
              * html/TimeRanges.idl: Added.
              * page/DOMWindow.idl:
              * platform/MIMETypeRegistry.cpp:
              (WebCore::initialiseSupportedMovieMIMETypes):
              (WebCore::initialiseMIMETypeRegistry):
              (WebCore::MIMETypeRegistry::isSupportedMovieMIMEType):
              (WebCore::MIMETypeRegistry::getSupportedMovieMIMETypes):
              * platform/MIMETypeRegistry.h:
              * platform/graphics/Movie.cpp: Added.
              (WebCore::Movie::Movie):
              (WebCore::Movie::~Movie):
              (WebCore::Movie::load):
              (WebCore::Movie::cancelLoad):
              (WebCore::Movie::play):
              (WebCore::Movie::pause):
              (WebCore::Movie::duration):
              (WebCore::Movie::currentTime):
              (WebCore::Movie::seek):
              (WebCore::Movie::paused):
              (WebCore::Movie::seeking):
              (WebCore::Movie::naturalSize):
              (WebCore::Movie::hasVideo):
              (WebCore::Movie::networkState):
              (WebCore::Movie::readyState):
              (WebCore::Movie::volume):
              (WebCore::Movie::setVolume):
              (WebCore::Movie::rate):
              (WebCore::Movie::setRate):
              (WebCore::Movie::muted):
              (WebCore::Movie::setMuted):
              (WebCore::Movie::dataRate):
              (WebCore::Movie::setEndTime):
              (WebCore::Movie::addCuePoint):
              (WebCore::Movie::removeCuePoint):
              (WebCore::Movie::clearCuePoints):
              (WebCore::Movie::maxTimeBuffered):
              (WebCore::Movie::maxTimeSeekable):
              (WebCore::Movie::bytesLoaded):
              (WebCore::Movie::totalBytesKnown):
              (WebCore::Movie::totalBytes):
              (WebCore::Movie::setRect):
              (WebCore::Movie::visible):
              (WebCore::Movie::setVisible):
              (WebCore::Movie::paint):
              (WebCore::Movie::getSupportedTypes):
              (WebCore::Movie::networkStateChanged):
              (WebCore::Movie::readyStateChanged):
              (WebCore::Movie::volumeChanged):
              (WebCore::Movie::didEnd):
              (WebCore::Movie::cuePointReached):
              * platform/graphics/Movie.h: Added.
              (WebCore::MovieClient::~MovieClient):
              (WebCore::MovieClient::movieNetworkStateChanged):
              (WebCore::MovieClient::movieReadyStateChanged):
              (WebCore::MovieClient::movieVolumeChanged):
              (WebCore::MovieClient::movieDidEnd):
              (WebCore::MovieClient::movieCuePointReached):
              (WebCore::Movie::parentWidget):
              (WebCore::Movie::setParentWidget):
              (WebCore::Movie::rect):
              (WebCore::Movie::):
              * platform/graphics/mac/MoviePrivateQTKit.h: Added.
              * platform/graphics/mac/MoviePrivateQTKit.mm: Added.
              (WebCore::MoviePrivate::MoviePrivate):
              (WebCore::MoviePrivate::~MoviePrivate):
              (WebCore::MoviePrivate::createQTMovie):
              (WebCore::MoviePrivate::createQTMovieView):
              (WebCore::MoviePrivate::createQTTime):
              (WebCore::MoviePrivate::load):
              (WebCore::MoviePrivate::play):
              (WebCore::MoviePrivate::pause):
              (WebCore::MoviePrivate::duration):
              (WebCore::MoviePrivate::currentTime):
              (WebCore::MoviePrivate::seek):
              (WebCore::MoviePrivate::setEndTime):
              (WebCore::MoviePrivate::addCuePoint):
              (WebCore::MoviePrivate::removeCuePoint):
              (WebCore::MoviePrivate::clearCuePoints):
              (WebCore::MoviePrivate::startCuePointTimerIfNeeded):
              (WebCore::MoviePrivate::cancelSeek):
              (WebCore::MoviePrivate::seekTimerFired):
              (WebCore::MoviePrivate::cuePointTimerFired):
              (WebCore::MoviePrivate::paused):
              (WebCore::MoviePrivate::seeking):
              (WebCore::MoviePrivate::naturalSize):
              (WebCore::MoviePrivate::hasVideo):
              (WebCore::MoviePrivate::setVolume):
              (WebCore::MoviePrivate::setMuted):
              (WebCore::MoviePrivate::setRate):
              (WebCore::MoviePrivate::dataRate):
              (WebCore::MoviePrivate::networkState):
              (WebCore::MoviePrivate::readyState):
              (WebCore::MoviePrivate::maxTimeBuffered):
              (WebCore::MoviePrivate::maxTimeSeekable):
              (WebCore::MoviePrivate::maxTimeLoaded):
              (WebCore::MoviePrivate::bytesLoaded):
              (WebCore::MoviePrivate::totalBytesKnown):
              (WebCore::MoviePrivate::totalBytes):
              (WebCore::MoviePrivate::cancelLoad):
              (WebCore::MoviePrivate::updateStates):
              (WebCore::MoviePrivate::loadStateChanged):
              (WebCore::MoviePrivate::rateChanged):
              (WebCore::MoviePrivate::sizeChanged):
              (WebCore::MoviePrivate::timeChanged):
              (WebCore::MoviePrivate::volumeChanged):
              (WebCore::MoviePrivate::didEnd):
              (WebCore::MoviePrivate::setRect):
              (WebCore::MoviePrivate::setVisible):
              (WebCore::MoviePrivate::paint):
              (WebCore::MoviePrivate::getSupportedTypes):
              (-[WebCoreMovieObserver loadStateChanged:]):
              (-[WebCoreMovieObserver rateChanged:]):
              (-[WebCoreMovieObserver sizeChanged:]):
              (-[WebCoreMovieObserver timeChanged:]):
              (-[WebCoreMovieObserver volumeChanged:]):
              (-[WebCoreMovieObserver didEnd:]):
              (-[WebCoreMovieObserver setCallback:WebCore::]):
              * platform/mac/WebCoreSystemInterface.h:
              * platform/mac/WebCoreSystemInterface.mm:
              * rendering/RenderLayer.cpp:
              (WebCore::RenderLayer::collectLayers):
              * rendering/RenderVideo.cpp: Added.
              (WebCore::RenderVideo::RenderVideo):
              (WebCore::RenderVideo::~RenderVideo):
              (WebCore::RenderVideo::movie):
              (WebCore::RenderVideo::videoSizeChanged):
              (WebCore::RenderVideo::paint):
              (WebCore::RenderVideo::layout):
              (WebCore::RenderVideo::updateFromElement):
              (WebCore::RenderVideo::updateMovie):
              (WebCore::RenderVideo::isWidthSpecified):
              (WebCore::RenderVideo::isHeightSpecified):
              (WebCore::RenderVideo::calcReplacedWidth):
              (WebCore::RenderVideo::calcReplacedHeight):
              (WebCore::RenderVideo::calcAspectRatioWidth):
              (WebCore::RenderVideo::calcAspectRatioHeight):
              (WebCore::RenderVideo::calcPrefWidths):
              * rendering/RenderVideo.h: Added.
              (WebCore::RenderVideo::renderName):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@27277 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      76787a87
  9. 28 Oct, 2007 1 commit
    • mjs's avatar
      JavaScriptCore: · b8faa9e7
      mjs authored
              Reviewed by Mark.
              
              - Added assertions to protect against adding empty or deleted keys to a HashTable
      
              * wtf/HashTable.h:
              (WTF::HashTable::lookup):
              (WTF::HashTable::lookupForWriting):
              (WTF::HashTable::fullLookupForWriting):
              (WTF::HashTable::add):
      
      WebCore:
      
              Reviewed by Mark.
      
              - fixed REGRESSION(r27176): Reproducible crash while trying to order dinner makes bdash sad
              http://bugs.webkit.org/show_bug.cgi?id=15731
      
              * bindings/js/kjs_window.cpp:
              (KJS::Window::installTimeout): Avoid putting in or accessing empty or deleted keys.
              (KJS::Window::clearTimeout): ditto
              * manual-tests/bad-clearTimeout-crash.html: Added. Automated test not possible.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@27196 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      b8faa9e7
  10. 26 Oct, 2007 1 commit
    • tristan's avatar
      WebCore: · c0725471
      tristan authored
              Reviewed by Darin Adler.
      
              <rdar://problem/5555053> REGRESSION:9A581: Window disappears when opening http://research.microsoft.com/users/darkok/
              The problem was caused by checkin r24654. This change moved explicit bounds checking into adjustWindowRect
              but failed to account for bounds checking (instead replaced with bounds clipping).  This caused issues
              when NaN was used. This patch goes one step further and does NaN checking to prevent the possibility of
              setting window bounds to NaN before an update occurs.
      
              Test: fast/dom/Window/window-resize-nan.html
              
              * bindings/js/kjs_window.cpp:
              (KJS::adjustWindowRect):
              Added a new parameter, pendingChanges, which takes pending changes to the window
              rect, and if they are valid (not NaN) sets them on window.
              
              (KJS::WindowFunc::callAsFunction):
              Adjusted uses of adjustWindowRect to take new update parameter.
      
      LayoutTests:
      
              Reviewed by Darin Adler.
              
              Added new test cases to handle non-number input to window adjusting
              functions like resizeTo, resizeBy, moveTo, and moveBy for 
              <rdar://problem/5555053>.
      
              * fast/dom/Window/window-resize-nan-expected.txt: Added.
              * fast/dom/Window/window-resize-nan.html: Added.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@27118 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c0725471
  11. 25 Oct, 2007 1 commit
    • eseidel's avatar
      2007-10-24 Eric Seidel <eric@webkit.org> · 5417cd59
      eseidel authored
              Reviewed by Maciej.
              
              Add a JSGlobalObject class and remove the InterpreterMap
              http://bugs.webkit.org/show_bug.cgi?id=15681
              
              This required making JSCallbackObject a template class to allow for
              JSGlobalObjects with JSCallbackObject functionality.
              
              SunSpider claims this was a 0.5% speedup.
      
              * API/JSCallbackObject.cpp:
              (KJS::):
              * API/JSCallbackObject.h:
              * API/JSCallbackObjectFunctions.h: Copied from API/JSCallbackObject.cpp.
              (KJS::::JSCallbackObject):
              (KJS::::init):
              (KJS::::~JSCallbackObject):
              (KJS::::initializeIfNeeded):
              (KJS::::className):
              (KJS::::getOwnPropertySlot):
              (KJS::::put):
              (KJS::::deleteProperty):
              (KJS::::implementsConstruct):
              (KJS::::construct):
              (KJS::::implementsHasInstance):
              (KJS::::hasInstance):
              (KJS::::implementsCall):
              (KJS::::callAsFunction):
              (KJS::::getPropertyNames):
              (KJS::::toNumber):
              (KJS::::toString):
              (KJS::::setPrivate):
              (KJS::::getPrivate):
              (KJS::::inherits):
              (KJS::::cachedValueGetter):
              (KJS::::staticValueGetter):
              (KJS::::staticFunctionGetter):
              (KJS::::callbackGetter):
              * API/JSClassRef.cpp:
              (OpaqueJSClass::prototype):
              * API/JSContextRef.cpp:
              (JSGlobalContextCreate):
              * API/JSObjectRef.cpp:
              (JSObjectMake):
              (JSObjectGetPrivate):
              (JSObjectSetPrivate):
              * API/JSValueRef.cpp:
              (JSValueIsObjectOfClass):
              * JavaScriptCore.exp:
              * JavaScriptCore.xcodeproj/project.pbxproj:
              * bindings/c/c_utility.cpp:
              (KJS::Bindings::convertValueToNPVariant):
              * bindings/jni/jni_jsobject.cpp:
              * bindings/objc/objc_utility.mm:
              (KJS::Bindings::convertValueToObjcValue):
              * kjs/Context.cpp:
              (KJS::Context::Context):
              * kjs/ExecState.cpp:
              (KJS::ExecState::lexicalInterpreter):
              * kjs/JSGlobalObject.h: Added.
              (KJS::JSGlobalObject::JSGlobalObject):
              (KJS::JSGlobalObject::isGlobalObject):
              (KJS::JSGlobalObject::interpreter):
              (KJS::JSGlobalObject::setInterpreter):
              * kjs/array_instance.cpp:
              * kjs/context.h:
              * kjs/function.cpp:
              (KJS::FunctionImp::callAsFunction):
              (KJS::GlobalFuncImp::callAsFunction):
              * kjs/interpreter.cpp:
              (KJS::Interpreter::Interpreter):
              (KJS::Interpreter::init):
              (KJS::Interpreter::~Interpreter):
              (KJS::Interpreter::globalObject):
              (KJS::Interpreter::initGlobalObject):
              (KJS::Interpreter::evaluate):
              * kjs/interpreter.h:
              * kjs/lookup.h:
              (KJS::cacheGlobalObject):
              * kjs/object.h:
              (KJS::JSObject::isGlobalObject):
              * kjs/testkjs.cpp:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@27022 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      5417cd59
  12. 24 Oct, 2007 1 commit
  13. 19 Oct, 2007 1 commit
    • weinig's avatar
      WebCore: · e06430af
      weinig authored
              Reviewed by Darin.
      
              Encapsulate the same origin check into the new SecurityOrigin class.
      
              * WebCore.xcodeproj/project.pbxproj:
              * bindings/js/kjs_window.cpp:
              (KJS::Window::isSafeScript):
              * dom/Document.cpp:
              (WebCore::Document::Document):
              (WebCore::Document::defaultEventHandler):
              * dom/Document.h:
              (WebCore::Document::securityOrigin):
              * loader/FrameLoader.cpp:
              (WebCore::FrameLoader::begin):
              (WebCore::FrameLoader::setOpener):
              * loader/FrameLoader.h:
              * platform/SecurityOrigin.cpp: Added.
              (WebCore::SecurityOrigin::SecurityOrigin):
              (WebCore::SecurityOrigin::clear):
              (WebCore::SecurityOrigin::isEmpty):
              (WebCore::SecurityOrigin::setForFrame):
              (WebCore::SecurityOrigin::setDomainFromDOM):
              (WebCore::SecurityOrigin::allowsAccessFrom):
              (WebCore::SecurityOrigin::isSecureTransitionTo):
              * platform/SecurityOrigin.h: Added.
      
      LayoutTests:
      
              Reviewed by Darin.
      
              Update results after changing the warning message in isSafeScript to print the frame URL 
              rather than the security domain URL.  This now also prints the warning when using data:
              URLs because we no longer return early.
      
              * http/tests/security/dataURL/xss-DENIED-from-data-url-sub-frame-2-level-expected.txt:
              * http/tests/security/dataURL/xss-DENIED-from-data-url-sub-frame-expected.txt:
              * http/tests/security/dataURL/xss-DENIED-from-data-url-sub-frame-to-data-url-sub-frame-expected.txt:
              * http/tests/security/dataURL/xss-DENIED-from-javascript-url-window-open-expected.txt:
              * http/tests/security/dataURL/xss-DENIED-to-data-url-from-data-url-expected.txt:
              * http/tests/security/dataURL/xss-DENIED-to-data-url-sub-frame-2-level-expected.txt:
              * http/tests/security/dataURL/xss-DENIED-to-data-url-sub-frame-expected.txt:
              * http/tests/security/dataURL/xss-DENIED-to-data-url-sub-frame-uppercase-expected.txt:
              * http/tests/security/dataURL/xss-DENIED-to-data-url-window-open-expected.txt:
              * http/tests/security/javascriptURL/xss-DENIED-from-javascipt-url-in-foreign-domain-subframe-expected.txt:
              * http/tests/security/javascriptURL/xss-DENIED-from-javascipt-url-in-foreign-domain-window-open-expected.txt:
              * http/tests/security/javascriptURL/xss-DENIED-to-javascipt-url-in-foreign-domain-subframe-expected.txt:
              * http/tests/security/javascriptURL/xss-DENIED-to-javascipt-url-in-foreign-domain-window-open-expected.txt:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@26780 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      e06430af
  14. 15 Oct, 2007 1 commit
    • kmccullo's avatar
      WebCore: · 8b7f6142
      kmccullo authored
              Reviewed by Darin.
      
              - <rdar://problem/5238818> window.resizeTo doesn't restrict the resized window to the size of the screen
              - Now we take the doc into account when resizing.
              - Also I found an issue where we would resize to outside the window, because the resize would be smaller than the window size but the location of the window would make the resize go off-screen.  Now we move the window back into the screen.
      
              * bindings/js/kjs_window.cpp:
              (KJS::adjustWindowRect):
              (KJS::WindowFunc::callAsFunction):
      
      LayoutTests:
      
              Reviewed by Darin.
      
              - <rdar://problem/5238818> window.resizeTo doesn't restrict the resized window to the size of the screen
              - Now we take the dock into account when resizing.
              - Also I found an issue where we would resize to outside the window, because the resize would be smaller than the window size but the location of the window would make the resize go off-screen.  Now we move the window back into the screen.
      
              * fast/dom/Window/window-resize-expected.txt:
              * fast/dom/Window/window-resize.html:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@26635 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      8b7f6142
  15. 14 Oct, 2007 1 commit
    • bdash's avatar
      2007-10-14 Mitz Pettel <mitz@webkit.org> · 8011ccd5
      bdash authored
              Reviewed by Maciej.
      
              - http://bugs.webkit.org/show_bug.cgi?id=15303
                Remove now-redundant code to restore dialog arguments after clear
      
              This patch reverts the kjs_window.* parts of r25576 because following
              r25783, window properties, including dialog arguments, are not cleared
              when the newly created modal dialog transitions to the document.
      
              * bindings/js/kjs_window.cpp:
              (KJS::WindowPrivate::WindowPrivate):
              (KJS::createWindow):
              (KJS::showModalDialog):
              (KJS::Window::clear):
              (KJS::WindowFunc::callAsFunction):
              (KJS::Window::setReturnValueSlot):
              * bindings/js/kjs_window.h:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@26584 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      8011ccd5
  16. 25 Sep, 2007 1 commit
    • ddkilzer's avatar
      JavaScriptCore: · c8eccecd
      ddkilzer authored
              Reviewed by Adam.
      
              - Fix http://bugs.webkit.org/show_bug.cgi?id=14885
                LGPL'ed files contain incorrect FSF address
      
              * COPYING.LIB:
              * bindings/testbindings.cpp:
              * kjs/AllInOneFile.cpp:
              * kjs/DateMath.cpp:
              * kjs/PropertyNameArray.cpp:
              * kjs/PropertyNameArray.h:
              * kjs/config.h:
      
      WebCore:
      
              Reviewed by Adam.
      
              - Fix http://bugs.webkit.org/show_bug.cgi?id=14885
                LGPL'ed files contain incorrect FSF address
      
              * LICENSE-LGPL-2:
              * LICENSE-LGPL-2.1:
              * WebCorePrefix.h:
              * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
              * bindings/js/JSDOMWindowCustom.cpp:
              * bindings/js/JSDocumentCustom.cpp:
              * bindings/js/JSHTMLCollectionCustom.cpp:
              * bindings/js/JSHTMLElementWrapperFactory.cpp:
              * bindings/js/JSHTMLElementWrapperFactory.h:
              * bindings/js/JSHTMLInputElementBase.cpp:
              * bindings/js/JSHTMLInputElementBase.h:
              * bindings/js/JSHTMLOptionElementConstructor.cpp:
              * bindings/js/JSHTMLOptionElementConstructor.h:
              * bindings/js/JSHTMLOptionsCollectionCustom.cpp:
              * bindings/js/JSHTMLSelectElementCustom.cpp:
              * bindings/js/JSNodeFilterCondition.cpp:
              * bindings/js/JSNodeFilterCondition.h:
              * bindings/js/JSNodeIteratorCustom.cpp:
              * bindings/js/JSSVGElementWrapperFactory.cpp:
              * bindings/js/JSSVGElementWrapperFactory.h:
              * bindings/js/JSSVGMatrixCustom.cpp:
              * bindings/js/JSSVGPathSegCustom.cpp:
              * bindings/js/JSSVGPathSegListCustom.cpp:
              * bindings/js/JSSVGPointListCustom.cpp:
              * bindings/js/JSTreeWalkerCustom.cpp:
              * bindings/js/JSXMLHttpRequest.cpp:
              * bindings/js/JSXMLHttpRequest.h:
              * bindings/js/kjs_binding.cpp:
              * bindings/js/kjs_binding.h:
              * bindings/js/kjs_css.cpp:
              * bindings/js/kjs_css.h:
              * bindings/js/kjs_dom.cpp:
              * bindings/js/kjs_dom.h:
              * bindings/js/kjs_events.cpp:
              * bindings/js/kjs_events.h:
              * bindings/js/kjs_html.cpp:
              * bindings/js/kjs_html.h:
              * bindings/js/kjs_navigator.cpp:
              * bindings/js/kjs_navigator.h:
              * bindings/js/kjs_proxy.cpp:
              * bindings/js/kjs_proxy.h:
              * bindings/js/kjs_window.cpp:
              * bindings/js/kjs_window.h:
              * bindings/objc/DOMImplementationFront.cpp:
              * bindings/objc/DOMImplementationFront.h:
              * bindings/scripts/CodeGenerator.pm:
              * bindings/scripts/CodeGeneratorJS.pm:
              * bindings/scripts/CodeGeneratorObjC.pm:
              * bindings/scripts/IDLParser.pm:
              * bindings/scripts/IDLStructure.pm:
              * bindings/scripts/generate-bindings.pl:
              * config.h:
              * css/CSSBorderImageValue.cpp:
              * css/CSSBorderImageValue.h:
              * css/CSSCharsetRule.cpp:
              * css/CSSCharsetRule.h:
              * css/CSSCharsetRule.idl:
              * css/CSSComputedStyleDeclaration.cpp:
              * css/CSSComputedStyleDeclaration.h:
              * css/CSSCursorImageValue.cpp:
              * css/CSSCursorImageValue.h:
              * css/CSSFontFaceRule.cpp:
              * css/CSSFontFaceRule.h:
              * css/CSSFontFaceRule.idl:
              * css/CSSGrammar.y:
              * css/CSSHelper.cpp:
              * css/CSSHelper.h:
              * css/CSSImageValue.cpp:
              * css/CSSImageValue.h:
              * css/CSSImportRule.cpp:
              * css/CSSImportRule.h:
              * css/CSSImportRule.idl:
              * css/CSSInheritedValue.cpp:
              * css/CSSInheritedValue.h:
              * css/CSSInitialValue.cpp:
              * css/CSSInitialValue.h:
              * css/CSSMediaRule.cpp:
              * css/CSSMediaRule.h:
              * css/CSSMediaRule.idl:
              * css/CSSMutableStyleDeclaration.cpp:
              * css/CSSMutableStyleDeclaration.h:
              * css/CSSNamespace.h:
              * css/CSSPageRule.cpp:
              * css/CSSPageRule.h:
              * css/CSSPageRule.idl:
              * css/CSSParser.cpp:
              * css/CSSParser.h:
              * css/CSSPrimitiveValue.cpp:
              * css/CSSPrimitiveValue.h:
              * css/CSSPrimitiveValue.idl:
              * css/CSSProperty.cpp:
              * css/CSSProperty.h:
              * css/CSSQuirkPrimitiveValue.h:
              * css/CSSRule.cpp:
              * css/CSSRule.h:
              * css/CSSRule.idl:
              * css/CSSRuleList.cpp:
              * css/CSSRuleList.h:
              * css/CSSSelector.cpp:
              * css/CSSSelector.h:
              * css/CSSStyleDeclaration.cpp:
              * css/CSSStyleDeclaration.h:
              * css/CSSStyleDeclaration.idl:
              * css/CSSStyleRule.cpp:
              * css/CSSStyleRule.h:
              * css/CSSStyleRule.idl:
              * css/CSSStyleSelector.cpp:
              * css/CSSStyleSelector.h:
              * css/CSSStyleSheet.cpp:
              * css/CSSStyleSheet.h:
              * css/CSSStyleSheet.idl:
              * css/CSSUnknownRule.h:
              * css/CSSUnknownRule.idl:
              * css/CSSValue.h:
              * css/CSSValue.idl:
              * css/CSSValueList.cpp:
              * css/CSSValueList.h:
              * css/Counter.h:
              * css/Counter.idl:
              * css/DashboardRegion.h:
              * css/FontFamilyValue.cpp:
              * css/FontFamilyValue.h:
              * css/FontValue.cpp:
              * css/FontValue.h:
              * css/MediaFeatureNames.cpp:
              * css/MediaFeatureNames.h:
              * css/MediaList.cpp:
              * css/MediaList.h:
              * css/Pair.h:
              * css/RGBColor.idl:
              * css/Rect.h:
              * css/Rect.idl:
              * css/ShadowValue.cpp:
              * css/ShadowValue.h:
              * css/StyleBase.cpp:
              * css/StyleBase.h:
              * css/StyleList.cpp:
              * css/StyleList.h:
              * css/StyleSheet.cpp:
              * css/StyleSheet.h:
              * css/StyleSheet.idl:
              * css/StyleSheetList.cpp:
              * css/StyleSheetList.h:
              * css/StyleSheetList.idl:
              * css/html4.css:
              * css/make-css-file-arrays.pl:
              * css/makegrammar.pl:
              * css/makeprop.pl:
              * css/maketokenizer:
              * css/makevalues.pl:
              * css/quirks.css:
              * dom/AtomicStringList.h:
              * dom/Attr.cpp:
              * dom/Attr.h:
              * dom/Attr.idl:
              * dom/Attribute.cpp:
              * dom/Attribute.h:
              * dom/BeforeUnloadEvent.cpp:
              * dom/BeforeUnloadEvent.h:
              * dom/CDATASection.cpp:
              * dom/CDATASection.h:
              * dom/CDATASection.idl:
              * dom/CSSMappedAttributeDeclaration.cpp:
              * dom/CSSMappedAttributeDeclaration.h:
              * dom/CharacterData.cpp:
              * dom/CharacterData.h:
              * dom/CharacterData.idl:
              * dom/ChildNodeList.cpp:
              * dom/ChildNodeList.h:
              * dom/Clipboard.h:
              * dom/ClipboardEvent.cpp:
              * dom/ClipboardEvent.h:
              * dom/Comment.cpp:
              * dom/Comment.h:
              * dom/Comment.idl:
              * dom/ContainerNode.cpp:
              * dom/ContainerNode.h:
              * dom/DOMImplementation.cpp:
              * dom/DOMImplementation.h:
              * dom/DOMImplementation.idl:
              * dom/DocPtr.h:
              * dom/Document.cpp:
              * dom/Document.h:
              * dom/Document.idl:
              * dom/DocumentFragment.cpp:
              * dom/DocumentFragment.h:
              * dom/DocumentFragment.idl:
              * dom/DocumentMarker.h:
              * dom/DocumentType.cpp:
              * dom/DocumentType.h:
              * dom/DocumentType.idl:
              * dom/EditingText.cpp:
              * dom/EditingText.h:
              * dom/Element.cpp:
              * dom/Element.h:
              * dom/Element.idl:
              * dom/Entity.cpp:
              * dom/Entity.h:
              * dom/Entity.idl:
              * dom/EntityReference.cpp:
              * dom/EntityReference.h:
              * dom/EntityReference.idl:
              * dom/Event.cpp:
              * dom/Event.h:
              * dom/Event.idl:
              * dom/EventListener.h:
              * dom/EventListener.idl:
              * dom/EventNames.cpp:
              * dom/EventNames.h:
              * dom/EventTarget.idl:
              * dom/EventTargetNode.cpp:
              * dom/EventTargetNode.h:
              * dom/ExceptionCode.h:
              * dom/KeyboardEvent.cpp:
              * dom/KeyboardEvent.h:
              * dom/KeyboardEvent.idl:
              * dom/MappedAttribute.cpp:
              * dom/MappedAttribute.h:
              * dom/MappedAttributeEntry.h:
              * dom/MouseEvent.cpp:
              * dom/MouseEvent.h:
              * dom/MouseEvent.idl:
              * dom/MouseRelatedEvent.cpp:
              * dom/MouseRelatedEvent.h:
              * dom/MutationEvent.cpp:
              * dom/MutationEvent.h:
              * dom/MutationEvent.idl:
              * dom/NameNodeList.cpp:
              * dom/NameNodeList.h:
              * dom/NamedAttrMap.cpp:
              * dom/NamedAttrMap.h:
              * dom/NamedMappedAttrMap.cpp:
              * dom/NamedMappedAttrMap.h:
              * dom/NamedNodeMap.h:
              * dom/NamedNodeMap.idl:
              * dom/Node.cpp:
              * dom/Node.h:
              * dom/Node.idl:
              * dom/NodeFilter.cpp:
              * dom/NodeFilter.h:
              * dom/NodeFilter.idl:
              * dom/NodeFilterCondition.cpp:
              * dom/NodeFilterCondition.h:
              * dom/NodeIterator.cpp:
              * dom/NodeIterator.h:
              * dom/NodeIterator.idl:
              * dom/NodeList.cpp:
              * dom/NodeList.h:
              * dom/NodeList.idl:
              * dom/Notation.cpp:
              * dom/Notation.h:
              * dom/Notation.idl:
              * dom/ProcessingInstruction.cpp:
              * dom/ProcessingInstruction.h:
              * dom/ProcessingInstruction.idl:
              * dom/QualifiedName.cpp:
              * dom/QualifiedName.h:
              * dom/Range.cpp:
              * dom/Range.h:
              * dom/Range.idl:
              * dom/RangeException.h:
              * dom/RangeException.idl:
              * dom/RegisteredEventListener.cpp:
              * dom/RegisteredEventListener.h:
              * dom/StyleElement.cpp:
              * dom/StyleElement.h:
              * dom/StyledElement.cpp:
              * dom/StyledElement.h:
              * dom/Text.cpp:
              * dom/Text.h:
              * dom/Text.idl:
              * dom/Tokenizer.h:
              * dom/Traversal.cpp:
              * dom/Traversal.h:
              * dom/TreeWalker.cpp:
              * dom/TreeWalker.h:
              * dom/TreeWalker.idl:
              * dom/UIEvent.cpp:
              * dom/UIEvent.h:
              * dom/UIEvent.idl:
              * dom/UIEventWithKeyState.cpp:
              * dom/UIEventWithKeyState.h:
              * dom/WheelEvent.cpp:
              * dom/WheelEvent.h:
              * dom/WheelEvent.idl:
              * dom/XMLTokenizer.cpp:
              * dom/XMLTokenizer.h:
              * html/FormDataList.cpp:
              * html/FormDataList.h:
              * html/HTMLAnchorElement.cpp:
              * html/HTMLAnchorElement.h:
              * html/HTMLAnchorElement.idl:
              * html/HTMLAppletElement.cpp:
              * html/HTMLAppletElement.h:
              * html/HTMLAppletElement.idl:
              * html/HTMLAreaElement.cpp:
              * html/HTMLAreaElement.h:
              * html/HTMLAreaElement.idl:
              * html/HTMLBRElement.cpp:
              * html/HTMLBRElement.h:
              * html/HTMLBRElement.idl:
              * html/HTMLBaseElement.cpp:
              * html/HTMLBaseElement.h:
              * html/HTMLBaseElement.idl:
              * html/HTMLBaseFontElement.cpp:
              * html/HTMLBaseFontElement.h:
              * html/HTMLBaseFontElement.idl:
              * html/HTMLBlockquoteElement.cpp:
              * html/HTMLBlockquoteElement.h:
              * html/HTMLBlockquoteElement.idl:
              * html/HTMLBodyElement.cpp:
              * html/HTMLBodyElement.h:
              * html/HTMLBodyElement.idl:
              * html/HTMLButtonElement.cpp:
              * html/HTMLButtonElement.h:
              * html/HTMLButtonElement.idl:
              * html/HTMLCollection.cpp:
              * html/HTMLCollection.h:
              * html/HTMLCollection.idl:
              * html/HTMLDListElement.cpp:
              * html/HTMLDListElement.h:
              * html/HTMLDListElement.idl:
              * html/HTMLDirectoryElement.cpp:
              * html/HTMLDirectoryElement.h:
              * html/HTMLDirectoryElement.idl:
              * html/HTMLDivElement.cpp:
              * html/HTMLDivElement.h:
              * html/HTMLDivElement.idl:
              * html/HTMLDocument.cpp:
              * html/HTMLDocument.h:
              * html/HTMLDocument.idl:
              * html/HTMLElement.cpp:
              * html/HTMLElement.h:
              * html/HTMLElement.idl:
              * html/HTMLElementFactory.cpp:
              * html/HTMLElementFactory.h:
              * html/HTMLEmbedElement.cpp:
              * html/HTMLEmbedElement.h:
              * html/HTMLEmbedElement.idl:
              * html/HTMLEntityNames.gperf:
              * html/HTMLFieldSetElement.cpp:
              * html/HTMLFieldSetElement.h:
              * html/HTMLFieldSetElement.idl:
              * html/HTMLFontElement.cpp:
              * html/HTMLFontElement.h:
              * html/HTMLFontElement.idl:
              * html/HTMLFormCollection.cpp:
              * html/HTMLFormCollection.h:
              * html/HTMLFormElement.cpp:
              * html/HTMLFormElement.h:
              * html/HTMLFormElement.idl:
              * html/HTMLFrameElement.cpp:
              * html/HTMLFrameElement.h:
              * html/HTMLFrameElement.idl:
              * html/HTMLFrameElementBase.cpp:
              * html/HTMLFrameElementBase.h:
              * html/HTMLFrameOwnerElement.cpp:
              * html/HTMLFrameOwnerElement.h:
              * html/HTMLFrameSetElement.cpp:
              * html/HTMLFrameSetElement.h:
              * html/HTMLFrameSetElement.idl:
              * html/HTMLGenericFormElement.cpp:
              * html/HTMLGenericFormElement.h:
              * html/HTMLHRElement.cpp:
              * html/HTMLHRElement.h:
              * html/HTMLHRElement.idl:
              * html/HTMLHeadElement.cpp:
              * html/HTMLHeadElement.h:
              * html/HTMLHeadElement.idl:
              * html/HTMLHeadingElement.cpp:
              * html/HTMLHeadingElement.h:
              * html/HTMLHeadingElement.idl:
              * html/HTMLHtmlElement.cpp:
              * html/HTMLHtmlElement.h:
              * html/HTMLHtmlElement.idl:
              * html/HTMLIFrameElement.cpp:
              * html/HTMLIFrameElement.h:
              * html/HTMLIFrameElement.idl:
              * html/HTMLImageElement.cpp:
              * html/HTMLImageElement.h:
              * html/HTMLImageElement.idl:
              * html/HTMLImageLoader.cpp:
              * html/HTMLImageLoader.h:
              * html/HTMLInputElement.cpp:
              * html/HTMLInputElement.h:
              * html/HTMLInputElement.idl:
              * html/HTMLIsIndexElement.cpp:
              * html/HTMLIsIndexElement.h:
              * html/HTMLIsIndexElement.idl:
              * html/HTMLKeygenElement.cpp:
              * html/HTMLKeygenElement.h:
              * html/HTMLLIElement.cpp:
              * html/HTMLLIElement.h:
              * html/HTMLLIElement.idl:
              * html/HTMLLabelElement.cpp:
              * html/HTMLLabelElement.h:
              * html/HTMLLabelElement.idl:
              * html/HTMLLegendElement.cpp:
              * html/HTMLLegendElement.h:
              * html/HTMLLegendElement.idl:
              * html/HTMLLinkElement.cpp:
              * html/HTMLLinkElement.h:
              * html/HTMLLinkElement.idl:
              * html/HTMLMapElement.cpp:
              * html/HTMLMapElement.h:
              * html/HTMLMapElement.idl:
              * html/HTMLMarqueeElement.cpp:
              * html/HTMLMarqueeElement.h:
              * html/HTMLMarqueeElement.idl:
              * html/HTMLMenuElement.cpp:
              * html/HTMLMenuElement.h:
              * html/HTMLMenuElement.idl:
              * html/HTMLMetaElement.cpp:
              * html/HTMLMetaElement.h:
              * html/HTMLMetaElement.idl:
              * html/HTMLModElement.cpp:
              * html/HTMLModElement.h:
              * html/HTMLModElement.idl:
              * html/HTMLNameCollection.cpp:
              * html/HTMLNameCollection.h:
              * html/HTMLOListElement.cpp:
              * html/HTMLOListElement.h:
              * html/HTMLOListElement.idl:
              * html/HTMLObjectElement.cpp:
              * html/HTMLObjectElement.h:
              * html/HTMLObjectElement.idl:
              * html/HTMLOptGroupElement.cpp:
              * html/HTMLOptGroupElement.h:
              * html/HTMLOptGroupElement.idl:
              * html/HTMLOptionElement.cpp:
              * html/HTMLOptionElement.h:
              * html/HTMLOptionElement.idl:
              * html/HTMLOptionsCollection.cpp:
              * html/HTMLOptionsCollection.h:
              * html/HTMLOptionsCollection.idl:
              * html/HTMLParagraphElement.cpp:
              * html/HTMLParagraphElement.h:
              * html/HTMLParagraphElement.idl:
              * html/HTMLParamElement.cpp:
              * html/HTMLParamElement.h:
              * html/HTMLParamElement.idl:
              * html/HTMLParser.cpp:
              * html/HTMLParser.h:
              * html/HTMLPlugInElement.cpp:
              * html/HTMLPlugInElement.h:
              * html/HTMLPreElement.cpp:
              * html/HTMLPreElement.h:
              * html/HTMLPreElement.idl:
              * html/HTMLQuoteElement.cpp:
              * html/HTMLQuoteElement.h:
              * html/HTMLQuoteElement.idl:
              * html/HTMLScriptElement.cpp:
              * html/HTMLScriptElement.h:
              * html/HTMLScriptElement.idl:
              * html/HTMLSelectElement.cpp:
              * html/HTMLSelectElement.h:
              * html/HTMLSelectElement.idl:
              * html/HTMLStyleElement.cpp:
              * html/HTMLStyleElement.h:
              * html/HTMLStyleElement.idl:
              * html/HTMLTableCaptionElement.cpp:
              * html/HTMLTableCaptionElement.h:
              * html/HTMLTableCaptionElement.idl:
              * html/HTMLTableCellElement.cpp:
              * html/HTMLTableCellElement.h:
              * html/HTMLTableCellElement.idl:
              * html/HTMLTableColElement.cpp:
              * html/HTMLTableColElement.h:
              * html/HTMLTableColElement.idl:
              * html/HTMLTableElement.cpp:
              * html/HTMLTableElement.h:
              * html/HTMLTableElement.idl:
              * html/HTMLTablePartElement.cpp:
              * html/HTMLTablePartElement.h:
              * html/HTMLTableRowElement.cpp:
              * html/HTMLTableRowElement.h:
              * html/HTMLTableRowElement.idl:
              * html/HTMLTableSectionElement.cpp:
              * html/HTMLTableSectionElement.h:
              * html/HTMLTableSectionElement.idl:
              * html/HTMLTextAreaElement.cpp:
              * html/HTMLTextAreaElement.h:
              * html/HTMLTextAreaElement.idl:
              * html/HTMLTitleElement.cpp:
              * html/HTMLTitleElement.h:
              * html/HTMLTitleElement.idl:
              * html/HTMLTokenizer.cpp:
              * html/HTMLTokenizer.h:
              * html/HTMLUListElement.cpp:
              * html/HTMLUListElement.h:
              * html/HTMLUListElement.idl:
              * ksvg2/css/SVGCSSParser.cpp:
              * ksvg2/css/SVGCSSStyleSelector.cpp:
              * ksvg2/css/SVGRenderStyle.cpp:
              * ksvg2/css/SVGRenderStyle.h:
              * ksvg2/css/SVGRenderStyleDefs.cpp:
              * ksvg2/css/SVGRenderStyleDefs.h:
              * ksvg2/events/JSSVGLazyEventListener.cpp:
              * ksvg2/events/JSSVGLazyEventListener.h:
              * ksvg2/events/SVGZoomEvent.cpp:
              * ksvg2/events/SVGZoomEvent.h:
              * ksvg2/misc/KCanvasRenderingStyle.cpp:
              * ksvg2/misc/KCanvasRenderingStyle.h:
              * ksvg2/misc/PointerEventsHitRules.cpp:
              * ksvg2/misc/PointerEventsHitRules.h:
              * ksvg2/misc/SVGDocumentExtensions.cpp:
              * ksvg2/misc/SVGDocumentExtensions.h:
              * ksvg2/misc/SVGImageLoader.cpp:
              * ksvg2/misc/SVGImageLoader.h:
              * ksvg2/misc/SVGTimer.cpp:
              * ksvg2/misc/SVGTimer.h:
              * ksvg2/misc/TimeScheduler.cpp:
              * ksvg2/misc/TimeScheduler.h:
              * ksvg2/scripts/cssmakeprops:
              * ksvg2/scripts/cssmakevalues:
              * ksvg2/svg/ColorDistance.cpp:
              * ksvg2/svg/ColorDistance.h:
              * ksvg2/svg/GradientAttributes.h:
              * ksvg2/svg/LinearGradientAttributes.h:
              * ksvg2/svg/PatternAttributes.h:
              * ksvg2/svg/RadialGradientAttributes.h:
              * ksvg2/svg/SVGAElement.cpp:
              * ksvg2/svg/SVGAElement.h:
              * ksvg2/svg/SVGAngle.cpp:
              * ksvg2/svg/SVGAngle.h:
              * ksvg2/svg/SVGAngle.idl:
              * ksvg2/svg/SVGAnimateColorElement.cpp:
              * ksvg2/svg/SVGAnimateColorElement.h:
              * ksvg2/svg/SVGAnimateElement.cpp:
              * ksvg2/svg/SVGAnimateElement.h:
              * ksvg2/svg/SVGAnimateMotionElement.cpp:
              * ksvg2/svg/SVGAnimateMotionElement.h:
              * ksvg2/svg/SVGAnimateTransformElement.cpp:
              * ksvg2/svg/SVGAnimateTransformElement.h:
              * ksvg2/svg/SVGAnimatedPathData.cpp:
              * ksvg2/svg/SVGAnimatedPathData.h:
              * ksvg2/svg/SVGAnimatedPoints.cpp:
              * ksvg2/svg/SVGAnimatedPoints.h:
              * ksvg2/svg/SVGAnimatedTemplate.h:
              * ksvg2/svg/SVGAnimationElement.cpp:
              * ksvg2/svg/SVGAnimationElement.h:
              * ksvg2/svg/SVGCircleElement.cpp:
              * ksvg2/svg/SVGCircleElement.h:
              * ksvg2/svg/SVGClipPathElement.cpp:
              * ksvg2/svg/SVGClipPathElement.h:
              * ksvg2/svg/SVGColor.cpp:
              * ksvg2/svg/SVGColor.h:
              * ksvg2/svg/SVGColor.idl:
              * ksvg2/svg/SVGComponentTransferFunctionElement.cpp:
              * ksvg2/svg/SVGComponentTransferFunctionElement.h:
              * ksvg2/svg/SVGCursorElement.cpp:
              * ksvg2/svg/SVGCursorElement.h:
              * ksvg2/svg/SVGDefsElement.cpp:
              * ksvg2/svg/SVGDefsElement.h:
              * ksvg2/svg/SVGDescElement.cpp:
              * ksvg2/svg/SVGDescElement.h:
              * ksvg2/svg/SVGDocument.cpp:
              * ksvg2/svg/SVGDocument.h:
              * ksvg2/svg/SVGDocument.idl:
              * ksvg2/svg/SVGElement.cpp:
              * ksvg2/svg/SVGElement.h:
              * ksvg2/svg/SVGElement.idl:
              * ksvg2/svg/SVGElementInstance.cpp:
              * ksvg2/svg/SVGElementInstance.h:
              * ksvg2/svg/SVGElementInstanceList.cpp:
              * ksvg2/svg/SVGElementInstanceList.h:
              * ksvg2/svg/SVGEllipseElement.cpp:
              * ksvg2/svg/SVGEllipseElement.h:
              * ksvg2/svg/SVGException.h:
              * ksvg2/svg/SVGExternalResourcesRequired.cpp:
              * ksvg2/svg/SVGExternalResourcesRequired.h:
              * ksvg2/svg/SVGFEBlendElement.cpp:
              * ksvg2/svg/SVGFEBlendElement.h:
              * ksvg2/svg/SVGFEColorMatrixElement.cpp:
              * ksvg2/svg/SVGFEColorMatrixElement.h:
              * ksvg2/svg/SVGFEComponentTransferElement.cpp:
              * ksvg2/svg/SVGFEComponentTransferElement.h:
              * ksvg2/svg/SVGFECompositeElement.cpp:
              * ksvg2/svg/SVGFECompositeElement.h:
              * ksvg2/svg/SVGFEDiffuseLightingElement.cpp:
              * ksvg2/svg/SVGFEDiffuseLightingElement.h:
              * ksvg2/svg/SVGFEDisplacementMapElement.cpp:
              * ksvg2/svg/SVGFEDisplacementMapElement.h:
              * ksvg2/svg/SVGFEDistantLightElement.cpp:
              * ksvg2/svg/SVGFEDistantLightElement.h:
              * ksvg2/svg/SVGFEFloodElement.cpp:
              * ksvg2/svg/SVGFEFloodElement.h:
              * ksvg2/svg/SVGFEFuncAElement.cpp:
              * ksvg2/svg/SVGFEFuncAElement.h:
              * ksvg2/svg/SVGFEFuncBElement.cpp:
              * ksvg2/svg/SVGFEFuncBElement.h:
              * ksvg2/svg/SVGFEFuncGElement.cpp:
              * ksvg2/svg/SVGFEFuncGElement.h:
              * ksvg2/svg/SVGFEFuncRElement.cpp:
              * ksvg2/svg/SVGFEFuncRElement.h:
              * ksvg2/svg/SVGFEGaussianBlurElement.cpp:
              * ksvg2/svg/SVGFEGaussianBlurElement.h:
              * ksvg2/svg/SVGFEImageElement.cpp:
              * ksvg2/svg/SVGFEImageElement.h:
              * ksvg2/svg/SVGFELightElement.cpp:
              * ksvg2/svg/SVGFELightElement.h:
              * ksvg2/svg/SVGFEMergeElement.cpp:
              * ksvg2/svg/SVGFEMergeElement.h:
              * ksvg2/svg/SVGFEMergeNodeElement.cpp:
              * ksvg2/svg/SVGFEMergeNodeElement.h:
              * ksvg2/svg/SVGFEOffsetElement.cpp:
              * ksvg2/svg/SVGFEOffsetElement.h:
              * ksvg2/svg/SVGFEPointLightElement.cpp:
              * ksvg2/svg/SVGFEPointLightElement.h:
              * ksvg2/svg/SVGFESpecularLightingElement.cpp:
              * ksvg2/svg/SVGFESpecularLightingElement.h:
              * ksvg2/svg/SVGFESpotLightElement.cpp:
              * ksvg2/svg/SVGFESpotLightElement.h:
              * ksvg2/svg/SVGFETileElement.cpp:
              * ksvg2/svg/SVGFETileElement.h:
              * ksvg2/svg/SVGFETurbulenceElement.cpp:
              * ksvg2/svg/SVGFETurbulenceElement.h:
              * ksvg2/svg/SVGFilterElement.cpp:
              * ksvg2/svg/SVGFilterElement.h:
              * ksvg2/svg/SVGFilterPrimitiveStandardAttributes.cpp:
              * ksvg2/svg/SVGFilterPrimitiveStandardAttributes.h:
              * ksvg2/svg/SVGFitToViewBox.cpp:
              * ksvg2/svg/SVGFitToViewBox.h:
              * ksvg2/svg/SVGForeignObjectElement.cpp:
              * ksvg2/svg/SVGForeignObjectElement.h:
              * ksvg2/svg/SVGGElement.cpp:
              * ksvg2/svg/SVGGElement.h:
              * ksvg2/svg/SVGGradientElement.cpp:
              * ksvg2/svg/SVGGradientElement.h:
              * ksvg2/svg/SVGImageElement.cpp:
              * ksvg2/svg/SVGImageElement.h:
              * ksvg2/svg/SVGLangSpace.cpp:
              * ksvg2/svg/SVGLangSpace.h:
              * ksvg2/svg/SVGLength.cpp:
              * ksvg2/svg/SVGLength.h:
              * ksvg2/svg/SVGLength.idl:
              * ksvg2/svg/SVGLengthList.cpp:
              * ksvg2/svg/SVGLengthList.h:
              * ksvg2/svg/SVGLineElement.cpp:
              * ksvg2/svg/SVGLineElement.h:
              * ksvg2/svg/SVGLinearGradientElement.cpp:
              * ksvg2/svg/SVGLinearGradientElement.h:
              * ksvg2/svg/SVGList.h:
              * ksvg2/svg/SVGListTraits.h:
              * ksvg2/svg/SVGLocatable.cpp:
              * ksvg2/svg/SVGLocatable.h:
              * ksvg2/svg/SVGMPathElement.cpp:
              * ksvg2/svg/SVGMPathElement.h:
              * ksvg2/svg/SVGMarkerElement.cpp:
              * ksvg2/svg/SVGMarkerElement.h:
              * ksvg2/svg/SVGMaskElement.cpp:
              * ksvg2/svg/SVGMaskElement.h:
              * ksvg2/svg/SVGMatrix.idl:
              * ksvg2/svg/SVGMetadataElement.cpp:
              * ksvg2/svg/SVGMetadataElement.h:
              * ksvg2/svg/SVGMetadataElement.idl:
              * ksvg2/svg/SVGNumber.idl:
              * ksvg2/svg/SVGNumberList.cpp:
              * ksvg2/svg/SVGNumberList.h:
              * ksvg2/svg/SVGPaint.cpp:
              * ksvg2/svg/SVGPaint.h:
              * ksvg2/svg/SVGParserUtilities.cpp:
              * ksvg2/svg/SVGParserUtilities.h:
              * ksvg2/svg/SVGPathElement.cpp:
              * ksvg2/svg/SVGPathElement.h:
              * ksvg2/svg/SVGPathSeg.h:
              * ksvg2/svg/SVGPathSegArc.cpp:
              * ksvg2/svg/SVGPathSegArc.h:
              * ksvg2/svg/SVGPathSegClosePath.cpp:
              * ksvg2/svg/SVGPathSegClosePath.h:
              * ksvg2/svg/SVGPathSegCurvetoCubic.cpp:
              * ksvg2/svg/SVGPathSegCurvetoCubic.h:
              * ksvg2/svg/SVGPathSegCurvetoCubicSmooth.cpp:
              * ksvg2/svg/SVGPathSegCurvetoCubicSmooth.h:
              * ksvg2/svg/SVGPathSegCurvetoQuadratic.cpp:
              * ksvg2/svg/SVGPathSegCurvetoQuadratic.h:
              * ksvg2/svg/SVGPathSegCurvetoQuadraticSmooth.cpp:
              * ksvg2/svg/SVGPathSegCurvetoQuadraticSmooth.h:
              * ksvg2/svg/SVGPathSegLineto.cpp:
              * ksvg2/svg/SVGPathSegLineto.h:
              * ksvg2/svg/SVGPathSegLinetoHorizontal.cpp:
              * ksvg2/svg/SVGPathSegLinetoHorizontal.h:
              * ksvg2/svg/SVGPathSegLinetoVertical.cpp:
              * ksvg2/svg/SVGPathSegLinetoVertical.h:
              * ksvg2/svg/SVGPathSegList.cpp:
              * ksvg2/svg/SVGPathSegList.h:
              * ksvg2/svg/SVGPathSegMoveto.cpp:
              * ksvg2/svg/SVGPathSegMoveto.h:
              * ksvg2/svg/SVGPatternElement.cpp:
              * ksvg2/svg/SVGPatternElement.h:
              * ksvg2/svg/SVGPoint.idl:
              * ksvg2/svg/SVGPointList.cpp:
              * ksvg2/svg/SVGPointList.h:
              * ksvg2/svg/SVGPolyElement.cpp:
              * ksvg2/svg/SVGPolyElement.h:
              * ksvg2/svg/SVGPolygonElement.cpp:
              * ksvg2/svg/SVGPolygonElement.h:
              * ksvg2/svg/SVGPolylineElement.cpp:
              * ksvg2/svg/SVGPolylineElement.h:
              * ksvg2/svg/SVGPreserveAspectRatio.cpp:
              * ksvg2/svg/SVGPreserveAspectRatio.h:
              * ksvg2/svg/SVGRadialGradientElement.cpp:
              * ksvg2/svg/SVGRadialGradientElement.h:
              * ksvg2/svg/SVGRect.idl:
              * ksvg2/svg/SVGRectElement.cpp:
              * ksvg2/svg/SVGRectElement.h:
              * ksvg2/svg/SVGRenderingIntent.h:
              * ksvg2/svg/SVGSVGElement.cpp:
              * ksvg2/svg/SVGSVGElement.h:
              * ksvg2/svg/SVGSVGElement.idl:
              * ksvg2/svg/SVGScriptElement.cpp:
              * ksvg2/svg/SVGScriptElement.h:
              * ksvg2/svg/SVGSetElement.cpp:
              * ksvg2/svg/SVGSetElement.h:
              * ksvg2/svg/SVGStopElement.cpp:
              * ksvg2/svg/SVGStopElement.h:
              * ksvg2/svg/SVGStringList.cpp:
              * ksvg2/svg/SVGStringList.h:
              * ksvg2/svg/SVGStylable.cpp:
              * ksvg2/svg/SVGStylable.h:
              * ksvg2/svg/SVGStyleElement.cpp:
              * ksvg2/svg/SVGStyleElement.h:
              * ksvg2/svg/SVGStyledElement.cpp:
              * ksvg2/svg/SVGStyledElement.h:
              * ksvg2/svg/SVGStyledLocatableElement.cpp:
              * ksvg2/svg/SVGStyledLocatableElement.h:
              * ksvg2/svg/SVGStyledTransformableElement.cpp:
              * ksvg2/svg/SVGStyledTransformableElement.h:
              * ksvg2/svg/SVGSwitchElement.cpp:
              * ksvg2/svg/SVGSwitchElement.h:
              * ksvg2/svg/SVGSymbolElement.cpp:
              * ksvg2/svg/SVGSymbolElement.h:
              * ksvg2/svg/SVGTRefElement.cpp:
              * ksvg2/svg/SVGTRefElement.h:
              * ksvg2/svg/SVGTSpanElement.cpp:
              * ksvg2/svg/SVGTSpanElement.h:
              * ksvg2/svg/SVGTests.cpp:
              * ksvg2/svg/SVGTests.h:
              * ksvg2/svg/SVGTextContentElement.cpp:
              * ksvg2/svg/SVGTextContentElement.h:
              * ksvg2/svg/SVGTextElement.cpp:
              * ksvg2/svg/SVGTextElement.h:
              * ksvg2/svg/SVGTextPositioningElement.cpp:
              * ksvg2/svg/SVGTextPositioningElement.h:
              * ksvg2/svg/SVGTitleElement.cpp:
              * ksvg2/svg/SVGTitleElement.h:
              * ksvg2/svg/SVGTransform.cpp:
              * ksvg2/svg/SVGTransform.h:
              * ksvg2/svg/SVGTransform.idl:
              * ksvg2/svg/SVGTransformDistance.cpp:
              * ksvg2/svg/SVGTransformDistance.h:
              * ksvg2/svg/SVGTransformList.cpp:
              * ksvg2/svg/SVGTransformList.h:
              * ksvg2/svg/SVGTransformable.cpp:
              * ksvg2/svg/SVGTransformable.h:
              * ksvg2/svg/SVGURIReference.cpp:
              * ksvg2/svg/SVGURIReference.h:
              * ksvg2/svg/SVGUnitTypes.h:
              * ksvg2/svg/SVGUseElement.cpp:
              * ksvg2/svg/SVGUseElement.h:
              * ksvg2/svg/SVGViewElement.cpp:
              * ksvg2/svg/SVGViewElement.h:
              * ksvg2/svg/SVGZoomAndPan.cpp:
              * ksvg2/svg/SVGZoomAndPan.h:
              * loader/Cache.cpp:
              * loader/Cache.h:
              * loader/CachedCSSStyleSheet.cpp:
              * loader/CachedCSSStyleSheet.h:
              * loader/CachedImage.cpp:
              * loader/CachedImage.h:
              * loader/CachedResource.cpp:
              * loader/CachedResource.h:
              * loader/CachedResourceClient.h:
              * loader/CachedResourceClientWalker.cpp:
              * loader/CachedResourceClientWalker.h:
              * loader/CachedScript.cpp:
              * loader/CachedScript.h:
              * loader/CachedXBLDocument.cpp:
              * loader/CachedXBLDocument.h:
              * loader/CachedXSLStyleSheet.cpp:
              * loader/CachedXSLStyleSheet.h:
              * loader/DocLoader.cpp:
              * loader/DocLoader.h:
              * loader/FTPDirectoryParser.cpp:
              * loader/FTPDirectoryParser.h:
              * loader/Request.cpp:
              * loader/Request.h:
              * loader/TextResourceDecoder.cpp:
              * loader/TextResourceDecoder.h:
              * loader/loader.cpp:
              * loader/loader.h:
              * page/Chrome.cpp:
              * page/Chrome.h:
              * page/ChromeClient.h:
              * page/Frame.cpp:
              * page/Frame.h:
              * page/FramePrivate.h:
              * page/FrameTree.cpp:
              * page/FrameTree.h:
              * page/FrameView.cpp:
              * page/FrameView.h:
              * page/MouseEventWithHitTestResults.cpp:
              * page/MouseEventWithHitTestResults.h:
              * page/Page.cpp:
              * page/Page.h:
              * page/Plugin.h:
              * page/mac/ChromeMac.mm:
              * platform/Arena.cpp:
              * platform/Arena.h:
              * platform/AtomicString.cpp:
              * platform/AtomicString.h:
              * platform/AtomicStringImpl.h:
              * platform/BidiContext.cpp:
              * platform/BidiContext.h:
              * platform/BidiResolver.h:
              * platform/Font.cpp:
              * platform/Font.h:
              * platform/FontData.h:
              * platform/FontDescription.h:
              * platform/FontFallbackList.h:
              * platform/PlatformString.h:
              * platform/PopupMenu.h:
              * platform/PopupMenuClient.h:
              * platform/SearchPopupMenu.h:
              * platform/SegmentedString.cpp:
              * platform/SegmentedString.h:
              * platform/Shared.h:
              * platform/StaticConstructors.h:
              * platform/String.cpp:
              * platform/StringHash.h:
              * platform/StringImpl.cpp:
              * platform/StringImpl.h:
              * platform/TextBreakIterator.h:
              * platform/TextBreakIteratorICU.cpp:
              * platform/TextBreakIteratorInternalICU.h:
              * platform/TextStyle.h:
              * platform/UnicodeRange.cpp:
              * platform/UnicodeRange.h:
              * platform/cf/StringCF.cpp:
              * platform/cf/StringImplCF.cpp:
              * platform/graphics/FloatPoint3D.cpp:
              * platform/graphics/FloatPoint3D.h:
              * platform/graphics/Icon.h:
              * platform/graphics/IntSizeHash.h:
              * platform/graphics/PathTraversalState.cpp:
              * platform/graphics/cairo/CairoPath.h:
              * platform/graphics/cairo/PathCairo.cpp:
              * platform/graphics/mac/IconMac.mm:
              * platform/graphics/qt/IconQt.cpp:
              * platform/graphics/svg/SVGResourceFilter.cpp:
              * platform/graphics/svg/SVGResourceFilter.h:
              * platform/graphics/svg/cg/SVGPaintServerCg.cpp:
              * platform/graphics/svg/cg/SVGPaintServerGradientCg.cpp:
              * platform/graphics/svg/cg/SVGPaintServerPatternCg.cpp:
              * platform/graphics/svg/cg/SVGPaintServerSolidCg.cpp:
              * platform/graphics/svg/filters/SVGDistantLightSource.h:
              * platform/graphics/svg/filters/SVGFEBlend.cpp:
              * platform/graphics/svg/filters/SVGFEBlend.h:
              * platform/graphics/svg/filters/SVGFEColorMatrix.cpp:
              * platform/graphics/svg/filters/SVGFEColorMatrix.h:
              * platform/graphics/svg/filters/SVGFEComponentTransfer.cpp:
              * platform/graphics/svg/filters/SVGFEComponentTransfer.h:
              * platform/graphics/svg/filters/SVGFEComposite.cpp:
              * platform/graphics/svg/filters/SVGFEComposite.h:
              * platform/graphics/svg/filters/SVGFEConvolveMatrix.cpp:
              * platform/graphics/svg/filters/SVGFEConvolveMatrix.h:
              * platform/graphics/svg/filters/SVGFEDiffuseLighting.cpp:
              * platform/graphics/svg/filters/SVGFEDiffuseLighting.h:
              * platform/graphics/svg/filters/SVGFEDisplacementMap.cpp:
              * platform/graphics/svg/filters/SVGFEDisplacementMap.h:
              * platform/graphics/svg/filters/SVGFEFlood.cpp:
              * platform/graphics/svg/filters/SVGFEFlood.h:
              * platform/graphics/svg/filters/SVGFEGaussianBlur.cpp:
              * platform/graphics/svg/filters/SVGFEGaussianBlur.h:
              * platform/graphics/svg/filters/SVGFEImage.cpp:
              * platform/graphics/svg/filters/SVGFEImage.h:
              * platform/graphics/svg/filters/SVGFEMerge.cpp:
              * platform/graphics/svg/filters/SVGFEMerge.h:
              * platform/graphics/svg/filters/SVGFEMorphology.cpp:
              * platform/graphics/svg/filters/SVGFEMorphology.h:
              * platform/graphics/svg/filters/SVGFEOffset.cpp:
              * platform/graphics/svg/filters/SVGFEOffset.h:
              * platform/graphics/svg/filters/SVGFESpecularLighting.cpp:
              * platform/graphics/svg/filters/SVGFESpecularLighting.h:
              * platform/graphics/svg/filters/SVGFETile.h:
              * platform/graphics/svg/filters/SVGFETurbulence.cpp:
              * platform/graphics/svg/filters/SVGFETurbulence.h:
              * platform/graphics/svg/filters/SVGFilterEffect.cpp:
              * platform/graphics/svg/filters/SVGFilterEffect.h:
              * platform/graphics/svg/filters/SVGLightSource.cpp:
              * platform/graphics/svg/filters/SVGLightSource.h:
              * platform/graphics/svg/filters/SVGPointLightSource.h:
              * platform/graphics/svg/filters/SVGSpotLightSource.h:
              * platform/graphics/svg/filters/cg/SVGFEBlendCg.mm:
              * platform/graphics/svg/filters/cg/SVGFEColorMatrixCg.mm:
              * platform/graphics/svg/filters/cg/SVGFEComponentTransferCg.mm:
              * platform/graphics/svg/filters/cg/SVGFECompositeCg.mm:
              * platform/graphics/svg/filters/cg/SVGFEDiffuseLightingCg.mm:
              * platform/graphics/svg/filters/cg/SVGFEDisplacementMapCg.mm:
              * platform/graphics/svg/filters/cg/SVGFEFloodCg.mm:
              * platform/graphics/svg/filters/cg/SVGFEGaussianBlurCg.mm:
              * platform/graphics/svg/filters/cg/SVGFEHelpersCg.h:
              * platform/graphics/svg/filters/cg/SVGFEHelpersCg.mm:
              * platform/graphics/svg/filters/cg/SVGFEImageCg.mm:
              * platform/graphics/svg/filters/cg/SVGFEMergeCg.mm:
              * platform/graphics/svg/filters/cg/SVGFEOffsetCg.mm:
              * platform/graphics/svg/filters/cg/SVGFESpecularLightingCg.mm:
              * platform/graphics/svg/filters/cg/SVGFETileCg.mm:
              * platform/graphics/svg/filters/cg/SVGFilterEffectCg.mm:
              * platform/graphics/svg/qt/RenderPathQt.cpp:
              * platform/graphics/svg/qt/SVGPaintServerGradientQt.cpp:
              * platform/graphics/svg/qt/SVGPaintServerLinearGradientQt.cpp:
              * platform/graphics/svg/qt/SVGPaintServerPatternQt.cpp:
              * platform/graphics/svg/qt/SVGPaintServerQt.cpp:
              * platform/graphics/svg/qt/SVGPaintServerRadialGradientQt.cpp:
              * platform/graphics/svg/qt/SVGPaintServerSolidQt.cpp:
              * platform/graphics/svg/qt/SVGResourceClipperQt.cpp:
              * platform/graphics/svg/qt/SVGResourceFilterQt.cpp:
              * platform/graphics/svg/qt/SVGResourceMaskerQt.cpp:
              * platform/graphics/win/IconWin.cpp:
              * platform/gtk/FontPlatformData.h:
              * platform/gtk/FontPlatformDataGtk.cpp:
              * platform/gtk/PopupMenuGtk.cpp:
              * platform/gtk/RenderThemeGtk.cpp:
              * platform/gtk/RenderThemeGtk.h:
              * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
              * platform/image-decoders/png/PNGImageDecoder.cpp:
              * platform/mac/FontMac.mm:
              * platform/mac/FontPlatformData.h:
              * platform/mac/LocalCurrentGraphicsContext.h:
              * platform/mac/LocalCurrentGraphicsContext.mm:
              * platform/mac/PopupMenuMac.mm:
              * platform/mac/SearchPopupMenuMac.mm:
              * platform/mac/StringImplMac.mm:
              * platform/mac/StringMac.mm:
              * platform/mac/TextBreakIteratorInternalICUMac.mm:
              * platform/network/FormData.cpp:
              * platform/network/FormData.h:
              * platform/qt/FileChooserQt.cpp:
              * platform/qt/FontQt.cpp:
              * platform/qt/MenuEventProxy.h:
              * platform/qt/PlugInInfoStoreQt.cpp:
              * platform/qt/PopupMenuQt.cpp:
              * platform/qt/QWebPopup.cpp:
              * platform/qt/QWebPopup.h:
              * platform/qt/RenderThemeQt.cpp:
              * platform/qt/RenderThemeQt.h:
              * platform/qt/SearchPopupMenuQt.cpp:
              * platform/qt/TextBreakIteratorQt.cpp:
              * platform/qt/WheelEventQt.cpp:
              * platform/win/FontPlatformData.h:
              * platform/win/FontPlatformDataWin.cpp:
              * platform/win/PopupMenuWin.cpp:
              * platform/win/SearchPopupMenuWin.cpp:
              * platform/win/TextBreakIteratorInternalICUWin.cpp:
              * rendering/AutoTableLayout.cpp:
              * rendering/AutoTableLayout.h:
              * rendering/CounterNode.cpp:
              * rendering/CounterNode.h:
              * rendering/DataRef.h:
              * rendering/EllipsisBox.cpp:
              * rendering/EllipsisBox.h:
              * rendering/FixedTableLayout.cpp:
              * rendering/FixedTableLayout.h:
              * rendering/GapRects.h:
              * rendering/HitTestRequest.h:
              * rendering/HitTestResult.cpp:
              * rendering/HitTestResult.h:
              * rendering/InlineBox.cpp:
              * rendering/InlineBox.h:
              * rendering/InlineFlowBox.cpp:
              * rendering/InlineFlowBox.h:
              * rendering/InlineRunBox.h:
              * rendering/InlineTextBox.cpp:
              * rendering/InlineTextBox.h:
              * rendering/Length.h:
              * rendering/ListMarkerBox.cpp:
              * rendering/ListMarkerBox.h:
              * rendering/RenderApplet.cpp:
              * rendering/RenderApplet.h:
              * rendering/RenderArena.cpp:
              * rendering/RenderArena.h:
              * rendering/RenderBR.cpp:
              * rendering/RenderBR.h:
              * rendering/RenderBlock.cpp:
              * rendering/RenderBlock.h:
              * rendering/RenderBox.cpp:
              * rendering/RenderBox.h:
              * rendering/RenderButton.cpp:
              * rendering/RenderButton.h:
              * rendering/RenderContainer.cpp:
              * rendering/RenderContainer.h:
              * rendering/RenderCounter.cpp:
              * rendering/RenderCounter.h:
              * rendering/RenderFieldset.cpp:
              * rendering/RenderFieldset.h:
              * rendering/RenderFileUploadControl.cpp:
              * rendering/RenderFileUploadControl.h:
              * rendering/RenderFlexibleBox.cpp:
              * rendering/RenderFlexibleBox.h:
              * rendering/RenderFlow.cpp:
              * rendering/RenderFlow.h:
              * rendering/RenderForeignObject.cpp:
              * rendering/RenderForeignObject.h:
              * rendering/RenderFrame.cpp:
              * rendering/RenderFrame.h:
              * rendering/RenderFrameSet.cpp:
              * rendering/RenderFrameSet.h:
              * rendering/RenderImage.cpp:
              * rendering/RenderImage.h:
              * rendering/RenderInline.cpp:
              * rendering/RenderInline.h:
              * rendering/RenderLayer.cpp:
              * rendering/RenderLayer.h:
              * rendering/RenderLegend.cpp:
              * rendering/RenderLegend.h:
              * rendering/RenderListItem.cpp:
              * rendering/RenderListItem.h:
              * rendering/RenderListMarker.cpp:
              * rendering/RenderListMarker.h:
              * rendering/RenderMenuList.cpp:
              * rendering/RenderMenuList.h:
              * rendering/RenderObject.cpp:
              * rendering/RenderObject.h:
              * rendering/RenderPart.cpp:
              * rendering/RenderPart.h:
              * rendering/RenderPartObject.cpp:
              * rendering/RenderPartObject.h:
              * rendering/RenderPath.cpp:
              * rendering/RenderPath.h:
              * rendering/RenderReplaced.cpp:
              * rendering/RenderReplaced.h:
              * rendering/RenderSVGBlock.cpp:
              * rendering/RenderSVGBlock.h:
              * rendering/RenderSVGContainer.cpp:
              * rendering/RenderSVGContainer.h:
              * rendering/RenderSVGGradientStop.cpp:
              * rendering/RenderSVGGradientStop.h:
              * rendering/RenderSVGHiddenContainer.cpp:
              * rendering/RenderSVGHiddenContainer.h:
              * rendering/RenderSVGImage.cpp:
              * rendering/RenderSVGImage.h:
              * rendering/RenderSVGInline.cpp:
              * rendering/RenderSVGInline.h:
              * rendering/RenderSVGInlineText.cpp:
              * rendering/RenderSVGInlineText.h:
              * rendering/RenderSVGTSpan.cpp:
              * rendering/RenderSVGTSpan.h:
              * rendering/RenderSVGText.cpp:
              * rendering/RenderSVGText.h:
              * rendering/RenderSlider.cpp:
              * rendering/RenderSlider.h:
              * rendering/RenderStyle.cpp:
              * rendering/RenderStyle.h:
              * rendering/RenderTable.cpp:
              * rendering/RenderTable.h:
              * rendering/RenderTableCell.cpp:
              * rendering/RenderTableCell.h:
              * rendering/RenderTableCol.cpp:
              * rendering/RenderTableCol.h:
              * rendering/RenderTableRow.cpp:
              * rendering/RenderTableRow.h:
              * rendering/RenderTableSection.cpp:
              * rendering/RenderTableSection.h:
              * rendering/RenderText.cpp:
              * rendering/RenderText.h:
              * rendering/RenderTextControl.cpp:
              * rendering/RenderTextControl.h:
              * rendering/RenderTextFragment.cpp:
              * rendering/RenderTextFragment.h:
              * rendering/RenderTheme.cpp:
              * rendering/RenderTheme.h:
              * rendering/RenderThemeMac.h:
              * rendering/RenderThemeMac.mm:
              * rendering/RenderThemeSafari.cpp:
              * rendering/RenderThemeSafari.h:
              * rendering/RenderThemeWin.cpp:
              * rendering/RenderThemeWin.h:
              * rendering/RenderView.cpp:
              * rendering/RenderView.h:
              * rendering/RenderWidget.cpp:
              * rendering/RenderWidget.h:
              * rendering/RootInlineBox.cpp:
              * rendering/RootInlineBox.h:
              * rendering/SVGInlineFlowBox.cpp:
              * rendering/SVGInlineFlowBox.h:
              * rendering/SVGInlineTextBox.cpp:
              * rendering/SVGInlineTextBox.h:
              * rendering/SVGRootInlineBox.cpp:
              * rendering/SVGRootInlineBox.h:
              * rendering/TableLayout.h:
              * rendering/bidi.cpp:
              * rendering/bidi.h:
              * rendering/break_lines.cpp:
              * rendering/break_lines.h:
              * xml/DOMParser.cpp:
              * xml/DOMParser.h:
              * xml/DOMParser.idl:
              * xml/XMLHttpRequest.cpp:
              * xml/XMLHttpRequest.h:
              * xml/XMLSerializer.cpp:
              * xml/XMLSerializer.h:
              * xml/XMLSerializer.idl:
              * xml/XPathEvaluator.idl:
              * xml/XPathExpression.idl:
              * xml/XPathNSResolver.idl:
              * xml/XPathResult.idl:
              * xml/XSLImportRule.cpp:
              * xml/XSLImportRule.h:
              * xml/XSLStyleSheet.cpp:
              * xml/XSLStyleSheet.h:
              * xml/XSLTProcessor.cpp:
              * xml/XSLTProcessor.h:
      
      WebKitQt:
      
              Reviewed by Adam.
      
              - Fix http://bugs.webkit.org/show_bug.cgi?id=14885
                LGPL'ed files contain incorrect FSF address
      
              * Api/qcookiejar.cpp:
              * Api/qcookiejar.h:
              * Api/qwebframe.cpp:
              * Api/qwebframe.h:
              * Api/qwebframe_p.h:
              * Api/qwebhistoryinterface.cpp:
              * Api/qwebhistoryinterface.h:
              * Api/qwebkitglobal.h:
              * Api/qwebnetworkinterface.cpp:
              * Api/qwebnetworkinterface.h:
              * Api/qwebnetworkinterface_p.h:
              * Api/qwebobjectplugin.cpp:
              * Api/qwebobjectplugin.h:
              * Api/qwebobjectpluginconnector.cpp:
              * Api/qwebobjectpluginconnector.h:
              * Api/qwebpage.cpp:
              * Api/qwebpage.h:
              * Api/qwebpage_p.h:
              * Api/qwebpagehistory.cpp:
              * Api/qwebpagehistory.h:
              * Api/qwebsettings.cpp:
              * Api/qwebsettings.h:
              * WebCoreSupport/EditCommandQt.cpp:
              * WebCoreSupport/EditCommandQt.h:
      
      WebKitSite:
      
              Reviewed by Adam.
      
              - Fix http://bugs.webkit.org/show_bug.cgi?id=14885
                LGPL'ed files contain incorrect FSF address
      
              * blog/wp-content/plugins/wp-cache/wp-cache.php:
              * blog/wp-includes/class-snoopy.php:
              * blog/wp-includes/gettext.php:
              * blog/wp-includes/js/tinymce/license.html:
              * blog/wp-includes/streams.php:
      
      WebKitTools:
      
              Reviewed by Adam.
      
              - Fix http://bugs.webkit.org/show_bug.cgi?id=14885
                LGPL'ed files contain incorrect FSF address
      
              * Drosera/config.h:
      
      LayoutTests:
      
              Reviewed by Adam.
      
              - Fix http://bugs.webkit.org/show_bug.cgi?id=14885
                LGPL'ed files contain incorrect FSF address
      
              * svg/carto.net/resources/button.js:
              * svg/carto.net/resources/colourPicker.js:
              * svg/carto.net/resources/comboBox.js:
              * svg/carto.net/resources/helper_functions.js:
              * svg/carto.net/resources/mapApp.js:
              * svg/carto.net/resources/scrollbar.js:
              * svg/carto.net/resources/selectionList.js:
              * svg/carto.net/resources/slider.js:
              * svg/carto.net/resources/tabgroup.js:
              * svg/carto.net/resources/textbox.js:
              * svg/carto.net/resources/window.js:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@25754 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c8eccecd
  17. 14 Sep, 2007 2 commits
    • thatcher's avatar
      Initialize m_dialogArguments to 0. Fixes the newly crashing layout tests. · be9ccb65
      thatcher authored
              * bindings/js/kjs_window.cpp:
              (KJS::WindowPrivate::WindowPrivate):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@25580 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      be9ccb65
    • thatcher's avatar
      WebCore: · a1e24df2
      thatcher authored
              Reviewed by Sam.
      
              <rdar://problem/5472970> REGRESSION (r24276): TinyMCE popups show an empty window with no content
      
              Accessing the document of a window before the load finished would cause the window
              object to hold onto the initial empty document, and never switch over to the real document
              once the load finished. This regression was caused by r24276 which added a check to prevent
              clearing the window object when the load finished. The absence of this clear allowed the
              dialogArguments set with showModalDialog to persist on the window after the load. However,
              not clearing the window would keep other properties (and the empty document object) around.
      
              So the fix is to store away the dialog arguments that were passed to showModalDialog and
              put them back on the window object in the dialogArguments property each time
              the window is cleared.
      
              * bindings/js/kjs_window.cpp:
              (KJS::createWindow): No longer put dialogArguments on the window here.
              (KJS::showModalDialog): Put dialogArguments on the window and call
              setDialogArgumentsAndReturnValueSlot to remember the arguments.
              (KJS::Window::clear): Put m_dialogArguments back on the window as dialogArguments.
              (KJS::WindowFunc::callAsFunction): Call the new setDialogArgumentsAndReturnValue.
              (KJS::Window::setDialogArgumentsAndReturnValue): Store the arguments in m_dialogArguments.
              * bindings/js/kjs_window.h: Rename setReturnValueSlot to setDialogArgumentsAndReturnValueSlot.
              * manual-tests/modal-dialog-arguments.html: Confirmed that this test still passes.
      
              Reverted r24276 which was all the changes in FrameLoader.cpp and FrameLoader.h.
      
              * loader/FrameLoader.cpp:
              (WebCore::FrameLoader::FrameLoader): Remove m_shouldClearWindowProperties.
              (WebCore::FrameLoader::createWindow): Remove the call to setShouldClearWindowProperties.
              (WebCore::FrameLoader::clear): No longer check m_shouldClearWindowProperties, clear the
              window whenever clearWindowProperties is set.
              (WebCore::FrameLoader::begin): Remove m_shouldClearWindowProperties.
              (WebCore::FrameLoader::open): Ditto.
              * loader/FrameLoader.h: Remove m_shouldClearWindowProperties.
      
      LayoutTests:
      
              Reviewed by Sam.
      
              <rdar://problem/5472970> REGRESSION (r24276): TinyMCE popups show an empty window with no content
      
              * fast/dom/Document/early-document-access.html: Added.
              * fast/dom/Document/resources: Added.
              * fast/dom/Document/resources/early-document-access-popup.html: Added.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@25576 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      a1e24df2
  18. 13 Sep, 2007 1 commit
    • kmccullo's avatar
      WebCore: · c9112682
      kmccullo authored
              Reviewed by Geof, Sam, Adam, Hyatt, Darin.
      
              - <rdar://problem/5480234> JS setTimeout function requires a second argument
              - Removed check for number of arguments in setTimeout to behave like other browsers.
              - Added layoutTest setTimeout-no-arguments.html
      
              * bindings/js/kjs_window.cpp:
              (KJS::WindowFunc::callAsFunction):
      
      LayoutTests:
      
              Reviewed by Geof, Sam, Adam, Hyatt, Darin.
      
              - <rdar://problem/5480234> JS setTimeout function requires a second argument
              - Removed check for number of arguments in setTimeout to behave like other browsers.
      
              * fast/dom/Window/setTimeout-no-arguments-expected.txt: Added.
              * fast/dom/Window/setTimeout-no-arguments.html: Added.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@25545 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c9112682
  19. 25 Aug, 2007 1 commit
    • weinig's avatar
      WebCore: · 77143189
      weinig authored
              Reviewed by Adele.
      
              Fix for <rdar://problem/5426142>
      
              Use the EventTarget's frame when creating the EventListener.
      
              Tests: http/tests/security/listener/xss-JSTargetNode-onclick-addEventListener.html
                     http/tests/security/listener/xss-JSTargetNode-onclick-shortcut.html
                     http/tests/security/listener/xss-window-onclick-addEventListener.html
                     http/tests/security/listener/xss-window-onclick-shortcut.html
      
              * bindings/js/JSEventTargetNode.cpp:
              (WebCore::JSEventTargetNode::setListener):
              (WebCore::JSEventTargetNodePrototypeFunction::callAsFunction):
              * bindings/js/kjs_window.cpp:
              (KJS::WindowFunc::callAsFunction):
      
      LayoutTests:
      
              Reviewed by Adele.
      
              Tests for <rdar://problem/5426142>
      
              * http/tests/security/listener: Added.
              * http/tests/security/listener/resources: Added.
              * http/tests/security/listener/resources/childWindow.html: Added.
              * http/tests/security/listener/resources/childWithButton.html: Added.
              * http/tests/security/listener/resources/targetChild-JSTargetNode-onclick-addEventListener.html: Added.
              * http/tests/security/listener/resources/targetChild-JSTargetNode-onclick-shortcut.html: Added.
              * http/tests/security/listener/resources/targetChild-window-onclick-addEventListener.html: Added.
              * http/tests/security/listener/resources/targetChild-window-onclick-shortcut.html: Added.
              * http/tests/security/listener/xss-JSTargetNode-onclick-addEventListener-expected.txt: Added.
              * http/tests/security/listener/xss-JSTargetNode-onclick-addEventListener.html: Added.
              * http/tests/security/listener/xss-JSTargetNode-onclick-shortcut-expected.txt: Added.
              * http/tests/security/listener/xss-JSTargetNode-onclick-shortcut.html: Added.
              * http/tests/security/listener/xss-window-onclick-addEventListener-expected.txt: Added.
              * http/tests/security/listener/xss-window-onclick-addEventListener.html: Added.
              * http/tests/security/listener/xss-window-onclick-shortcut-expected.txt: Added.
              * http/tests/security/listener/xss-window-onclick-shortcut.html: Added.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@25249 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      77143189
  20. 12 Aug, 2007 1 commit
    • mjs's avatar
      LayoutTests: · 6a33c865
      mjs authored
              Reviewed by Darin and Sam.
              
              - test cases for <rdar://problem/5395213> cross-domain access to individual components of location object should be denied.
      
              * http/tests/security/cross-frame-access-location-expected.txt: This test's results changed, there are more debug messages due to access being legitimately denied.
              
              The remainder are new tests and support:
      
              * http/tests/security/resources/xss-DENIED-assign-location-hash-attacker.html: Added.
              * http/tests/security/resources/xss-DENIED-assign-location-host-attacker.html: Added.
              * http/tests/security/resources/xss-DENIED-assign-location-host-failure.html: Added.
              * http/tests/security/resources/xss-DENIED-assign-location-hostname-attacker.html: Added.
              * http/tests/security/resources/xss-DENIED-assign-location-hostname-failure.html: Added.
              * http/tests/security/resources/xss-DENIED-assign-location-nonstandardProperty-attacker.html: Added.
              * http/tests/security/resources/xss-DENIED-assign-location-pathname-attacker.html: Added.
              * http/tests/security/resources/xss-DENIED-assign-location-pathname-failure.html: Added.
              * http/tests/security/resources/xss-DENIED-assign-location-protocol-attacker.html: Added.
              * http/tests/security/resources/xss-DENIED-assign-location-protocol-failure.html: Added.
              * http/tests/security/resources/xss-DENIED-assign-location-reload-attacker.html: Added.
              * http/tests/security/resources/xss-DENIED-assign-location-search-attacker.html: Added.
              * http/tests/security/xss-DENIED-assign-location-hash-expected.txt: Added.
              * http/tests/security/xss-DENIED-assign-location-hash.html: Added.
              * http/tests/security/xss-DENIED-assign-location-host-expected.txt: Added.
              * http/tests/security/xss-DENIED-assign-location-host.html: Added.
              * http/tests/security/xss-DENIED-assign-location-hostname-expected.txt: Added.
              * http/tests/security/xss-DENIED-assign-location-hostname.html: Added.
              * http/tests/security/xss-DENIED-assign-location-nonstandardProperty-expected.txt: Added.
              * http/tests/security/xss-DENIED-assign-location-nonstandardProperty.html: Added.
              * http/tests/security/xss-DENIED-assign-location-pathname-expected.txt: Added.
              * http/tests/security/xss-DENIED-assign-location-pathname.html: Added.
              * http/tests/security/xss-DENIED-assign-location-protocol-expected.txt: Added.
              * http/tests/security/xss-DENIED-assign-location-protocol.html: Added.
              * http/tests/security/xss-DENIED-assign-location-reload-expected.txt: Added.
              * http/tests/security/xss-DENIED-assign-location-reload.html: Added.
              * http/tests/security/xss-DENIED-assign-location-search-expected.txt: Added.
              * http/tests/security/xss-DENIED-assign-location-search.html: Added.
      
      WebCore:
      
              Reviewed by Darin and Sam.
              
              <rdar://problem/5395213> cross-domain access to individual components of location object should be denied.
      
              * bindings/js/kjs_window.cpp:
              (KJS::Location::put): Add the appropriate cross-domain access checks.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@25028 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      6a33c865
  21. 08 Aug, 2007 2 commits
    • weinig's avatar
      LayoutTests: · d683791b
      weinig authored
              Reviewed by Brady.
      
              Test that protocol and host compares are case-insensitive.
      
              * http/tests/security/cross-frame-access-port-expected.txt:
              * http/tests/security/cross-frame-access-protocol-expected.txt:
              * http/tests/security/dataURL/xss-DENIED-to-data-url-sub-frame-uppercase-expected.txt: Added.
              * http/tests/security/dataURL/xss-DENIED-to-data-url-sub-frame-uppercase.html: Added.
              * http/tests/security/host-compare-case-insensitive-expected.txt: Added.
              * http/tests/security/host-compare-case-insensitive.html: Added.
              * http/tests/security/protocol-compare-case-insensitive-expected.txt: Added.
              * http/tests/security/protocol-compare-case-insensitive.html: Added.
              * http/tests/security/resources/cross-frame-iframe.html:
              * http/tests/security/resources/localhost-accesssor.html: Added.
      
      WebCore:
      
              Reviewed by Brady.
      
              Make protocol and host compares case-insensitive.
      
              * bindings/js/kjs_window.cpp:
              (KJS::Window::isSafeScript):
              * dom/Document.cpp:
              (WebCore::Document::initSecurityPolicyURL):
              * platform/DeprecatedString.cpp:
              (WebCore::equalIgnoringCase):
              * platform/DeprecatedString.h:
              (WebCore::equalIgnoringCase):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@24946 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      d683791b
    • weinig's avatar
      LayoutTests: · b1b050bc
      weinig authored
              Reviewed by Geoff Garen.
      
              Tests for <rdar://problem/5354635>
      
              * http/tests/security/dataURL: Added.
              * http/tests/security/dataURL/resources: Added.
              * http/tests/security/dataURL/resources/foreign-domain-data-url-accessee-iframe.html: Added.
              * http/tests/security/dataURL/resources/foreign-domain-data-url-accessee-opened-frame.html: Added.
              * http/tests/security/dataURL/resources/foreign-domain-data-url-accessor-iframe.html: Added.
              * http/tests/security/dataURL/resources/foreign-domain-data-url-accessor-opened-frame.html: Added.
              * http/tests/security/dataURL/resources/foreign-domain-data-url-window-location.html: Added.
              * http/tests/security/dataURL/xss-DENIED-from-data-url-in-foriegn-domain-subframe-expected.txt: Added.
              * http/tests/security/dataURL/xss-DENIED-from-data-url-in-foriegn-domain-subframe.html: Added.
              * http/tests/security/dataURL/xss-DENIED-from-data-url-in-foriegn-domain-window-open-expected.txt: Added.
              * http/tests/security/dataURL/xss-DENIED-from-data-url-in-foriegn-domain-window-open.html: Added.
              * http/tests/security/dataURL/xss-DENIED-from-data-url-sub-frame-2-level-expected.txt: Added.
              * http/tests/security/dataURL/xss-DENIED-from-data-url-sub-frame-2-level.html: Added.
              * http/tests/security/dataURL/xss-DENIED-from-data-url-sub-frame-expected.txt: Added.
              * http/tests/security/dataURL/xss-DENIED-from-data-url-sub-frame-to-data-url-sub-frame-expected.txt: Added.
              * http/tests/security/dataURL/xss-DENIED-from-data-url-sub-frame-to-data-url-sub-frame.html: Added.
              * http/tests/security/dataURL/xss-DENIED-from-data-url-sub-frame.html: Added.
              * http/tests/security/dataURL/xss-DENIED-from-data-url-to-data-url-expected.txt: Added.
              * http/tests/security/dataURL/xss-DENIED-from-data-url-to-data-url.html: Added.
              * http/tests/security/dataURL/xss-DENIED-from-javascript-url-window-open-expected.txt: Added.
              * http/tests/security/dataURL/xss-DENIED-from-javascript-url-window-open.html: Added.
              * http/tests/security/dataURL/xss-DENIED-to-data-url-from-data-url-expected.txt: Added.
              * http/tests/security/dataURL/xss-DENIED-to-data-url-from-data-url.html: Added.
              * http/tests/security/dataURL/xss-DENIED-to-data-url-in-foriegn-domain-subframe-expected.txt: Added.
              * http/tests/security/dataURL/xss-DENIED-to-data-url-in-foriegn-domain-subframe-location-change-expected.txt: Added.
              * http/tests/security/dataURL/xss-DENIED-to-data-url-in-foriegn-domain-subframe-location-change.html: Added.
              * http/tests/security/dataURL/xss-DENIED-to-data-url-in-foriegn-domain-subframe.html: Added.
              * http/tests/security/dataURL/xss-DENIED-to-data-url-in-foriegn-domain-window-open-expected.txt: Added.
              * http/tests/security/dataURL/xss-DENIED-to-data-url-in-foriegn-domain-window-open.html: Added.
              * http/tests/security/dataURL/xss-DENIED-to-data-url-sub-frame-2-level-expected.txt: Added.
              * http/tests/security/dataURL/xss-DENIED-to-data-url-sub-frame-2-level.html: Added.
              * http/tests/security/dataURL/xss-DENIED-to-data-url-sub-frame-expected.txt: Added.
              * http/tests/security/dataURL/xss-DENIED-to-data-url-sub-frame.html: Added.
              * http/tests/security/dataURL/xss-DENIED-to-data-url-window-open-expected.txt: Added.
              * http/tests/security/dataURL/xss-DENIED-to-data-url-window-open.html: Added.
      
      WebCore:
      
              Reviewed by Geoff Garen.
      
              Fix for <rdar://problem/5354635>
      
              Match Firefox's model for data: URLs by not allowing them script access
              to any frames other then itself.
      
              * bindings/js/kjs_window.cpp:
              (KJS::Window::isSafeScript):
              * dom/Document.cpp:
              (WebCore::Document::initSecurityPolicyURL):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@24938 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      b1b050bc
  22. 06 Aug, 2007 1 commit
    • weinig's avatar
      LayoutTests: · 343b6ff9
      weinig authored
              Reviewed by Maciej.
      
              Tests for <rdar://problem/5354689>
      
              * http/tests/security/javascriptURL: Added.
              * http/tests/security/javascriptURL/resources: Added.
              * http/tests/security/javascriptURL/resources/foreign-domain-javascipt-url-accessee-iframe.html: Added.
              * http/tests/security/javascriptURL/resources/foreign-domain-javascipt-url-accessee-opened-frame.html: Added.
              * http/tests/security/javascriptURL/resources/foreign-domain-javascipt-url-accessor-iframe.html: Added.
              * http/tests/security/javascriptURL/resources/foreign-domain-javascipt-url-accessor-opened-frame.html: Added.
              * http/tests/security/javascriptURL/xss-ALLOWED-from-javascript-url-sub-frame-2-level-expected.txt: Added.
              * http/tests/security/javascriptURL/xss-ALLOWED-from-javascript-url-sub-frame-2-level.html: Added.
              * http/tests/security/javascriptURL/xss-ALLOWED-from-javascript-url-sub-frame-expected.txt: Added.
              * http/tests/security/javascriptURL/xss-ALLOWED-from-javascript-url-sub-frame-to-javascript-url-sub-frame-expected.txt: Added.
              * http/tests/security/javascriptURL/xss-ALLOWED-from-javascript-url-sub-frame-to-javascript-url-sub-frame.html: Added.
              * http/tests/security/javascriptURL/xss-ALLOWED-from-javascript-url-sub-frame.html: Added.
              * http/tests/security/javascriptURL/xss-ALLOWED-from-javascript-url-to-javscript-url-expected.txt: Added.
              * http/tests/security/javascriptURL/xss-ALLOWED-from-javascript-url-to-javscript-url.html: Added.
              * http/tests/security/javascriptURL/xss-ALLOWED-from-javascript-url-window-open-expected.txt: Added.
              * http/tests/security/javascriptURL/xss-ALLOWED-from-javascript-url-window-open.html: Added.
              * http/tests/security/javascriptURL/xss-ALLOWED-to-javascript-url-from-javscript-url-expected.txt: Added.
              * http/tests/security/javascriptURL/xss-ALLOWED-to-javascript-url-from-javscript-url.html: Added.
              * http/tests/security/javascriptURL/xss-ALLOWED-to-javascript-url-sub-frame-2-level-expected.txt: Added.
              * http/tests/security/javascriptURL/xss-ALLOWED-to-javascript-url-sub-frame-2-level.html: Added.
              * http/tests/security/javascriptURL/xss-ALLOWED-to-javascript-url-sub-frame-expected.txt: Added.
              * http/tests/security/javascriptURL/xss-ALLOWED-to-javascript-url-sub-frame.html: Added.
              * http/tests/security/javascriptURL/xss-ALLOWED-to-javascript-url-window-open-expected.txt: Added.
              * http/tests/security/javascriptURL/xss-ALLOWED-to-javascript-url-window-open.html: Added.
              * http/tests/security/javascriptURL/xss-DENIED-from-javascipt-url-in-foriegn-domain-subframe-expected.txt: Added.
              * http/tests/security/javascriptURL/xss-DENIED-from-javascipt-url-in-foriegn-domain-subframe.html: Added.
              * http/tests/security/javascriptURL/xss-DENIED-from-javascipt-url-in-foriegn-domain-window-open-expected.txt: Added.
              * http/tests/security/javascriptURL/xss-DENIED-from-javascipt-url-in-foriegn-domain-window-open.html: Added.
              * http/tests/security/javascriptURL/xss-DENIED-to-javascipt-url-in-foriegn-domain-subframe-expected.txt: Added.
              * http/tests/security/javascriptURL/xss-DENIED-to-javascipt-url-in-foriegn-domain-subframe.html: Added.
              * http/tests/security/javascriptURL/xss-DENIED-to-javascipt-url-in-foriegn-domain-window-open-expected.txt: Added.
              * http/tests/security/javascriptURL/xss-DENIED-to-javascipt-url-in-foriegn-domain-window-open.html: Added.
              * http/tests/security/resources/cross-frame-access.js:
      
      WebCore:
      
              Reviewed by Maciej.
      
              Fix for <rdar://problem/5354689>
      
              - Use document variable to determine permissions instead
                of traversing the frame tree. 
      
              * bindings/js/kjs_window.cpp:
              (KJS::Window::isSafeScript):
              * dom/Document.cpp:
              (WebCore::Document::Document):
              (WebCore::Document::initSecurityPolicyURL):
              * dom/Document.h:
              (WebCore::Document::securityPolicyURL):
              * loader/FrameLoader.cpp:
              (WebCore::FrameLoader::setOpener): We must re-initialize the
              safeScript URL when setting the opener because the opener was
              not known at Document construction.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@24900 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      343b6ff9
  23. 30 Jul, 2007 1 commit
    • weinig's avatar
      LayoutTests: · c1cac714
      weinig authored
              Reviewed by Maciej.
      
              Update tests for <rdar://problem/5363896>
              REGRESSION: Setting document.domain does not override port-based cross-frame security checks -- breaks SAP NetWeaver
      
              - Also changes frame access test to use shared resource iframes.
      
              * http/tests/security/cross-frame-access-port-expected.txt:
              * http/tests/security/cross-frame-access-port-explicit-domain-expected.txt:
              * http/tests/security/cross-frame-access-port-explicit-domain.html:
              * http/tests/security/cross-frame-access-port.html:
              * http/tests/security/cross-frame-access-protocol-expected.txt:
              * http/tests/security/cross-frame-access-protocol-explicit-domain-expected.txt:
              * http/tests/security/cross-frame-access-protocol-explicit-domain.html:
              * http/tests/security/cross-frame-access-protocol.html:
              * http/tests/security/resources/cross-frame-iframe-for-port-explicit-domain-test.html: Removed.
              * http/tests/security/resources/cross-frame-iframe-for-port-test.html: Removed.
              * http/tests/security/resources/cross-frame-iframe-for-protocol-explicit-domain-test.html: Removed.
              * http/tests/security/resources/cross-frame-iframe-for-protocol-test.html: Removed.
              * http/tests/security/resources/cross-frame-iframe-with-explicit-domain-set.html: Added.
              * http/tests/security/resources/cross-frame-iframe.html: Added.
      
      WebCore:
      
              Reviewed by Maciej.
      
              Fix for <rdar://problem/5363896>
              REGRESSION: Setting document.domain does not override port-based cross-frame security checks -- breaks SAP NetWeaver
      
              Updates the results for:
                  http/tests/security/cross-frame-access-port-explicit-domain.html
                  http/tests/security/cross-frame-access-protocol-explicit-domain.html
      
              * bindings/js/kjs_window.cpp:
              (KJS::createWindow): Use the new setDomainInternal method.
              (KJS::Window::isSafeScript): Don't set check the port or protocol 
              if both documents have explicitly set document.domain in the DOM
              and the those domains are equal.
              * dom/Document.cpp:
              (WebCore::Document::Document):
              (WebCore::Document::setDomain): Remove force parameter and change 
              all calls that relied on it use the new setDomainInternal method
              which does the same thing.
              (WebCore::Document::setDomainInternal): 
              * dom/Document.h: Add new m_domainWasSetInDOM variable and accessor.
              (WebCore::Document::domainWasSetInDOM):
              * loader/FrameLoader.cpp:
              (WebCore::FrameLoader::checkCallImplicitClose): Use the new setDomainInternal method. 
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@24781 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c1cac714
  24. 26 Jul, 2007 1 commit
    • kmccullo's avatar
      LayoutTests: · 231507bc
      kmccullo authored
              Reviewed by Darin, Geoff and Sam.
      
              - <rdar://problem/5150461> Resizing the window larger than the screen causes no resize.
      
              - Tests to ensure we resize/move the window out of bounds correctly.
      
              * fast/dom/Window/window-resize-expected.txt: Added.
              * fast/dom/Window/window-resize.html: Added.
              * mac/leopard/Skipped:
      
      WebCore:
      
              Reviewed by Darin, Geoff and Sam.
      
              - <rdar://problem/5150461> Resizing the window larger than the screen causes no resize.
              - We now better match the behavior of other browsers.
      
              * bindings/js/kjs_window.cpp:
              (KJS::constrainToVisible):
              (KJS::WindowFunc::callAsFunction):
      
      WebKitTools:
      
              Reviewed by Darin, Geoff, Sam.
      
              - <rdar://problem/5150461> Resizing the window larger than the screen causes no resize.
      
              - Added delegate methods to intercept and fake the frame location so methods like resizeTo and moveTo can change the window location without actually making the window appear on-screen.
      
              * DumpRenderTree/UIDelegate.h:
              * DumpRenderTree/UIDelegate.m:
              (-[UIDelegate webView:setFrame:]):
              (-[UIDelegate webViewFrame:]):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@24654 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      231507bc
  25. 22 Jul, 2007 1 commit
  26. 20 Jul, 2007 2 commits
    • ggaren's avatar
      Suggested by Darin Adler. · 211b0918
      ggaren authored
              
              Slight tweak to my last commit: changed gcController() to return a 
              reference instead of a pointer.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@24495 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      211b0918
    • ggaren's avatar
      Reviewed by Darin Adler. · 4434b147
      ggaren authored
              
              Fixed http://bugs.webkit.org/show_bug.cgi?id=12900 Page tear-down 
              forces garbage collection once per frame
      
              Also fixed <rdar://problem/5286989> GC on window close does not always 
              bring the JS object count down to 0
              
              Implemented a 0-delay GC timer in WebCore. Instead of forcing GC
              immediately, code that thinks it has created a lot of garbage starts
              the timer. This has two advantages: 
      
              1) Multiple GCs can coalesce. In my pathological test case, this 
              improves performance by an order of magnitude. 
              
              2) Conservative marking is less likely to keep alive important dead
              objects, like the window object, because the stack is small and free of
              JS processing when the timer fires.
      
              Added GCController.h/.cpp, sometimes blindly:
              * WebCore.pro:
              * WebCore.vcproj/WebCore.vcproj:
              * WebCore.xcodeproj/project.pbxproj:
              * WebCoreSources.bkl:
      
              Added singleton that implements GC on a 0-delay timer:
              * bindings/js/GCController.h: Added.
              * bindings/js/GCController.cpp: Added.
              
              Changed Collector::collect() calls below to call to the singleton:
              * bindings/js/kjs_proxy.cpp:
              (WebCore::KJSProxy::~KJSProxy):
              * bindings/js/kjs_window.cpp:
              (KJS::Window::clear):
              * history/CachedPage.cpp:
              (WebCore::CachedPage::clear):
              
              * page/Frame.cpp:
              (WebCore::Frame::~Frame): Removed previous slightly hackish attempt to
              avoid conservative marking of the window object.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@24493 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      4434b147
  27. 19 Jul, 2007 1 commit
    • beidson's avatar
      Reviewed by Sam · 3a26848b
      beidson authored
              <rdar://problem/5134929> REGRESSION: Colon detected as delimiting an empty port is stripped
      
              The fix for this was in KURL::parse() which had a slightly changed rule that would strip the colon if there
              was no port.
      
              An additional canonicalization fix was made in window.location.host to match the expected behavior of leaving
              the colon in place - before this fix, if the colon was there but no port was there, we'd see the port as 0.
      
              * bindings/js/kjs_window.cpp:
              (KJS::Location::put): Call setHostAndPort instead of setHost and setPort seperately
      
              * manual-tests/location-host-canonicalization.html: Added.
      
              * platform/KURL.cpp:
              (WebCore::KURL::setHostAndPort): Set the host and port as one string component then reparse the URL
              (WebCore::KURL::parse): Change one line to consider the empty colon as part of the host name
              * platform/KURL.h:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@24462 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      3a26848b
  28. 17 Jul, 2007 2 commits
    • weinig's avatar
      Reviewed by Adam Roben. · c8db9b11
      weinig authored
              Move self, opener, parent, top, window, and frames from kjs_window
              to DOMWindow and auto-generate the bindings for them.
      
              * bindings/js/kjs_window.cpp:
              (KJS::Window::getValueProperty):
              * bindings/js/kjs_window.h:
              (KJS::Window::):
              * page/DOMWindow.cpp:
              (WebCore::DOMWindow::self):
              (WebCore::DOMWindow::opener):
              (WebCore::DOMWindow::parent):
              (WebCore::DOMWindow::top):
              * page/DOMWindow.h:
              (WebCore::DOMWindow::window):
              (WebCore::DOMWindow::frames):
              * page/DOMWindow.idl:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@24354 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c8db9b11
    • ggaren's avatar
      LayoutTests: · bcd93e64
      ggaren authored
              Reviewed by Sam Weinig.
              
              Tests for <rdar://problem/5334483> REGRESSION: JavaScript-induced loads
              not added to back/forward list
      
              * fast/history/location-assign-adds-history-item-expected.txt: Added.
              * fast/history/location-assign-adds-history-item.html: Added.
              * fast/history/location-href-set-adds-history-item-expected.txt: Added.
              * fast/history/location-href-set-adds-history-item.html: Added.
              * fast/history/location-replace-adds-history-item-expected.txt: Added.
              * fast/history/location-replace-adds-history-item.html: Added.
              * fast/history/location-set-adds-history-item-expected.txt: Added.
              * fast/history/location-set-adds-history-item.html: Added.
              * fast/history/window-open-adds-history-item-expected.txt: Added.
              * fast/history/window-open-adds-history-item.html: Added.
              * fast/history/window-open-adds-history-item2-expected.txt: Added.
              * fast/history/window-open-adds-history-item2.html: Added.
              * http/tests/navigation/redirect-load-no-form-restoration-expected.txt:
              Updated results. Adding a history entry here is correct behavior.
      
      WebCore:
      
              Reviewed by Sam Weinig.
              
              Fixed <rdar://problem/5334483> REGRESSION: JavaScript-induced 
              window.open loads not added to back/forward list
              
              I did an audit of our history rules in loading and tried to establish
              some sane uniformity.
              
              The uniform rule is:
                  - HTTP redirects and HTTP redirects simulated by <meta http-equiv>
                  add a history item if and only if the redirect takes > 1 second.
                  - Other navigations, including JavaScript navigations, always
                  add a history item, except for location.replace navigations.
      
              In the future, we'll want to refine the second case to be more like the
              first. I've filed <rdar://problem/5339292> about that.
      
              * bindings/js/JSHTMLDocumentCustom.cpp:
              (WebCore::JSHTMLDocument::setLocation): Don't pass 'true' for 
              userGesture unconditionally. userGesture is used to determine popup 
              blocking, not history item creation.
      
              * bindings/js/kjs_window.cpp: Pass 'false' for lockHistory in all loads
              except location.replace, which intends to lock history.
      
              * loader/FrameLoader.cpp: Distinguish between lockHistory and 
              userGesture. The former determines whether a new history item gets
              created. The latter determines whether JavaScript can open popup
              windows. Start passing these variables in functions that used to
              swallow or conflate them.
              
              (WebCore::FrameLoader::requestFrame): Pass 'true' for lockHistory here
              because that's usually correct when setting the 'src' attribute of a
              child frame, and we want to avoid regressing <rdar://problem/4921797>.
      
              (WebCore::FrameLoader::load): Use the lockHistory variable to determine
              whether to start a history-creating load. Using userGesture for this
              purpose is wrong, as explained above.
      
              * loader/FrameLoader.h: Renamed one variant of scheduleRedirection to
              scheduleHTTPRedirection because the behavior there of measuring elapsed
              time is specific to the HTTP redirection case.
      
              * page/ContextMenuController.cpp:
              (WebCore::ContextMenuController::contextMenuItemSelected): lockHistory
              can always be false here because this navigation is never the result of
              a redirection.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@24353 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      bcd93e64
  29. 16 Jul, 2007 4 commits
    • weinig's avatar
      Reviewed by Adam and Maciej. · f4315cf2
      weinig authored
              Move the frameElement attribute from kjs_window to DOMWindow and
              auto-generate the bindings for it. 
      
              * bindings/js/kjs_window.cpp:
              (KJS::Window::getValueProperty):
              * bindings/js/kjs_window.h:
              (KJS::Window::):
              * bindings/scripts/CodeGeneratorJS.pm:
              * page/DOMWindow.cpp:
              (WebCore::DOMWindow::frameElement):
              (WebCore::DOMWindow::devicePixelRatio):
              * page/DOMWindow.h:
              * page/DOMWindow.idl:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@24351 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      f4315cf2
    • weinig's avatar
      Reviewed by Adam. · c7521237
      weinig authored
              Move more functions from kjs_window to DOMWindow and auto-generate
              the bindings for them.
      
              * bindings/js/kjs_window.cpp:
              (KJS::WindowFunc::callAsFunction):
              * bindings/js/kjs_window.h:
              (KJS::Window::):
              * page/DOMWindow.cpp:
              (WebCore::DOMWindow::print):
              (WebCore::DOMWindow::stop):
              (WebCore::DOMWindow::alert):
              (WebCore::DOMWindow::confirm):
              (WebCore::DOMWindow::prompt):
              (WebCore::DOMWindow::find):
              * page/DOMWindow.h:
              * page/DOMWindow.idl:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@24350 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c7521237
    • weinig's avatar
      LayoutTests: · 52403e64
      weinig authored
              Reviewed by Oliver.
      
              Remove more redundant isSafeScript checks.
      
              * http/tests/security/cross-frame-access-custom-expected.txt:
              * http/tests/security/cross-frame-access-get-expected.txt:
              * http/tests/security/cross-frame-access-name-getter-expected.txt:
      
      WebCore:
      
              Reviewed by Oliver.
      
              Remove more redundant isSafeScript checks.
      
              * bindings/js/kjs_window.cpp:
              (KJS::Window::getOwnPropertySlot):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@24346 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      52403e64
    • aroben's avatar
      Replace Frame::print with Chrome::print and remove -[WebFrameBridge print] · a64dcca8
      aroben authored
      WebCore:
      
              Replace Frame::print with Chrome::print
      
              This also adds a Frame* parameter to Chrome::print and
              ChromeClient::print so that it knows which Frame to print.
      
              Reviewed by Darin.
      
              All tests pass.
      
              * bindings/js/kjs_window.cpp:
              (KJS::WindowFunc::callAsFunction): Call Chrome::print.
              * editing/JSEditor.cpp: Ditto.
      
              * bridge/win/FrameWin.cpp: Removed Frame::print.
              * page/Frame.h: Ditto.
              * page/mac/FrameMac.mm: Ditto.
              * page/qt/FrameQt.cpp: Ditto.
              * platform/gdk/FrameGdk.cpp: Ditto.
              * page/mac/WebCoreFrameBridge.h: Removed -print.
      
              * page/Chrome.cpp: Added Frame* parameter to Chrome::print and pass it
              up to the ChromeClient.
              * page/Chrome.h: Ditto.
              * page/ChromeClient.h: Ditto.
              * platform/gdk/TemporaryLinkStubs.cpp: Ditto.
              * platform/graphics/svg/SVGImageEmptyClients.h: Ditto.
      
      WebKit:
      
              Move printing from WebFrameBridge to WebChromeClient
      
              Reviewed by Darin.
      
              * WebCoreSupport/WebChromeClient.h: Updated for ChromeClient changes.
              * WebCoreSupport/WebChromeClient.mm:
              (WebChromeClient::print): Moved code from WebFrameBridge.
              * WebCoreSupport/WebFrameBridge.mm: Removed -print.
      
      WebKit/win:
      
              Updated WebChromeClient for ChromeClient changes.
      
              Reviewed by Darin.
      
              * WebChromeClient.cpp:
              (WebChromeClient::print): Added a Frame* parameter.
              * WebChromeClient.h: Ditto.
      
      WebKitQt:
      
              Updated ChromeClientQt for ChromeClient changes.
      
              Reviewed by Darin.
      
              * WebCoreSupport/ChromeClientQt.cpp:
              (WebCore::ChromeClientQt::print): Added a Frame* parameter.
              * WebCoreSupport/ChromeClientQt.h: Ditto.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@24330 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      a64dcca8
  30. 15 Jul, 2007 1 commit
    • weinig's avatar
      LayoutTests: · 2ef765ec
      weinig authored
              Reviewed by Geoff Garen.
      
              Update results after removing redundant calls to isSafeScript()
      
              * http/tests/security/cross-frame-access-expected.txt:
      
      WebCore:
      
              Reviewed by Geoff Garen.
      
              Remove redundant calls to isSafeScript()
      
              * bindings/js/JSDOMWindowCustom.cpp:
              (WebCore::JSDOMWindow::customPut):
              * bindings/js/kjs_window.cpp:
              (KJS::Window::put):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@24300 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      2ef765ec
  31. 13 Jul, 2007 1 commit
    • weinig's avatar
      LayoutTests: · a2868e4e
      weinig authored
              Reviewed by Geoff Garen.
      
              Tests for <rdar://problem/5318394>
              http site can read/write content of https site in same domain
      
              Adds ssl configuration information and tests.
      
              * http/conf/apache2-httpd.conf:
              * http/conf/cygwin-httpd.conf:
              * http/conf/httpd.conf:
              * http/conf/webkit-httpd.pem: Added.
              * http/tests/security/cross-frame-access-expected.txt:
              * http/tests/security/cross-frame-access-first-time-expected.txt:
              * http/tests/security/cross-frame-access-protocol-expected.txt: Added.
              * http/tests/security/cross-frame-access-protocol.html: Added.
              * http/tests/security/cross-frame-access-put-expected.txt:
              * http/tests/ssl: Added.
              * http/tests/ssl/resources: Added.
              * http/tests/ssl/resources/cross-frame-access-protocol-iframe.html: Added.
              * http/tests/ssl/verify-ssl-enabled-expected.txt: Added.
              * http/tests/ssl/verify-ssl-enabled.php: Added.
      
      WebCore:
      
              Reviewed by Geoff Garen.
      
              Patch for <rdar://problem/5318394>
              http site can read/write content of https site in same domain
      
              Add protocol and port checks in isSafeScript.
      
              * bindings/js/kjs_window.cpp:
              (KJS::Window::isSafeScript):
      
      WebKitTools:
      
              Reviewed by Geoff Garen.
      
              Add support for running SSL tests over HTTPS.
      
              * DumpRenderTree/DumpRenderTree.m:
              (runTest):
              * DumpRenderTree/FrameLoadDelegate.m:
              (-[FrameLoadDelegate webView:didFailProvisionalLoadWithError:forFrame:]):
              * Scripts/run-webkit-httpd:
              * Scripts/run-webkit-tests:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@24277 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      a2868e4e
  32. 12 Jul, 2007 1 commit
    • weinig's avatar
      LayoutTests: · 8c392cc4
      weinig authored
              Reviewed by Maciej.
      
              Test for <rdar://problem/5329841>
              Calling window.closed on a closed window causes Safari to crash
      
              * fast/dom/Window/window-closed-crash-expected.txt: Added.
              * fast/dom/Window/window-closed-crash.html: Added.
      
      WebCore:
      
              Reviewed by Maciej.
      
              Patch for <rdar://problem/5329841>
              Calling window.closed on a closed window causes Safari to crash
      
              - Replaces the Frame member variable in KJS::Window for more appropriate DOMWindow
              - Adds additional new null checks as necessary
              - Removes bogus toBoolean method
              - Removes unused scheduleClose method
      
              Test: fast/dom/Window/window-closed-crash.html
      
              * bindings/js/JSCustomXPathNSResolver.cpp:
              (WebCore::JSCustomXPathNSResolver::create):
              * bindings/js/JSDOMWindowCustom.cpp:
              (WebCore::JSDOMWindow::customGetOwnPropertySlot):
              (WebCore::JSDOMWindow::customPut):
              * bindings/js/JSXMLHttpRequest.cpp:
              (KJS::JSXMLHttpRequestPrototypeFunction::callAsFunction):
              * bindings/js/kjs_events.cpp:
              (WebCore::JSAbstractEventListener::handleEvent):
              (WebCore::JSLazyEventListener::parseCode):
              * bindings/js/kjs_window.cpp:
              (KJS::Window::Window):
              (KJS::Window::impl):
              (KJS::Window::interpreter):
              (KJS::Window::location):
              (KJS::Window::find):
              (KJS::allowPopUp):
              (KJS::createWindow):
              (KJS::canShowModalDialog):
              (KJS::canShowModalDialogNow):
              (KJS::showModalDialog):
              (KJS::Window::getValueProperty):
              (KJS::Window::childFrameGetter):
              (KJS::Window::indexGetter):
              (KJS::Window::namedItemGetter):
              (KJS::Window::getOwnPropertySlot):
              (KJS::Window::put):
              (KJS::Window::isSafeScript):
              (KJS::Window::setListener):
              (KJS::Window::getListener):
              (KJS::Window::clear):
              (KJS::WindowFunc::callAsFunction):
              (KJS::Window::updateLayout):
              (KJS::ScheduledAction::execute):
              (KJS::Window::disconnectFrame):
              (KJS::Location::put):
              (KJS::LocationFunc::callAsFunction):
              * bindings/js/kjs_window.h:
              * page/mac/WebCoreFrameBridge.mm:
              (updateRenderingForBindings):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@24241 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      8c392cc4
  33. 10 Jul, 2007 1 commit
    • weinig's avatar
      LayoutTests: · 48fa9303
      weinig authored
              Reviewed by Oliver.
      
              * fast/dom/Window/get-set-properties-expected.txt: Added.
              * fast/dom/Window/get-set-properties.html: Added.
      
      WebCore:
      
              Reviewed by Oliver.
      
              Move more attributes from the pure JS bindings in KJS::Window
              to the implementation in DOMWindow and autogenerate the new bindings
      
              Test: fast/dom/Window/get-set-properties.html
      
              * bindings/js/JSDOMWindowCustom.cpp:
              (WebCore::JSDOMWindow::customGetOwnPropertySlot): Change to use propHashTable in
              JSDOMWindow instead of KJS::Window
              * bindings/js/kjs_window.cpp:
              (KJS::Window::getValueProperty):
              (KJS::Window::put):
              * bindings/js/kjs_window.h:
              (KJS::Window::):
              * bindings/scripts/CodeGeneratorJS.pm: Cleanup getValueProperty and put generation
              to reduce code duplication. 
              * page/DOMWindow.cpp:
              (WebCore::DOMWindow::closed):
              (WebCore::DOMWindow::length):
              (WebCore::DOMWindow::name):
              (WebCore::DOMWindow::setName):
              (WebCore::DOMWindow::status):
              (WebCore::DOMWindow::setStatus):
              (WebCore::DOMWindow::defaultStatus):
              (WebCore::DOMWindow::setDefaultStatus):
              * page/DOMWindow.h:
              (WebCore::DOMWindow::defaultstatus):
              (WebCore::DOMWindow::setDefaultstatus):
              * page/DOMWindow.idl:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@24182 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      48fa9303