Timeline



Dec 3, 2008:

11:43 PM Changeset in webkit [38989] by ggaren@apple.com
  • 9 edits in trunk

JavaScriptCore:

2008-12-03 Geoffrey Garen <ggaren@apple.com>

Reviewed by Oliver Hunt.


Optimized sequences of characters in regular expressions by comparing
two characters at a time.


1-2% speedup on SunSpider, 19-25% speedup on regexp-dna.

  • assembler/MacroAssembler.h: (JSC::MacroAssembler::load32): (JSC::MacroAssembler::jge32): Filled out a few more macro methods.
  • assembler/X86Assembler.h: (JSC::X86Assembler::movl_mr): Added a verion of movl_mr that operates without an offset, to allow the macro assembler to optmize for that case.


  • wrec/WREC.cpp: (JSC::WREC::Generator::compileRegExp): Test the saved value of index instead of the index register when checking for "end of input." The index register doesn't increment by 1 in an orderly fashion, so testing it for == "end of input" is not valid.


Also, jump all the way to "return failure" upon reaching "end of input,"
instead of executing the next alternative. This is more logical, and
it's a slight optimization in the case of an expression with many alternatives.

  • wrec/WRECGenerator.cpp: (JSC::WREC::Generator::generateIncrementIndex): Added support for jumping to a failure label in the case where the index has reached "end of input."

(JSC::WREC::Generator::generatePatternCharacterSequence):
(JSC::WREC::Generator::generatePatternCharacterPair): This is the
optmization. It's basically like generatePatternCharacter, but it runs two
characters at a time.


(JSC::WREC::Generator::generatePatternCharacter): Changed to use isASCII,
since it's clearer than comparing to a magic hex value.


  • wrec/WRECGenerator.h:

LayoutTests:

2008-12-03 Geoffrey Garen <ggaren@apple.com>

Reviewed by Oliver Hunt.


Added a test for another input length miscalculation.

  • fast/regex/alternative-length-miscalculation-expected.txt:
  • fast/regex/resources/alternative-length-miscalculation.js:
11:27 PM Changeset in webkit [38988] by ap@webkit.org
  • 1 edit
    3 moves
    14 adds in trunk/LayoutTests

Reviewed by Darin Adler.

Add missing test files (utf-16,32 files) and two php files
for bug 21635 and enabled utf-7 tests (bug 22492). The patch
for bug 21635 was landed in http://trac.webkit.org/changeset/38755,
but binary test files (utf-16/32) were omitted in the changeset.

https://bugs.webkit.org/show_bug.cgi?id=21635
https://bugs.webkit.org/show_bug.cgi?id=22492

  • http/tests/misc/resources/check-query-param.php: Added.
  • http/tests/misc/resources/echo-query-param.php: Added.
  • http/tests/misc/submit-get-in-utf16be.html: Added.
  • http/tests/misc/submit-get-in-utf16le.html: Added.
  • http/tests/misc/submit-get-in-utf32be.html: Added.
  • http/tests/misc/submit-get-in-utf32le.html: Added.
  • http/tests/misc/submit-get-in-utf7.html: Copied from http/tests/misc/submit-get-in-utf7.html-disabled.
  • http/tests/misc/submit-get-in-utf7.html-disabled: Removed.
  • http/tests/misc/submit-post-in-utf16be.html: Added.
  • http/tests/misc/submit-post-in-utf16le.html: Added.
  • http/tests/misc/submit-post-in-utf32be.html: Added.
  • http/tests/misc/submit-post-in-utf32le.html: Added.
  • http/tests/misc/submit-post-in-utf7.html: Copied from http/tests/misc/submit-post-in-utf7.html-disabled.
  • http/tests/misc/submit-post-in-utf7.html-disabled: Removed.
  • http/tests/misc/url-in-utf16be.html: Added.
  • http/tests/misc/url-in-utf16le.html: Added.
  • http/tests/misc/url-in-utf32be.html: Added.
  • http/tests/misc/url-in-utf32le.html: Added.
  • http/tests/misc/url-in-utf7.html: Copied from http/tests/misc/url-in-utf7.html-disabled.
  • http/tests/misc/url-in-utf7.html-disabled: Removed.
11:21 PM Changeset in webkit [38987] by ap@webkit.org
  • 2 edits in trunk/WebCore

2008-12-03 David Levin <levin@chromium.org>

Reviewed by Alexey Proskuryakov.

Remove uses of document() in XMLHttpRequest where simple.
https://bugs.webkit.org/show_bug.cgi?id=22619

  • xml/XMLHttpRequest.cpp: (WebCore::XMLHttpRequest::responseXML): Return NULL in the worker case which is according to spec (and avoids using document()).

(WebCore::XMLHttpRequest::callReadyStateChangeListener):
(WebCore::XMLHttpRequest::initSend):
Use scriptExecutionContext() instead of document().

11:20 PM Changeset in webkit [38986] by ap@webkit.org
  • 7 edits in trunk/WebCore

Reviewed by Alexey Proskuryakov.

Make ScriptExecutionContextTaskWorkerTask::performTask a pure virtual function.
https://bugs.webkit.org/show_bug.cgi?id=22642

  • dom/Document.cpp: (WebCore::ScriptExecutionContextTaskTimer::ScriptExecutionContextTaskTimer): (WebCore::ScriptExecutionContextTaskTimer::fired): (WebCore::PerformTaskContext::PerformTaskContext): (WebCore::performTask): (WebCore::Document::postTask):
  • dom/Document.h:
  • dom/ScriptExecutionContext.cpp:
  • dom/ScriptExecutionContext.h:
  • dom/WorkerContext.cpp: (WebCore::ScriptExecutionContextTaskWorkerTask::create): (WebCore::ScriptExecutionContextTaskWorkerTask::ScriptExecutionContextTaskWorkerTask): (WebCore::ScriptExecutionContextTaskWorkerTask::performTask): (WebCore::WorkerContext::postTask):
  • dom/WorkerContext.h:
11:19 PM Changeset in webkit [38985] by ap@webkit.org
  • 18 edits in trunk/WebCore

2008-12-03 Dmitry Titov <dimich@chromium.org>

Reviewed by Alexey Proskuryakov.

Using ActiveDOMObject as base class for DOMTimer.
https://bugs.webkit.org/show_bug.cgi?id=22620

Using ActiveDOMObject simplifies the code because ActiveDOMObject
is wired for stop/pause/resume on loading/unloading/caching the page etc
so the timer-specific code that does the same can be removed.
In addition, timers can be now paused/resumed 'in place' which
makes it unnecessary to 'serialize' them into special PausedTimeouts
instance, so pause/resumeTimeouts implementation in JSDOMWindowBase can also be removed.
Also, moving TimeoutMap from JSDOMWindowBase to Document matches lifetime
of timeouts and makes it possible to not roundtrip them via PausedTimeouts
every time when JSDOMWindow wrapper is destroyed while the page is in the b/f cache.

Timeouts are now paused with other ActiveDOMObjects:

  • before creating CachedPage in FrameLoader::commitProvisionalLoad()
  • in JavaScriptDebugServer::setJavaScriptPaused
  • during modal UI operations in Chrome::* this is equivalent to previous usage of JSDOMWindowBase::pauseTimeouts()

Timeouts are stopped to prevent future firing from:

  • FrameLoader::clear()
  • FrameLoader::frameDetached() this is equivalent to previous usage of JSDOMWindowBase::clearAllTimeouts()

This is also one of the steps to having timers in Workers. See the plan of
the next steps in the bug above.

  • bindings/js/DOMTimer.cpp: (WebCore::DOMTimer::DOMTimer): (WebCore::DOMTimer::fired): (WebCore::DOMTimer::hasPendingActivity): (WebCore::DOMTimer::contextDestroyed): (WebCore::DOMTimer::stop): (WebCore::DOMTimer::suspend): (WebCore::DOMTimer::resume): (WebCore::DOMTimer::canSuspend): Implemented ActiveDOMObject methods.
  • bindings/js/DOMTimer.h:
  • bindings/js/JSDOMBinding.cpp: ActiveDOMObject can have no JS wrapper (WebCore::markActiveObjectsForContext):
  • bindings/js/JSDOMWindowBase.cpp: (WebCore::JSDOMWindowBase::~JSDOMWindowBase): (WebCore::JSDOMWindowBase::clear): (WebCore::JSDOMWindowBase::installTimeout): (WebCore::JSDOMWindowBase::removeTimeout): (WebCore::JSDOMWindowBase::timerFired): (WebCore::JSDOMWindowBase::disconnectFrame):
  • bindings/js/JSDOMWindowBase.h:
  • bindings/js/ScriptController.cpp:
  • bindings/js/ScriptController.h:
  • dom/Document.cpp: Document now holds a hash map id->timeout (WebCore::Document::addTimeout): (WebCore::Document::removeTimeout): (WebCore::Document::findTimeout):
  • dom/Document.h:
  • history/CachedPage.cpp: (WebCore::CachedPage::CachedPage): (WebCore::CachedPage::restore): (WebCore::CachedPage::clear):
  • history/CachedPage.h:
  • inspector/JavaScriptDebugServer.cpp: (WebCore::JavaScriptDebugServer::~JavaScriptDebugServer): (WebCore::JavaScriptDebugServer::setJavaScriptPaused):
  • inspector/JavaScriptDebugServer.h:
  • loader/FrameLoader.cpp: (WebCore::FrameLoader::commitProvisionalLoad): removed clearAllTimeouts since all ActiveDOMObjects will be stopped in FrameLoader::clear(); I don't see how the old comment can be correct - the code in the same method proceeds to invoke 'onunload' and then calls into client which can be external code and can cause any active object created in onunload to fire. We can stop them all before firing onunload but it does not make a lot of sense. I have a test to go with the next patch which verifies that timers set in onunload do not fire.

(WebCore::FrameLoader::open):

  • page/Chrome.cpp: (WebCore::PageGroupLoadDeferrer::PageGroupLoadDeferrer): (WebCore::PageGroupLoadDeferrer::~PageGroupLoadDeferrer):
9:43 PM Changeset in webkit [38984] by barraclough@apple.com
  • 7 edits
    2 copies in trunk/JavaScriptCore

2008-12-03 Gavin Barraclough <barraclough@apple.com>

Reviewed by Camron Zwarich.

Allow JIT to operate without the call-repatching optimization.
Controlled by ENABLE(JIT_OPTIMIZE_CALL), defaults on, disabling
this leads to significant performance regression.

https://bugs.webkit.org/show_bug.cgi?id=22639

  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • jit/JIT.cpp: (JSC::JIT::privateCompileSlowCases):
  • jit/JIT.h:
  • jit/JITCall.cpp: Copied from jit/JIT.cpp. (JSC::JIT::compileOpCallInitializeCallFrame): (JSC::JIT::compileOpCallSetupArgs): (JSC::JIT::compileOpCallEvalSetupArgs): (JSC::JIT::compileOpConstructSetupArgs): (JSC::JIT::compileOpCall): (JSC::JIT::compileOpCallSlowCase): (JSC::unreachable):
  • jit/JITInlineMethods.h: Copied from jit/JIT.cpp. (JSC::JIT::checkStructure): (JSC::JIT::emitFastArithPotentiallyReTagImmediate): (JSC::JIT::emitTagAsBoolImmediate):
  • wtf/Platform.h:
7:39 PM Changeset in webkit [38983] by justin.garcia@apple.com
  • 3 edits
    2 adds in trunk

WebCore:

2008-12-03 Justin Garcia <justin.garcia@apple.com>

Reviewed by Beth Dakin.

<rdar://problem/6018653> Extra blank line when pasting paragraph in plain text


In SnowLeopard, Mail occasionally adds an empty, unstyled paragraph at the
end of pasted content so that users don't get stuck with non-standard pargraph
spacing. This content threw off our handling of interchange newlines. Any interchange
newline, regardless of it's position in the incoming fragment was considered to be
"at the start" of the fragment, and would result in us inserting in a newline before
inserted content. This patch makes the checks for interchange newlines more strict,
and treats interchange newlines found elsewhere as normal <br>s.

  • editing/ReplaceSelectionCommand.cpp: (WebCore::ReplacementFragment::ReplacementFragment): (WebCore::ReplacementFragment::removeInterchangeNodes):
  • editing/VisiblePosition.cpp: (WebCore::VisiblePosition::init): (WebCore::VisiblePosition::canonicalPosition):
  • editing/VisiblePosition.h:

LayoutTests:

2008-12-03 Justin Garcia <justin.garcia@apple.com>

Reviewed by Beth Dakin.

<rdar://problem/6018653> Extra blank line when pasting paragraph in plain text

  • editing/pasteboard/6018653-expected.txt: Added.
  • editing/pasteboard/6018653.html: Added.
6:11 PM Changeset in webkit [38982] by andersca@apple.com
  • 2 edits in trunk/WebKit

2008-12-03 Anders Carlsson <andersca@apple.com>

Reviewed by Sam Weinig.


Move WebPluginRequest to its own file.


  • WebKit.xcodeproj/project.pbxproj:
6:10 PM Changeset in webkit [38981] by andersca@apple.com
  • 2 edits
    2 adds in trunk/WebKit/mac

2008-12-03 Anders Carlsson <andersca@apple.com>

Reviewed by Sam Weinig.

Move WebPluginRequest to its own file.


  • Plugins/WebNetscapePluginView.mm:
  • Plugins/WebPluginRequest.h: Added.
  • Plugins/WebPluginRequest.m: Added. (-[WebPluginRequest initWithRequest:frameName:notifyData:sendNotification:didStartFromUserGesture:]): (-[WebPluginRequest dealloc]): (-[WebPluginRequest request]): (-[WebPluginRequest frameName]): (-[WebPluginRequest isCurrentEventUserGesture]): (-[WebPluginRequest sendNotification]): (-[WebPluginRequest notifyData]):
5:47 PM Changeset in webkit [38980] by eric@webkit.org
  • 4 edits
    4 adds in trunk

Rubber-stamped by David Hyatt.

Bring the WebCore chromium build a couple steps closer to building.

  • WebCore.scons:
5:03 PM Changeset in webkit [38979] by andersca@apple.com
  • 2 edits in trunk/WebKit/mac

2008-12-03 Anders Carlsson <andersca@apple.com>

Handle the CA model.

  • Plugins/WebNetscapePluginView.mm: (-[WebNetscapePluginView setWindowIfNecessary]):
4:57 PM Changeset in webkit [38978] by kevino@webkit.org
  • 2 edits in trunk/WebCore

wx build fix.

4:37 PM Changeset in webkit [38977] by Nikolas Zimmermann
  • 6 edits in trunk/LayoutTests

Reviewed by George Staikos.
Forgot to rerun make-js-test-wrappers, and update some fast/wml results.

4:26 PM Changeset in webkit [38976] by weinig@apple.com
  • 2 edits in trunk/JavaScriptCore

2008-12-03 Sam Weinig <sam@webkit.org>

Fix build.

  • assembler/X86Assembler.h: (JSC::X86Assembler::orl_i32r):
4:10 PM Changeset in webkit [38975] by weinig@apple.com
  • 16 edits in trunk/JavaScriptCore

2008-12-03 Sam Weinig <sam@webkit.org>

Reviewed by Geoffrey Garen.

Remove shared AssemblerBuffer 1MB buffer and instead give AssemblerBuffer
an 256 byte inline capacity.

1% progression on Sunspider.

  • assembler/AssemblerBuffer.h: (JSC::AssemblerBuffer::AssemblerBuffer): (JSC::AssemblerBuffer::~AssemblerBuffer): (JSC::AssemblerBuffer::grow):
  • assembler/MacroAssembler.h: (JSC::MacroAssembler::MacroAssembler):
  • assembler/X86Assembler.h: (JSC::X86Assembler::X86Assembler):
  • interpreter/Interpreter.cpp: (JSC::Interpreter::Interpreter):
  • interpreter/Interpreter.h:
  • jit/JIT.cpp: (JSC::JIT::JIT):
  • parser/Nodes.cpp: (JSC::RegExpNode::emitBytecode):
  • runtime/RegExp.cpp: (JSC::RegExp::RegExp): (JSC::RegExp::create):
  • runtime/RegExp.h:
  • runtime/RegExpConstructor.cpp: (JSC::constructRegExp):
  • runtime/RegExpPrototype.cpp: (JSC::regExpProtoFuncCompile):
  • runtime/StringPrototype.cpp: (JSC::stringProtoFuncMatch): (JSC::stringProtoFuncSearch):
  • wrec/WREC.cpp: (JSC::WREC::Generator::compileRegExp):
  • wrec/WRECGenerator.h: (JSC::WREC::Generator::Generator):
  • wrec/WRECParser.h: (JSC::WREC::Parser::Parser):
3:48 PM Changeset in webkit [38974] by Nikolas Zimmermann
  • 4 edits
    10 adds in trunk

Reviewed by George Staikos.

Fixes: https://bugs.webkit.org/show_bug.cgi?id=22636

Implement WML variable substitution & validation.
Created a framework for scriptable WML layout tests, that are able to test variable substiution & validation.

Tests: wml/variable-reference-invalid-character.html

wml/variable-reference-valid.html

3:26 PM Changeset in webkit [38973] by eric@webkit.org
  • 3 edits in trunk/WebKitTools

Build fix for --gtk and --chromium, no review.

Fix run-javascriptcore-tests to pass --gtk, --qt, --chromium, etc.
through to build-jsc.

  • Scripts/build-jsc:
  • Scripts/webkitdirs.pm:
3:20 PM Changeset in webkit [38972] by Nikolas Zimmermann
  • 10 edits in trunk

Reviewed by Cameron Zwarich.

Further preparations for WML layout tests.

  • Enable variable substitution in Text.cpp - if the parent is a WMLElement derived class.
  • Dump WMLMessageSource messages to the console, just like it's done for JSMessageSource
  • Add helper method in Document.idl, to reset the WML page state to a well-known default state. (will be used in the upcoming LayoutTests/wml testcases)
2:54 PM Changeset in webkit [38971] by ggaren@apple.com
  • 4 edits in trunk/JavaScriptCore

2008-12-03 Geoffrey Garen <ggaren@apple.com>

Reviewed by Oliver Hunt, with help from Gavin Barraclough.


orl_i32r was actually coded as an 8bit OR. So, I renamed orl_i32r to
orl_i8r, changed all orl_i32r clients to use orl_i8r, and then added
a new orl_i32r that actually does a 32bit OR.


(32bit OR is currently unused, but a patch I'm working on uses it.)

  • assembler/MacroAssembler.h: (JSC::MacroAssembler::or32): Updated to choose between 8bit and 32bit OR.
  • assembler/X86Assembler.h: (JSC::X86Assembler::orl_i8r): The old orl_i32r. (JSC::X86Assembler::orl_i32r): The new orl_i32r.


  • jit/JIT.cpp: (JSC::JIT::emitFastArithPotentiallyReTagImmediate): (JSC::JIT::emitTagAsBoolImmediate): Use orl_i8r, since we're ORing 8bit values.
2:38 PM Changeset in webkit [38970] by Antti Koivisto
  • 3 edits in trunk/WebCore

2008-12-03 Antti Koivisto <Antti Koivisto>

Reviewed by Sam Weinig.

Don't leak selectors in case selector list parsing failed.

  • css/CSSGrammar.y:
  • css/CSSParser.cpp: (WebCore::CSSParser::~CSSParser):
2:34 PM Changeset in webkit [38969] by Simon Fraser
  • 1 edit
    4 adds
    4 deletes in trunk/LayoutTests

2008-12-03 Simon Fraser <Simon Fraser>

Reviewed by Dave Hyatt

Clean up and unify transition and animation test cases that destroy
the renderer in the 'ended' event callback, either through setting display:none,
or removing the element.

  • animations/animation-end-event-destroy-renderer-expected.txt: Added.
  • animations/animation-end-event-destroy-renderer.html: Added.
  • animations/transform-animation-event-destroy-element-expected.txt: Removed.
  • animations/transform-animation-event-destroy-element.html: Removed.
  • transitions/transform-transition-event-destroy-element-expected.txt: Removed.
  • transitions/transform-transition-event-destroy-element.html: Removed.
  • transitions/transition-end-event-destroy-renderer-expected.txt: Added.
  • transitions/transition-end-event-destroy-renderer.html: Added.
2:20 PM Changeset in webkit [38968] by cmarrin@apple.com
  • 2 edits in trunk/WebCore

2008-12-03 Chris Marrin <cmarrin@apple.com>

Reviewed by Dave Hyatt.

Fix https://bugs.webkit.org/show_bug.cgi?id=22520

This is a regression (causes a crash of LayoutTests/animations/transform-animation-event-destroy-element.html).
This patch fixes the testcase.

This is another case of animations getting destroyed in the end animation callback and causing dangling
pointers on return. This one involves iterating over the CompositeAnimation, which has been destroyed.
So I now check for a null m_object pointer (which is nullified when the CompositeAnimation is destroyed)
and skip that call.

  • page/animation/AnimationBase.cpp: (WebCore::AnimationBase::updateStateMachine):
2:15 PM Changeset in webkit [38967] by andersca@apple.com
  • 1 edit in trunk/WebKit/mac/ChangeLog

Add radar number

2:13 PM Changeset in webkit [38966] by andersca@apple.com
  • 2 edits in trunk/WebKit/mac

2008-12-03 Anders Carlsson <andersca@apple.com>

Reviewed by Kevin Decker.


Call NPP_SetWindow for CA plug-ins.


  • Plugins/WebNetscapePluginView.mm: (-[WebNetscapePluginView saveAndSetNewPortStateForUpdate:]): (-[WebNetscapePluginView restorePortState:]): (-[WebNetscapePluginView isNewWindowEqualToOldWindow]): (-[WebNetscapePluginView updateAndSetWindow]): (-[WebNetscapePluginView setWindowIfNecessary]):
2:01 PM Changeset in webkit [38965] by eric@webkit.org
  • 2 edits in trunk/WebKitTools

Build fix only, no review.

Remove support for build-webkit --svg-experimental.
All of the "experimental" svg features have their own toggles anyway.
I broke --svg-experimental in my last commit (which then broke clean builds)
I can't find any use of --svg-experimental in our source tree, so removing it.

  • Scripts/build-webkit:
1:52 PM Changeset in webkit [38964] by Antti Koivisto
  • 16 edits
    2 adds in trunk/WebCore

2008-12-03 Antti Koivisto <Antti Koivisto>

Reviewed by Darin Adler.

https://bugs.webkit.org/show_bug.cgi?id=22379
Make CSSOM use less memory

Reduce size of the CSSSelector by one more pointer by using an array
instead of a linked list to store them.

  • WebCore.xcodeproj/project.pbxproj:
  • css/CSSGrammar.y:
  • css/CSSParser.cpp: (WebCore::CSSParser::CSSParser): (WebCore::CSSParser::parseSelector): (WebCore::CSSParser::createStyleRule):
  • css/CSSParser.h: (WebCore::CSSParser::reusableSelectorVector):
  • css/CSSSelector.h: (WebCore::CSSSelector::CSSSelector): (WebCore::CSSSelector::~CSSSelector): (WebCore::CSSSelector::isLastInSelectorList): (WebCore::CSSSelector::setLastInSelectorList):
  • css/CSSStyleRule.cpp: (WebCore::CSSStyleRule::CSSStyleRule): (WebCore::CSSStyleRule::~CSSStyleRule): (WebCore::CSSStyleRule::selectorText):
  • css/CSSStyleRule.h: (WebCore::CSSStyleRule::adoptSelectorVector): (WebCore::CSSStyleRule::selectorList):
  • css/CSSStyleSelector.cpp: (WebCore::CSSRuleSet::addRulesFromSheet):
  • dom/Node.cpp: (WebCore::forEachSelector): (WebCore::selectorNeedsNamespaceResolution): (WebCore::Node::querySelector): (WebCore::Node::querySelectorAll):
  • dom/SelectorNodeList.cpp: (WebCore::createSelectorNodeList):
  • dom/SelectorNodeList.h:
1:52 PM Changeset in webkit [38963] by dino@apple.com
  • 3 edits in trunk/WebKitSite/specs/CSSVisualEffects

2008-12-03 Dean Jackson <dino@apple.com>

CSSTransforms.html +
CSSTransforms3D.html:

  • Use SYNTAX_ERR for exceptions that are parsing errors in CSSMatrix
1:44 PM Changeset in webkit [38962] by ap@webkit.org
  • 4 edits
    3 adds in trunk

Reviewed by Darin Adler.

https://bugs.webkit.org/show_bug.cgi?id=22630
Assertion failure in XMLHttpRequest::contextDestroyed

Test: http/tests/xmlhttprequest/close-window.html

  • loader/FrameLoader.cpp: (WebCore::FrameLoader::clear): (WebCore::FrameLoader::commitProvisionalLoad): Move stopping active objects to clear(), so that closing a window is also covered.
  • xml/XMLHttpRequest.cpp: (WebCore::XMLHttpRequest::abort): Protect the object in abort(), because internalAbort() deref()'s.
1:36 PM Changeset in webkit [38961] by dino@apple.com
  • 2 edits in trunk/WebKitSite

2008-12-03 Dean Jackson <dino@apple.com>

Added links to the WebKit and Mozilla bugs for pointer-events.

  • specs/PointerEventsProperty.html:
1:34 PM Changeset in webkit [38960] by eric@webkit.org
  • 5 edits in trunk/WebKitTools

Reviewed by David Hyatt (and Mark Rowe).

Move --coverage support from build-webkit to webkitdirs.pm to share it with build-jsc
Move --coverage support out of run-javascriptcore-tests and into build-jsc

Finally add a buildXCodeProject function to webkitdirs.pm and move --clean support
there from build-webkit (to allow future sharing with other build-* scripts)

Change run-javascriptcore-tests to expect a --jsDriver-args= argument instead of
picking through ARGV with a blacklist of what arguments weren't jsDriver args
this makes run-javascriptcore-tests transparently support all arguments which
webkitdirs.pm gives it support for.

Make run-javascriptcore-tests actually print what commands it's running before running them.

Add --help support to build-jsc and run-javascriptcore-tests!

Make code to support --svg-experimental defaults take up half as many lines.

  • Scripts/build-jsc:
  • Scripts/build-webkit:
  • Scripts/run-javascriptcore-tests:
  • Scripts/webkitdirs.pm:
12:46 PM Changeset in webkit [38959] by dino@apple.com
  • 14 edits in trunk

2008-12-03 Dean Jackson <dino@apple.com>

Reviewed by Dan Bernstein.

JavaScriptCore:

Helper functions for turn -> degrees.
https://bugs.webkit.org/show_bug.cgi?id=22497

  • wtf/MathExtras.h: (turn2deg): (deg2turn):

WebCore:

Implement CSS 3 <angle> turn unit and support it
in rotations.
https://bugs.webkit.org/show_bug.cgi?id=22497

  • css/CSSGrammar.y:
  • css/CSSParser.cpp: (WebCore::CSSParser::validUnit): (WebCore::unitFromString): (WebCore::CSSParser::lex):
  • css/CSSPrimitiveValue.cpp: (WebCore::CSSPrimitiveValue::cssText): (WebCore::CSSPrimitiveValue::parserValue):
  • css/CSSPrimitiveValue.h: (WebCore::CSSPrimitiveValue::):
  • css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::createTransformOperations):
  • css/tokenizer.flex:

LayoutTests:

Tests for CSS 3 <angle> turn unit
https://bugs.webkit.org/show_bug.cgi?id=22497

  • transforms/2d/transform-2d-expected.txt:
  • transforms/2d/transform-2d.html:
  • transforms/transform-value-types-expected.txt:
  • transforms/transform-value-types.html:
12:32 PM Changeset in webkit [38958] by andersca@apple.com
  • 2 edits in trunk/WebKit/mac

2008-12-03 Anders Carlsson <andersca@apple.com>

Fix the release build.

  • Plugins/Hosted/NetscapePluginHostProxy.mm: (WebKit::NetscapePluginHostProxy::deadNameNotificationCallback):
12:00 PM Changeset in webkit [38957] by dino@apple.com
  • 6 edits in trunk/LayoutTests

2008-12-03 Dean Jackson <dino@apple.com>

Reviewed by Dan Bernstein.

Clean up some tests for private DRT API.
https://bugs.webkit.org/show_bug.cgi?id=22498

  • platform/win/Skipped:
  • transitions/transition-drt-api-delay-expected.txt:
  • transitions/transition-drt-api-delay.html:
  • transitions/transition-shorthand-delay-expected.txt:
  • transitions/transition-shorthand-delay.html:
11:57 AM Changeset in webkit [38956] by sfalken@apple.com
  • 2 edits in trunk/WebKit

Update strings not to be localized.

Reviewed by Adam Roben.

  • StringsNotToBeLocalized.txt:
11:51 AM Changeset in webkit [38955] by Adam Roben
  • 2 edits in trunk/WebKitTools

Fix a leak in WinLauncher shutdown

Reviewed by Sam Weinig.

  • WinLauncher/WinLauncher.cpp: (_tWinMain): Replaced a delete with a Release. We can't delete the WebView properly since we only have a pointer to one of its interfaces. We also shouldn't be deleting COM objects directly anyway, for a number of reasons.
11:51 AM Changeset in webkit [38954] by Adam Roben
  • 2 edits in trunk/WebKitTools

Fix a crash on exit in WinLauncher

Reviewed by Sam Weinig.

  • WinLauncher/WinLauncher.cpp: (_tWinMain): Call shutDownWebKit before exiting.
11:50 AM Changeset in webkit [38953] by Adam Roben
  • 2 edits in trunk/WebKitTools

Add a Debug_Internal configuration to WinLauncher

This matches our other projects.

Reviewed by Sam Weinig.

  • WinLauncher/WinLauncher.vcproj: Added a Debug_Internal configuration, which is identical to Debug except that it also references debug_internal.vsprops. Also removed some settings that we should be picking up from the .vsprops files.
10:59 AM Changeset in webkit [38952] by krit@webkit.org
  • 19 edits
    5 deletes in trunk

2008-12-03 Dirk Schulze <krit@webkit.org>

Reviewed by Nikolas Zimmermann.

WebCore:

Make use of the gradient code in GraphicsContext and get rid of most of the
platform dependent code.

SVG should use the new Gradient support on GraphicsContext
https://bugs.webkit.org/show_bug.cgi?id=20543

  • GNUmakefile.am:
  • WebCore.pro:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • platform/graphics/FloatSize.h: (WebCore::FloatSize::shrunkTo):
  • svg/SVGLinearGradientElement.cpp: (WebCore::SVGLinearGradientElement::buildGradient):
  • svg/SVGRadialGradientElement.cpp: (WebCore::SVGRadialGradientElement::buildGradient):
  • svg/graphics/SVGPaintServer.h:
  • svg/graphics/SVGPaintServerGradient.cpp: (WebCore::SVGPaintServerGradient::SVGPaintServerGradient): (WebCore::SVGPaintServerGradient::~SVGPaintServerGradient): (WebCore::SVGPaintServerGradient::gradient): (WebCore::SVGPaintServerGradient::setGradient): (WebCore::findTextRootObject): (WebCore::createMaskAndSwapContextForTextGradient): (WebCore::clipToTextMask): (WebCore::SVGPaintServerGradient::setup): (WebCore::SVGPaintServerGradient::renderPath): (WebCore::SVGPaintServerGradient::teardown):
  • svg/graphics/SVGPaintServerGradient.h: (WebCore::SVGPaintServerGradient::setGradientStops): (WebCore::SVGPaintServerGradient::gradientStops):
  • svg/graphics/SVGPaintServerLinearGradient.h:
  • svg/graphics/SVGPaintServerRadialGradient.h:
  • svg/graphics/cairo/SVGPaintServerGradientCairo.cpp: Removed.
  • svg/graphics/cg/SVGPaintServerCg.cpp:
  • svg/graphics/cg/SVGPaintServerGradientCg.cpp: Removed.
  • svg/graphics/qt/SVGPaintServerGradientQt.cpp: Removed.
  • svg/graphics/qt/SVGPaintServerLinearGradientQt.cpp: Removed.
  • svg/graphics/qt/SVGPaintServerRadialGradientQt.cpp: Removed.

LayoutTests:

Updated/Correcte the SVG pixel tests.
We pass two more SVG tests now.

  • platform/mac-leopard/svg/W3C-SVG-1.1/pservers-grad-17-b-expected.checksum:
  • platform/mac-leopard/svg/W3C-SVG-1.1/pservers-grad-17-b-expected.png:
  • platform/mac/svg/batik/text/textEffect3-expected.checksum:
  • platform/mac/svg/batik/text/textEffect3-expected.png:
10:55 AM Changeset in webkit [38951] by weinig@apple.com
  • 2 edits in trunk/WebCore

2008-12-03 Sam Weinig <sam@webkit.org>

Reviewed by Mark Rowe.

Fix formatting.

  • css/CSSSelector.h: (WebCore::CSSSelector::createRareData):
10:54 AM Changeset in webkit [38950] by andersca@apple.com
  • 2 edits in trunk/WebKit/mac

2008-12-03 Anders Carlsson <andersca@apple.com>

Reviewed by Dan Bernstein.

<rdar://problem/6412234>
Don't crash if we can't launch the plug-in host.

  • Plugins/Hosted/NetscapePluginHostManager.mm: (WebKit::NetscapePluginHostManager::instantiatePlugin):
9:36 AM Changeset in webkit [38949] by Nikolas Zimmermann
  • 3 edits in trunk/WebCore

Reviewed by Adam Roben.

As Adam Roben noticed, synchronize MessageSource enum with Console.js, and add a comment.

9:00 AM Changeset in webkit [38948] by Nikolas Zimmermann
  • 7 edits in trunk/WebCore

Reviewed by Alexey Proskuryakov.

Next steps to make LayoutTests work:
Never access the main frame from WMLRefreshElement/WMLCardElement, but
the current documents frame (WML layout tests will run in an <iframe>)

Prepare WMLErrorHandling for the case that no tokenizer is available anymore
-> report errors through Console::addMessage(), so they get logged in the

expected layout test results.

8:53 AM Changeset in webkit [38947] by vestbo@webkit.org
  • 4 edits in trunk

2008-12-03 Tor Arne Vestbø <tavestbo@trolltech.com>

Reviewed by Simon Hausmann.

Allow passing jsNull and jsUndefined to Qt plugins

Currently limited to functions with QString and QVariant arguments,
and properties of these types. Both jsNull and jsUndefined ends up
as default-constructed QStrings and QVariants, which means you can
check for isEmpty() and isValid() in the native plugin code.

Based on patches by Jade Han <jade.han@nokia.com>

8:36 AM Changeset in webkit [38946] by Simon Hausmann
  • 2 edits in trunk/WebCore

2008-12-03 Trenton Schulz <trenton.schulz@nokia.com>

Reviewed by Simon Hausmann.

Fix the build with Qt for Mac OS X.

8:28 AM Changeset in webkit [38945] by Nikolas Zimmermann
  • 5 edits in trunk/WebCore

Reviewed by Alexey Proskuryakov.

Fix error handling in WMLSetvarElement. If an invalid variable reference is contained
in the 'name' attribute of <setvar>, a 'WMLErrorInvalidVariab

8:12 AM Changeset in webkit [38944] by Nikolas Zimmermann
  • 5 edits in trunk/WebCore

Reviewed by Alexey Proskuryakov.

Preparations to get WML layout tests going.
Make WMLPageState an OwnPtr to Page, and let Page create it on demand.

7:57 AM Changeset in webkit [38943] by ap@webkit.org
  • 3 edits in trunk/WebCore

Reviewed by Mark Rowe.

https://bugs.webkit.org/show_bug.cgi?id=22627
fast/workers/worker-terminate.html fails randomly

The problem is that worker termination uses script timeouts, so an InterruptedExecutionError
is raised, and it sometimes reaches the main thread.

  • dom/WorkerMessagingProxy.cpp: (WebCore::WorkerExceptionTask::create): (WebCore::WorkerExceptionTask::WorkerExceptionTask): (WebCore::WorkerExceptionTask::performTask): (WebCore::WorkerMessagingProxy::postWorkerException):
  • dom/WorkerMessagingProxy.h: Ignore exceptions that happen in terminated workers.
7:52 AM Changeset in webkit [38942] by Nikolas Zimmermann
  • 4 edits in trunk/WebCore

Reviewed by Alexey Proskuryakov.
Remove some unncessary includes.

7:25 AM Changeset in webkit [38941] by ap@webkit.org
  • 3 edits in trunk/WebCore

Rubber-stamped by Cameron Zwarich and Adam Roben.

Fix a typo: m_executionForbidded.

  • bindings/js/WorkerScriptController.cpp: (WebCore::WorkerScriptController::WorkerScriptController): (WebCore::WorkerScriptController::evaluate): (WebCore::WorkerScriptController::forbidExecution):
  • bindings/js/WorkerScriptController.h:
7:01 AM Changeset in webkit [38940] by ddkilzer@apple.com
  • 2 edits in trunk/WebCore

2008-12-03 Dean McNamee <deanm@chromium.org>

Bug 22623: Uninitialized memory access in cache parsing code
<https://bugs.webkit.org/show_bug.cgi?id=22623>

Reviewed by David Kilzer.

Initialize m_haveParsedCacheControlHeader and m_haveParsedPragmaHeader.

  • platform/network/ResourceResponseBase.h: (WebCore::ResourceResponseBase::ResourceResponseBase):
6:54 AM Changeset in webkit [38939] by ddkilzer@apple.com
  • 1 edit in trunk/WebCore/ChangeLog

Removed unchanged file from ChangeLog entry in r38918.

6:10 AM Changeset in webkit [38938] by Simon Hausmann
  • 2 edits in trunk

2008-12-03 Simon Hausmann <Simon Hausmann>

Reviewed by Tor Arne Vestbø.

Fix the build of WebKit inside Qt by making sure that qmake generators
that do not produce generated sources (i.e. cpp files) are not
included in SOURCES.

2:50 AM Changeset in webkit [38937] by vestbo@webkit.org
  • 1 edit in trunk/WebKit/qt/tests/qwebframe/tst_qwebframe.cpp

2008-12-03 Tor Arne Vestbø <tavestbo@trolltech.com>

Rubber-stamped by Simon Hausmann.

Fix QWebFrame auto-test by giving it a little more time to load the image

1:56 AM Changeset in webkit [38936] by Antti Koivisto
  • 2 edits in trunk/WebCore

2008-12-03 Antti Koivisto <Antti Koivisto>

Probable build fix.

  • WebCoreSources.bkl:
1:51 AM Changeset in webkit [38935] by Antti Koivisto
  • 3 edits in trunk/WebCore

2008-12-03 Antti Koivisto <Antti Koivisto>

Forgot to commit these.

  • dom/Node.cpp: (WebCore::forEachTagSelector): (WebCore::SelectorNeedsNamespaceResolutionFunctor::operator()): (WebCore::Node::querySelector):
  • dom/SelectorNodeList.cpp: (WebCore::createSelectorNodeList):
1:42 AM Changeset in webkit [38934] by Antti Koivisto
  • 12 edits
    2 deletes in trunk/WebCore

2008-12-03 Antti Koivisto <Antti Koivisto>

Reviewed by Dan Bernstein and Mark Rowe.

https://bugs.webkit.org/show_bug.cgi?id=22379
Make CSSOM use less memory

Reduce size of the CSSSelector by 3/8 by moving rarely used fields to a rare data
struct. Browsing around with some instrumentation showed that ~0.1% of all selectors
encountered had rare data.


This also eliminates the CSSNthSelector subclass which will make possible to store
CSSSelectors in an array instead of a linked list for futher memory savings.

  • css/CSSGrammar.y:
  • css/CSSNthSelector.cpp: Removed.
  • css/CSSNthSelector.h: Removed.
  • css/CSSParser.cpp: (WebCore::CSSParser::createFloatingSelector):
  • css/CSSParser.h:
  • css/CSSSelector.cpp: (WebCore::CSSSelector::specificity): (WebCore::CSSSelector::operator==): (WebCore::CSSSelector::selectorText): (WebCore::CSSSelector::setTagHistory): (WebCore::CSSSelector::attribute): (WebCore::CSSSelector::setAttribute): (WebCore::CSSSelector::setArgument): (WebCore::CSSSelector::setSimpleSelector): (WebCore::CSSSelector::parseNth): (WebCore::CSSSelector::matchNth): (WebCore::CSSSelector::RareData::parseNth): (WebCore::CSSSelector::RareData::matchNth):
  • css/CSSSelector.h: (WebCore::CSSSelector::CSSSelector): (WebCore::CSSSelector::~CSSSelector): (WebCore::CSSSelector::tagHistory): (WebCore::CSSSelector::hasAttribute): (WebCore::CSSSelector::argument): (WebCore::CSSSelector::simpleSelector): (WebCore::CSSSelector::RareData::RareData): (WebCore::CSSSelector::createRareData): (WebCore::CSSSelector::):
  • css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::SelectorChecker::checkSelector): (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
12:30 AM Changeset in webkit [38933] by ap@webkit.org
  • 1 edit
    2 adds in trunk/LayoutTests

2008-12-03 Dmitry Titov <dimich@chromium.org>

Reviewed by Alexey Proskuryakov.

Add test for https://bugs.webkit.org/show_bug.cgi?id=22600,
verifying that timeout callback is executed in the right scope.

  • fast/dom/Window/timeout-callback-scope-expected.txt: Added.
  • fast/dom/Window/timeout-callback-scope.html: Added.
12:27 AM Changeset in webkit [38932] by ap@webkit.org
  • 2 edits in trunk/WebCore

2008-12-03 Jian Li <jianli@chromium.org>

Reviewed by Alexey Proskuryakov.

Remove unneeded included file in WorkerThread.cpp.
https://bugs.webkit.org/show_bug.cgi?id=22613

  • dom/WorkerThread.cpp: No need to include JSWorkerContext.h.

Dec 2, 2008:

11:42 PM Changeset in webkit [38931] by ap@webkit.org
  • 12 edits
    3 adds in trunk

Reviewed by Maciej Stachowiak.

https://bugs.webkit.org/show_bug.cgi?id=22543
Consolidate ActiveDOMObject page cache interaction

Test: http/tests/xmlhttprequest/abort-on-leaving-page.html

  • dom/ActiveDOMObject.cpp: (WebCore::ActiveDOMObject::canSuspend): (WebCore::ActiveDOMObject::suspend): (WebCore::ActiveDOMObject::resume):
  • dom/ActiveDOMObject.h:
  • dom/ScriptExecutionContext.cpp: (WebCore::ScriptExecutionContext::canSuspendActiveDOMObjects): (WebCore::ScriptExecutionContext::suspendActiveDOMObjects): (WebCore::ScriptExecutionContext::resumeActiveDOMObjects):
  • dom/ScriptExecutionContext.h: Added methods for suspending and resuming active objects.
  • dom/Worker.cpp: (WebCore::Worker::canSuspend): (WebCore::Worker::stop):
  • dom/Worker.h: Workers cannot be suspended yet. This is a change in behavior, as workers used to keep running until their owner was destroyed.
  • loader/FrameLoader.cpp: (WebCore::FrameLoader::stopLoading): No longer call stopActiveDOMObjects() here, because their activity is not necessarily loading. (WebCore::FrameLoader::canCachePage): Can only cache if all active objects can be suspended. Previously, stopLoading() cancelled outstanding XMLHttpRequests, which made the page uncacheable due to no-null main document error. (WebCore::FrameLoader::commitProvisionalLoad): Suspend or stop active objects, depending on whether the document will be cached. (WebCore::FrameLoader::frameDetached): Stop active objects to let them clean up before their context is destroyed.
  • xml/XMLHttpRequest.h: added canSuspend().
  • xml/XMLHttpRequest.cpp: (WebCore::XMLHttpRequest::canSuspend): Only XHRs that are not loading can be suspended. (WebCore::XMLHttpRequest::stop): Call abort() instead of internalAbort() to dispatch events for Firefox compatibility. This is a change in behavior that helps test that requests do get aborted. (WebCore::XMLHttpRequest::contextDestroyed): The request must have been stopped by now, so assert that.
11:09 PM Disk Cache edited by ben@meyerhome.net
add link to chrome (diff)
10:13 PM Changeset in webkit [38930] by cwzwarich@webkit.org
  • 5 edits
    3 adds in trunk

2008-12-02 Cameron Zwarich <zwarich@apple.com>

Reviewed by Geoff Garen.

Bug 22504: Crashes during code generation occur due to refing of ignoredResult()
<https://bugs.webkit.org/show_bug.cgi?id=22504>

Since ignoredResult() was implemented by casting 1 to a RegisterID*, any
attempt to ref ignoredResult() results in a crash. This will occur in
code generation of a function body where a node emits another node with
the dst that was passed to it, and then refs the returned RegisterID*.

To fix this problem, make ignoredResult() a member function of
BytecodeGenerator that simply returns a pointe to a fixed RegisterID
member of BytecodeGenerator.

JavaScriptCore:

  • bytecompiler/BytecodeGenerator.h: (JSC::BytecodeGenerator::ignoredResult):
  • bytecompiler/RegisterID.h:
  • parser/Nodes.cpp: (JSC::NullNode::emitBytecode): (JSC::BooleanNode::emitBytecode): (JSC::NumberNode::emitBytecode): (JSC::StringNode::emitBytecode): (JSC::RegExpNode::emitBytecode): (JSC::ThisNode::emitBytecode): (JSC::ResolveNode::emitBytecode): (JSC::ObjectLiteralNode::emitBytecode): (JSC::PostfixResolveNode::emitBytecode): (JSC::PostfixBracketNode::emitBytecode): (JSC::PostfixDotNode::emitBytecode): (JSC::DeleteValueNode::emitBytecode): (JSC::VoidNode::emitBytecode): (JSC::TypeOfResolveNode::emitBytecode): (JSC::TypeOfValueNode::emitBytecode): (JSC::PrefixResolveNode::emitBytecode): (JSC::AssignResolveNode::emitBytecode): (JSC::CommaNode::emitBytecode): (JSC::ForNode::emitBytecode): (JSC::ForInNode::emitBytecode): (JSC::ReturnNode::emitBytecode): (JSC::ThrowNode::emitBytecode): (JSC::FunctionBodyNode::emitBytecode): (JSC::FuncDeclNode::emitBytecode):

LayoutTests:

  • fast/js/ignored-result-ref-crash-expected.txt: Added.
  • fast/js/ignored-result-ref-crash.html: Added.
  • fast/js/resources/ignored-result-ref-crash.js: Added.
8:53 PM Changeset in webkit [38929] by ggaren@apple.com
  • 4 edits
    3 adds in trunk

JavaScriptCore:

2008-12-02 Geoffrey Garen <ggaren@apple.com>

Reviewed by Cameron Zwarich.


Fixed https://bugs.webkit.org/show_bug.cgi?id=22537
REGRESSION (r38745): Assertion failure in jsSubstring() at ge.com

The bug was that index would become greater than length, so our
"end of input" checks, which all check "index == length", would fail.


The solution is to check for end of input before incrementing index,
to ensure that index is always <= length.


As a side benefit, generateJumpIfEndOfInput can now use je instead of
jg, which should be slightly faster.

  • wrec/WREC.cpp: (JSC::WREC::Generator::compileRegExp):
  • wrec/WRECGenerator.cpp: (JSC::WREC::Generator::generateJumpIfEndOfInput):

LayoutTests:

2008-12-02 Geoffrey Garen <ggaren@apple.com>

Reviewed by Cameron Zwarich.


Test for https://bugs.webkit.org/show_bug.cgi?id=22537
REGRESSION (r38745): Assertion failure in jsSubstring() at ge.com

  • fast/regex/alternative-length-miscalculation-expected.txt: Added.
  • fast/regex/alternative-length-miscalculation.html: Added.
6:10 PM Changeset in webkit [38928] by barraclough@apple.com
  • 2 edits in trunk/JavaScriptCore

2008-12-02 Gavin Barraclough <barraclough@apple.com>

Reviewed by Geoffrey Garen.

Plant shift right immediate instructions, which are awesome.
https://bugs.webkit.org/show_bug.cgi?id=22610
~5% on the v8-crypto test.

  • jit/JIT.cpp: (JSC::JIT::privateCompileMainPass): (JSC::JIT::privateCompileSlowCases):
5:03 PM Changeset in webkit [38927] by Chris Fleizach
  • 17 edits
    2 adds in trunk

Bug 22606: Can <th> serves as the AXTitleUIElement for <td>?

<th> will serve as a title UI element when it is present in a table
that has not been exposed as an AXTable

4:41 PM Changeset in webkit [38926] by andersca@apple.com
  • 6 edits in trunk/WebKit/mac

2008-12-02 Anders Carlsson <andersca@apple.com>

Reviewed by Dan Bernstein.

Start processing messages sent to the client port.


  • Plugins/Hosted/NetscapePluginHostProxy.h:
  • Plugins/Hosted/NetscapePluginHostProxy.mm: Add a map from ports to plug-in proxies. Turn the set of instances into a map from pluginID to instance proxy.


(WKPCStatusText):
Look up the right instance proxy and call status().


  • Plugins/Hosted/NetscapePluginInstanceProxy.h: (WebKit::NetscapePluginInstanceProxy::pluginID):
  • Plugins/Hosted/NetscapePluginInstanceProxy.mm: (WebKit::NetscapePluginInstanceProxy::status): Implement this.


  • Plugins/Hosted/WebKitPluginClient.defs: Add the plug-in ID to StatusText.
4:17 PM Changeset in webkit [38925] by ggaren@apple.com
  • 2 edits in trunk/JavaScriptCore

2008-12-02 Geoffrey Garen <ggaren@apple.com>

Reviewed by Sam Weinig.


Cleaned up SegmentedVector by abstracting segment access into helper
functions.


SunSpider reports no change.

  • bytecompiler/SegmentedVector.h: (JSC::SegmentedVector::SegmentedVector): (JSC::SegmentedVector::~SegmentedVector): (JSC::SegmentedVector::size): (JSC::SegmentedVector::at): (JSC::SegmentedVector::operator[]): (JSC::SegmentedVector::last): (JSC::SegmentedVector::append): (JSC::SegmentedVector::removeLast): (JSC::SegmentedVector::grow): (JSC::SegmentedVector::clear): (JSC::SegmentedVector::deleteAllSegments): (JSC::SegmentedVector::segmentFor): (JSC::SegmentedVector::subscriptFor): (JSC::SegmentedVector::ensureSegmentsFor): (JSC::SegmentedVector::ensureSegment):
4:13 PM Changeset in webkit [38924] by kevino@webkit.org
  • 5 edits in trunk/WebKit/wx

Reviewed by Kevin Ollivier.

Add HitTest to wxWebView (and wxWebFrame).

https://bugs.webkit.org/show_bug.cgi?id=22459

3:54 PM BuildingCairoOnWindows edited by bfulgham@macports.org
(diff)
3:53 PM BuildingOnWindows edited by bfulgham@macports.org
(diff)
3:37 PM Changeset in webkit [38923] by Adam Roben
  • 3 edits in trunk/WebKit/win

Export new-ish JSCore convenience constructor functions

Reviewed by Jon Honeycutt.

  • WebKit.vcproj/WebKit.def:
  • WebKit.vcproj/WebKit_debug.def: Export JSObjectMakeArray, JSObjectMakeDate, and JSObjectMakeRegExp. Remove duplicate export of JSObjectMakeFunction.
3:15 PM Changeset in webkit [38922] by Simon Fraser
  • 4 edits
    4 adds in trunk

2008-12-02 Simon Fraser <Simon Fraser>

Reviewed by Dave Hyatt

https://bugs.webkit.org/show_bug.cgi?id=22472

Override absoluteClippedOverflowRect() in RenderReplaced to return a rect
that is large enough to encompass the selection, so that the repainting of
selected replaced elements works correctly.

Test: fast/repaint/selected-replaced.html

  • rendering/RenderReplaced.cpp: (WebCore::RenderReplaced::selectionRect): (WebCore::RenderReplaced::localSelectionRect): (WebCore::RenderReplaced::absoluteClippedOverflowRect):
  • rendering/RenderReplaced.h:
2:58 PM Changeset in webkit [38921] by Chris Fleizach
  • 5 edits in trunk

Bug 22513: ZOOM: text selection does not send correct zoom bounds

When zoomed, text selection must send the zoom bounds in flipped screen coordinates.

2:27 PM Changeset in webkit [38920] by andersca@apple.com
  • 6 edits in trunk/WebKit/mac

2008-12-02 Anders Carlsson <andersca@apple.com>

Reviewed by Dan Bernstein.

Create a client mach port and pass it to the plug-in host.


  • Plugins/Hosted/NetscapePluginHostManager.h:
  • Plugins/Hosted/NetscapePluginHostManager.mm: (WebKit::NetscapePluginHostManager::hostForPackage): (WebKit::NetscapePluginHostManager::spawnPluginHost):
  • Plugins/Hosted/NetscapePluginHostProxy.h:
  • Plugins/Hosted/NetscapePluginHostProxy.mm: (WebKit::NetscapePluginHostProxy::NetscapePluginHostProxy):
  • Plugins/Hosted/WebKitPluginHost.defs:
2:16 PM Changeset in webkit [38919] by dino@apple.com
  • 4 edits in trunk/WebCore

2008-12-02 Dean Jackson <dino@apple.com>

Reviewed by Sam Weinig.

Remove support for 'now' from CSS (was
erroneously added to transition and animation delay)
https://bugs.webkit.org/show_bug.cgi?id=22571

  • css/CSSParser.cpp: (WebCore::CSSParser::parseAnimationDelay):
  • css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::mapAnimationDelay):
  • css/CSSValueKeywords.in:
2:03 PM Changeset in webkit [38918] by eric@webkit.org
  • 3 edits in trunk/WebCore

Build fix, no review.

Fix the Mac and gtk builds:
Don't use a float to hold a double.
Remove a now duplicate symbol.

  • WebCore.xcodeproj/project.pbxproj:
  • page/Frame.cpp: (WebCore::Frame::selectionLayoutChanged):
  • platform/gtk/TemporaryLinkStubs.cpp:
1:52 PM Changeset in webkit [38917] by ggaren@apple.com
  • 13 edits in trunk/JavaScriptCore

2008-12-02 Geoffrey Garen <ggaren@apple.com>

Reviewed by Geoffrey Garen. (Patch by Cameron Zwarich <zwarich@apple.com>.)


Fixed https://bugs.webkit.org/show_bug.cgi?id=22482
REGRESSION (r37991): Occasionally see "Scene rendered incorrectly"
message when running the V8 Raytrace benchmark


Rolled out r37991. It didn't properly save xmm0, which is caller-save,
before calling helper functions.


SunSpider and v8 benchmarks show little change -- possibly a .2%
SunSpider regression, possibly a .2% v8 benchmark speedup.

  • assembler/X86Assembler.h: (JSC::X86Assembler::):
  • bytecode/CodeBlock.cpp: (JSC::CodeBlock::dump):
  • bytecode/Instruction.h: (JSC::Instruction::):
  • bytecompiler/BytecodeGenerator.cpp: (JSC::BytecodeGenerator::emitUnaryOp):
  • bytecompiler/BytecodeGenerator.h: (JSC::BytecodeGenerator::emitToJSNumber): (JSC::BytecodeGenerator::emitTypeOf): (JSC::BytecodeGenerator::emitGetPropertyNames):
  • interpreter/Interpreter.cpp: (JSC::Interpreter::privateExecute):
  • interpreter/Interpreter.h:
  • jit/JIT.cpp: (JSC::JIT::privateCompileMainPass): (JSC::JIT::privateCompileSlowCases):
  • jit/JIT.h:
  • parser/Nodes.cpp: (JSC::UnaryOpNode::emitBytecode): (JSC::BinaryOpNode::emitBytecode): (JSC::EqualNode::emitBytecode):
  • parser/ResultType.h: (JSC::ResultType::isReusable): (JSC::ResultType::mightBeNumber):
  • runtime/JSNumberCell.h:
1:32 PM Changeset in webkit [38916] by barraclough@apple.com
  • 3 edits in trunk/JavaScriptCore

2008-12-01 Gavin Barraclough <barraclough@apple.com>

Reviewed by Geoffrey Garen.

Remove unused (sampling only, and derivable) argument to JIT::emitCTICall.
https://bugs.webkit.org/show_bug.cgi?id=22587

  • jit/JIT.cpp: (JSC::JIT::emitCTICall): (JSC::JIT::compileOpCall): (JSC::JIT::emitSlowScriptCheck): (JSC::JIT::compileBinaryArithOpSlowCase): (JSC::JIT::privateCompileMainPass): (JSC::JIT::privateCompileSlowCases): (JSC::JIT::privateCompile):
  • jit/JIT.h:
1:29 PM Changeset in webkit [38915] by Chris Fleizach
  • 6 edits in trunk

Bug 22596: Some elements don't report AXBlockQuoteLevel

Make sure all AX objects return a block quote level

1:26 PM Changeset in webkit [38914] by andersca@apple.com
  • 9 edits in trunk/WebKit/mac

2008-12-02 Anders Carlsson <andersca@apple.com>

Reviewed by Sam Weinig.

Let the plug-in views know if the plug-in host crashes.


  • Plugins/Hosted/NetscapePluginHostManager.h:
  • Plugins/Hosted/NetscapePluginHostManager.mm: (WebKit::NetscapePluginHostManager::instantiatePlugin):
  • Plugins/Hosted/NetscapePluginHostProxy.h:
  • Plugins/Hosted/NetscapePluginHostProxy.mm: (WebKit::NetscapePluginHostProxy::pluginHostDied): (WebKit::NetscapePluginHostProxy::addPluginInstance): (WebKit::NetscapePluginHostProxy::removePluginInstance):


  • Plugins/Hosted/NetscapePluginInstanceProxy.h: (WebKit::NetscapePluginInstanceProxy::create):
  • Plugins/Hosted/NetscapePluginInstanceProxy.mm: Keep a pointer to the host proxy.


(WebKit::NetscapePluginInstanceProxy::NetscapePluginInstanceProxy):
Add the instance to the host set.


(WebKit::NetscapePluginInstanceProxy::~NetscapePluginInstanceProxy):
Remove the instance form the host set.


(WebKit::NetscapePluginInstanceProxy::pluginHostDied):
Tell the plug-in view that the plug-in died.

  • Plugins/Hosted/WebHostedNetscapePluginView.h:
  • Plugins/Hosted/WebHostedNetscapePluginView.mm: (-[WebHostedNetscapePluginView createPlugin]): Pass the plug-in view to the instantiatePlugin.


(-[WebHostedNetscapePluginView pluginHostDied]):
Handle the plug-in host crashing.


(-[WebHostedNetscapePluginView drawRect:]):
Fill the plug-in view with a nice red shade if the plug-in crashes.

12:43 PM Changeset in webkit [38913] by eric@webkit.org
  • 3 edits
    2 adds in trunk

2008-12-02 Dimitri Glazkov <Dimitri Glazkov>

Reviewed by Eric Seidel.

Fix the inheritance chain for JSFunction.

  • runtime/JSFunction.cpp: (JSC::JSFunction::info): Add InternalFunction::info as parent class
12:36 PM Changeset in webkit [38912] by eric@webkit.org
  • 4 edits in trunk

2008-12-02 Michael Moss <mmoss@chromium.org>

Reviewed by Eric Seidel.

Change 31264 fixed this on Mac (since moved to WebCore/loader/FrameLoader.cpp), but was never ported to Windows.

  • WebCoreSupport/WebFrameLoaderClient.cpp: (WebFrameLoaderClient::loadURLIntoChild):
12:32 PM Changeset in webkit [38911] by eric@webkit.org
  • 6 edits in trunk/WebCore

2008-12-02 Dean McNamee <deanm@chromium.org>

Reviewed by Eric Seidel.

Correctly handle a theme returning a non-blinking interval. We should
not set any timers when the interval is 0 (non-blinking), otherwise we
repeatedly set and destroy a blinking timer, causing a paint and timer
storm. This is applicable to GTK and Windows, where a user can set a
non-blinking caret in their system preferences.

Renamed caretBlinkFrequency to the more accurate caretBlinkInterval.

  • page/Frame.cpp: (WebCore::Frame::selectionLayoutChanged):
  • platform/Theme.h: (WebCore::Theme::caretBlinkInterval):
  • platform/gtk/RenderThemeGtk.cpp: (WebCore::RenderThemeGtk::caretBlinkInterval):
  • platform/gtk/RenderThemeGtk.h:
  • rendering/RenderTheme.h: (WebCore::RenderTheme::caretBlinkInterval):
12:27 PM Changeset in webkit [38910] by eric@webkit.org
  • 2 edits in trunk/WebCore

Reviewed by Eric Seidel.

https://bugs.webkit.org/show_bug.cgi?id=22538

startsWith uses find which searches through the whole string if no match is found.
Using reverseFind with an index of 0 has the benefit of only searching for the match
at the beginning of the string. This may only be a small benefit in the overall program,
but it may help in some cases when the string is big.

No observable change in behavior, so no test.

  • platform/text/StringImpl.h: (WebCore::StringImpl::startsWith):
12:25 PM Changeset in webkit [38909] by eric@webkit.org
  • 2 edits in trunk/WebCore

Reviewed by Darin Adler.

Wrap a JSC-only hack in a USE(JSC) block to fix the v8 build.
https://bugs.webkit.org/show_bug.cgi?id=21951

  • svg/SVGElementInstance.cpp: (WebCore::SVGElementInstance::forgetWrapper):
11:07 AM Changeset in webkit [38908] by eric@webkit.org
  • 2 edits in trunk/WebCore

Reviewed by Darin Adler.

Add an ASSERT to try and catch the root cause of:
https://bugs.webkit.org/show_bug.cgi?id=22168
http://code.google.com/p/chromium/issues/detail?id=4122

  • editing/TextIterator.cpp: (WebCore::TextIterator::emitText):
11:04 AM Changeset in webkit [38907] by eric@webkit.org
  • 2 edits in trunk/WebKitTools

Reviewed by David Kilzer.

Hack build-webkit --chromium to use Win32 python instead
of using the default cygwin python. Scons + CYGWIN tries
to build with GCC by default, we force MSVC in our file
but that just results in errors from Scons. Until we can fix
this latest round of errors, at least make build-webkit --chromium
actually "work" under CYGWIN instead of forcing users to use
a cmd shell directly.

This is working around a Scons bug:
http://scons.tigris.org/issues/show_bug.cgi?id=2266

  • Scripts/webkitdirs.pm:
11:01 AM Changeset in webkit [38906] by eric@webkit.org
  • 4 edits in trunk/WebCore

2008-12-02 Brent Fulgham <bfulgham@gmail.com>

Reviewed by Adam Roben.

Remove some CG-specific code from the Windows Cairo build.
https://bugs.webkit.org/show_bug.cgi?id=22586

No new test cases since this update should create no user-visible
changes, and should be fully covered by the existing regression
tests.

  • WebCore.vcproj/WebCore.vcproj: Remove FontDatabase from
  • platform/graphics/cairo/GraphicsContextCairo.cpp: (WebCore::focusRingColor): Add stub method
  • platform/win/TemporaryLinkStubs.cpp: (WebCore::populateFontDatabase): Add stub method.
10:32 AM Changeset in webkit [38905] by andersca@apple.com
  • 5 edits in trunk/WebKit/mac

2008-12-01 Anders Carlsson <andersca@apple.com>

Reviewed by Dan Bernstein.

Recover if the plug-in host dies and we try to instantiate another plugin before we get the port death notification


  • Plugins/Hosted/NetscapePluginHostManager.h:
  • Plugins/Hosted/NetscapePluginHostManager.mm: (WebKit::NetscapePluginHostManager::pluginHostDied): Remove the plug-in host from the map.


(WebKit::NetscapePluginHostManager::instantiatePlugin):
NetscapePluginHostProxy is no longer refcounted.

  • Plugins/Hosted/NetscapePluginHostProxy.h: This is no longer refcounted. Add a set of plug-in instances (unused for now).


  • Plugins/Hosted/NetscapePluginHostProxy.mm: (WebKit::NetscapePluginHostProxy::NetscapePluginHostProxy): Create a death notification port.


(WebKit::NetscapePluginHostProxy::pluginHostDied):
Tell the manager that we're gone and delete ourselves.


(WebKit::NetscapePluginHostProxy::deathPortCallback):
New CFMachPort callback.

8:14 AM Changeset in webkit [38904] by Simon Hausmann
  • 4 edits in trunk/WebKit/qt

2008-12-02 Simon Hausmann <Simon Hausmann>

Rubber-stamped by Tor Arne Vestbø.

Initial API documentation for QWebDatabase, QWebSecurityOrigin and
QWebFrame::securityOrigin().

8:03 AM Changeset in webkit [38903] by vestbo@webkit.org
  • 2 edits in trunk/WebCore

2008-12-01 Laszlo Gombos <Laszlo Gombos>

Reviewed by Tor Arne Vestbø.

MinGW compilation fix for PluginPackageWin.cpp

https://bugs.webkit.org/show_bug.cgi?id=22585

7:13 AM Changeset in webkit [38902] by Adam Roben
  • 2 edits in trunk/WebCore

Build fix for Windows projects with NOMINMAX defined globally

  • platform/win/COMPtr.h: Don't redefine NOMINMAX if it's already defined.
2:04 AM Changeset in webkit [38901] by Simon Hausmann
  • 8 edits in trunk

Top-Level:

2008-12-02 Simon Hausmann <Simon Hausmann>

Reviewed by Tor Arne Vestbø.

Removed JavaScriptCore from SUBDIRS as it's not built separately
anymore.

WebCore:

2008-12-02 Simon Hausmann <Simon Hausmann>

Reviewed by Tor Arne Vestbø.

Build JavaScriptCore into libQtWebKit.so through a direct build
instead of a static library. When linking a static library into
a shared library qmake generates an incorrect .prl file, which
causes all sorts of different build problems when linking against
QtWebKit. Fixing this in qmake requires bigger changes that are
currently not possible, so we need to work around this limitation
for now. The advantages of the separate build did not outweight the
build problems it caused.

JavaScriptCore:

2008-12-02 Simon Hausmann <Simon Hausmann>

Reviewed by Tor Arne Vestbø.

Fix ability to include JavaScriptCore.pri from other .pro files.

12:49 AM Changeset in webkit [38900] by ap@webkit.org
  • 8 edits in trunk/WebCore

Reviewed by Alexey Proskuryakov.

https://bugs.webkit.org/show_bug.cgi?id=22588
Move securityOrigin() from Document and WorkerContext into ScriptExecutionContext.

No observable change in behavior, so no test.


  • dom/Document.cpp: (WebCore::Document::open): (WebCore::Document::domain): (WebCore::Document::setDomain): (WebCore::Document::initSecurityContext): (WebCore::Document::setSecurityOrigin):
  • dom/Document.h:
  • dom/ScriptExecutionContext.cpp: (WebCore::ScriptExecutionContext::setSecurityOrigin):
  • dom/ScriptExecutionContext.h: (WebCore::ScriptExecutionContext::securityOrigin):
  • dom/WorkerContext.cpp: (WebCore::WorkerContext::WorkerContext):
  • dom/WorkerContext.h: These changes are for the move of securityOrigin().


  • xml/XMLHttpRequest.cpp: (WebCore::XMLHttpRequest::createRequest): (WebCore::XMLHttpRequest::makeSimpleCrossSiteAccessRequest): (WebCore::XMLHttpRequest::makeCrossSiteAccessRequestWithPreflight): (WebCore::XMLHttpRequest::handleAsynchronousPreflightResult): (WebCore::XMLHttpRequest::setRequestHeader): (WebCore::XMLHttpRequest::getAllResponseHeaders): (WebCore::XMLHttpRequest::getResponseHeader): (WebCore::XMLHttpRequest::processSyncLoadResults): (WebCore::XMLHttpRequest::willSendRequest): (WebCore::XMLHttpRequest::accessControlCheck): (WebCore::XMLHttpRequest::didReceiveResponsePreflight): Change XMLHttpRequest to use ScriptExecutionContext instead of Document to access securityOrigin().
12:26 AM Changeset in webkit [38899] by Simon Hausmann
  • 2 edits in trunk/WebCore

2008-12-02 André Pönitz <apoenitz@trolltech.com>

Reviewed by Simon Hausmann.

Disable the creation of debug information for the Qt build when done
inside Qt. With 670 mb it was slowing down gdb start significantly
for third-party applications that usually don't need it.

Dec 1, 2008:

11:24 PM Changeset in webkit [38898] by Beth Dakin
  • 4 edits
    8 adds in trunk

WebCore:

2008-12-01 Beth Dakin <Beth Dakin>

Reviewed by Dan Bernstein.

Fix for https://bugs.webkit.org/show_bug.cgi?id=13736 REGRESSION
(r19811): Using the down arrow in a textarea gets "stuck" at the
end of a wrapped line
And corresponding: <rdar://problem/5347931>

The basic problem here is that Position::getInlineBoxAndOffset()
failed to look beyond a single renderer. This patch looks for a
better match beyond the first renderer when the affinity is
downstream and we failed to find a "perfect" match.

  • dom/Position.cpp: (WebCore::isNonTextLeafChild): (WebCore::searchAheadForBetterMatch): (WebCore::Position::getInlineBoxAndOffset):

This is a fix I made based on code inspection. It looks like the
old code here and skipped over the parent as a possible match.

  • rendering/RenderObject.cpp: (WebCore::RenderObject::nextInPreOrderAfterChildren):

LayoutTests:

2008-12-01 Beth Dakin <Beth Dakin>

Reviewed by Dan Bernstein.

Tests for https://bugs.webkit.org/show_bug.cgi?id=13736 REGRESSION
(r19811): Using the down arrow in a textarea gets "stuck" at the
end of a wrapped line
And corresponding: <rdar://problem/5347931>

  • editing/selection/wrapped-line-caret-1.html: Added.
  • editing/selection/wrapped-line-caret-2.html: Added.
  • platform/mac/editing/selection/wrapped-line-caret-1- expected.checksum: Added.
  • platform/mac/editing/selection/wrapped-line-caret-1-expected.png: Added.
  • platform/mac/editing/selection/wrapped-line-caret-1-expected.txt: Added.
  • platform/mac/editing/selection/wrapped-line-caret-2- expected.checksum: Added.
  • platform/mac/editing/selection/wrapped-line-caret-2-expected.png: Added.
  • platform/mac/editing/selection/wrapped-line-caret-2-expected.txt: Added.
10:49 PM Changeset in webkit [38897] by pewtermoose@webkit.org
  • 2 edits in trunk/WebCore

2008-12-01 Brent Fulgham <bfulgham@gmail.com>

Reviewed by Adam Roben.

Add WML related files to Visual Studio projects.
https://bugs.webkit.org/show_bug.cgi?id=22561

  • WebCore.vcproj/WebCore.vcproj:
    1. Add files from the wml directory to the set of windows files.
    2. Extend include paths with new wml directory.
    3. Add new autogenerated WML files to DerivedSources.
    4. Alphabetize preprocesor includes (holdover from earlier debugging).
9:25 PM Changeset in webkit [38896] by sfalken@apple.com
  • 1 edit in trunk/WebCore/page/win/FrameCGWin.cpp

Build fix.

9:25 PM Changeset in webkit [38895] by sfalken@apple.com
  • 2 edits in trunk/WebCore

Revise node/selection image fix.
Moved updateLayout call so selection rect is fetched after the layout.


Reviewed by Adam Roben.

  • page/win/FrameCGWin.cpp: (WebCore::imageFromRect): (WebCore::imageFromSelection): (WebCore::Frame::nodeImage):
9:08 PM Changeset in webkit [38894] by sfalken@apple.com
  • 8 edits in trunk

WebCore:

2008-12-01 Steve Falkenburg <sfalken@apple.com>

Support needed to implement renderedImage for Windows.
https://bugs.webkit.org/show_bug.cgi?25648

Reviewed by Adam Roben.

  • page/Frame.h:
  • page/win/FrameCGWin.cpp: (WebCore::imageFromRect): (WebCore::imageFromSelection): (WebCore::Frame::nodeImage):
  • page/win/FrameCairoWin.cpp: (WebCore::imageFromNode):

WebKit/win:

2008-12-01 Steve Falkenburg <sfalken@apple.com>

Implement renderedImage for Windows.
https://bugs.webkit.org/show_bug.cgi?25648


Reviewed by Adam Roben.

  • DOMCoreClasses.cpp: (DOMElement::renderedImage):
  • DOMCoreClasses.h:
  • Interfaces/DOMPrivate.idl:
9:01 PM Changeset in webkit [38893] by Simon Fraser
  • 2 edits in trunk/WebCore

2008-12-01 Simon Fraser <Simon Fraser>

Reviewed by Dan Bernstein

https://bugs.webkit.org/show_bug.cgi?id=22581

Fix the painting of the caps lock indicator for transformed text inputs,
by replacing a call to absoluteContentBox() with code that computes the
painting rect for the input contents.

  • rendering/RenderTextControl.cpp: (WebCore::RenderTextControl::paint):
8:26 PM Changeset in webkit [38892] by Nikolas Zimmermann
  • 4 edits in trunk/LayoutTests

Not reviewed. Forgot to include updated layout tests in last commit.

7:25 PM Changeset in webkit [38891] by ggaren@apple.com
  • 7 edits
    1 add in trunk/JavaScriptCore

2008-12-01 Geoffrey Garen <ggaren@apple.com>

Reviewed by Cameron Zwarich, with help from Gavin Barraclough.


Fixed https://bugs.webkit.org/show_bug.cgi?id=22583.

Refactored regular expression parsing to parse sequences of characters
as a single unit, in preparation for optimizing sequences of characters.


SunSpider reports no change.

  • JavaScriptCore.xcodeproj/project.pbxproj:
  • wrec/Escapes.h: Added. Set of classes for representing an escaped token in a pattern.
  • wrec/Quantifier.h: (JSC::WREC::Quantifier::Quantifier): Simplified this constructor slightly, to match the new Escape constructor.
  • wrec/WRECGenerator.cpp: (JSC::WREC::Generator::generatePatternCharacterSequence):
  • wrec/WRECGenerator.h: Added an interface for generating a sequence of pattern characters at a time. It doesn't do anything special yet.
  • wrec/WRECParser.cpp: (JSC::WREC::Parser::consumeGreedyQuantifier): (JSC::WREC::Parser::consumeQuantifier): Renamed "parse" to "consume" in these functions, to match "consumeEscape."

(JSC::WREC::Parser::parsePatternCharacterSequence): New function for
iteratively aggregating a sequence of characters in a pattern.

(JSC::WREC::Parser::parseCharacterClassQuantifier):
(JSC::WREC::Parser::parseBackreferenceQuantifier): Renamed "parse" to
"consume" in these functions, to match "consumeEscape."

(JSC::WREC::Parser::parseCharacterClass): Refactored to use the common
escape processing code in consumeEscape.

(JSC::WREC::Parser::parseEscape): Refactored to use the common
escape processing code in consumeEscape.

(JSC::WREC::Parser::consumeEscape): Factored escaped token processing
into a common function, since we were doing this in a few places.

(JSC::WREC::Parser::parseTerm): Refactored to use the common
escape processing code in consumeEscape.

  • wrec/WRECParser.h: (JSC::WREC::Parser::consumeOctal): Refactored to use a helper function for reading a digit.
7:04 PM Changeset in webkit [38890] by Nikolas Zimmermann
  • 11 edits in trunk/WebCore

Reviewed by George Staikos.

Add two new helper functions to WMLElement, parseValueSubstitutingVariableReferences/parseValueForbiddingVariableReferences.

Convert all elements to parse their attribute values using these new helper functions. This simplifies the
actual attribute parsing code in all WMLElement derived classes, as most WML attribute values either report
an error if there's a variable reference used in the attribute value, or if it's invalid.

Split the WMLErrorInvalidVariableReference error which covered both 'invalid syntax' / 'wrong location'
in two seperated error codes: WMLErrorInvalidVariableReference / WMLErrorInvalidVariableReferenceLocation.

6:59 PM Changeset in webkit [38889] by Nikolas Zimmermann
  • 1 edit in trunk/WebCore/ChangeLog

Not reviewed, add reviewers full name.

6:49 PM Changeset in webkit [38888] by Nikolas Zimmermann
  • 3 edits in trunk/WebCore

Reviewed by George.
Fix switching active cards within a document. No way to test, until <go> support is implemented.

5:57 PM Changeset in webkit [38887] by cwzwarich@webkit.org
  • 3 edits in trunk/JavaScriptCore

2008-12-01 Cameron Zwarich <zwarich@apple.com>

Reviewed by Oliver Hunt.

Bug 20340: SegmentedVector segment allocations can lead to unsafe use of temporary registers
<https://bugs.webkit.org/show_bug.cgi?id=20340>

SegmentedVector currently frees segments and reallocates them when used
as a stack. This can lead to unsafe use of pointers into freed segments.

In order to fix this problem, SegmentedVector will be changed to only
grow and never shrink. Also, rename the reserveCapacity() member
function to grow() to match the actual usage in BytecodeGenerator, where
this function is used to allocate a group of registers at once, rather
than merely saving space for them.

  • bytecompiler/BytecodeGenerator.cpp: (JSC::BytecodeGenerator::BytecodeGenerator): Use grow() instead of reserveCapacity().
  • bytecompiler/SegmentedVector.h: (JSC::SegmentedVector::SegmentedVector): (JSC::SegmentedVector::last): (JSC::SegmentedVector::append): (JSC::SegmentedVector::removeLast): (JSC::SegmentedVector::grow): Renamed from reserveCapacity(). (JSC::SegmentedVector::clear):
5:31 PM Changeset in webkit [38886] by pol@apple.com
  • 11 edits in trunk/LayoutTests

2008-12-01 Pierre-Olivier Latour <pol@apple.com>

Reviewed by Mark Rowe.

Updated the reference images for the <video> layout tests as the ones checked-in previously
do not pass on the pixel bots.

https://bugs.webkit.org/show_bug.cgi?id=21911

  • platform/mac/media/video-aspect-ratio-expected.checksum:
  • platform/mac/media/video-aspect-ratio-expected.png:
  • platform/mac/media/video-controls-rendering-expected.checksum:
  • platform/mac/media/video-controls-rendering-expected.png:
  • platform/mac/media/video-display-toggle-expected.checksum:
  • platform/mac/media/video-display-toggle-expected.png:
  • platform/mac/media/video-layer-crash-expected.checksum:
  • platform/mac/media/video-layer-crash-expected.png:
  • platform/mac/media/video-transformed-expected.checksum:
  • platform/mac/media/video-transformed-expected.png:
5:07 PM Changeset in webkit [38885] by ddkilzer@apple.com
  • 2 edits in trunk/WebCore

Fix logic error in LegacyWebArchive::create() from r38884.

  • loader/archive/cf/LegacyWebArchive.cpp: (WebCore::LegacyWebArchive::create): Only continue if the subresource is actually added.
4:53 PM Changeset in webkit [38884] by ddkilzer@apple.com
  • 7 edits
    5 adds in trunk

Bug 22466: REGRESSION (35867): Many resources missing when saving webarchive of webkit.org

<https://bugs.webkit.org/show_bug.cgi?id=22466>
<rdar://problem/6403593>

Reviewed by Brady Eidson.

WebCore:

Test: http/tests/webarchive/test-preload-resources.html

  • loader/archive/cf/LegacyWebArchive.cpp: (WebCore::LegacyWebArchive::create): Check the WebCore cache for resources if DocumentLoader::subresource() doesn't return them. Note that the DocumentLoader::subresource() method returned preloaded resources before r35867, but this caused a regression in Mail.

WebKitTools:

  • DumpRenderTree/mac/DumpRenderTree.mm: (normalizeHTTPResponseHeaderFields): Added. Normalizes Date, Etag, Keep-Alive, Last-Modified and Server header fields to prevent false positive test failures. (convertWebResourceResponseToDictionary): Call normalizeHTTPResponseHeaderFields() to noramlize HTTP response header fields.

LayoutTests:

  • http/tests/webarchive/resources/test-preload-resources.css: Added.
  • http/tests/webarchive/test-preload-resources-expected.webarchive: Added.
  • http/tests/webarchive/test-preload-resources.html: Added.
  • platform/qt/Skipped: Added http/tests/webarchive and grouped the skipped list of other webarchive tests together.
  • platform/win/Skipped: Added http/tests/webarchive.
4:51 PM Changeset in webkit [38883] by andersca@apple.com
  • 6 edits in trunk/WebKit/mac

2008-12-01 Anders Carlsson <andersca@apple.com>

Reviewed by Dan Bernstein.

Move instantiatePlugin to NetscapePluginHostManager.


  • Plugins/Hosted/NetscapePluginHostManager.h:
  • Plugins/Hosted/NetscapePluginHostManager.mm: (WebKit::NetscapePluginHostManager::instantiatePlugin):
  • Plugins/Hosted/NetscapePluginHostProxy.h:
  • Plugins/Hosted/NetscapePluginHostProxy.mm:
  • Plugins/Hosted/WebHostedNetscapePluginView.mm: (-[WebHostedNetscapePluginView createPlugin]):
4:36 PM Changeset in webkit [38882] by andersca@apple.com
  • 4 edits in trunk/WebKit/mac

2008-12-01 Anders Carlsson <andersca@apple.com>

Reviewed by Dan Bernstein.

Pass the plug-in host port directly to the instance proxy.


  • Plugins/Hosted/NetscapePluginHostProxy.mm: (WebKit::NetscapePluginHostProxy::instantiatePlugin):
  • Plugins/Hosted/NetscapePluginInstanceProxy.h: (WebKit::NetscapePluginInstanceProxy::create):
  • Plugins/Hosted/NetscapePluginInstanceProxy.mm: (WebKit::NetscapePluginInstanceProxy::NetscapePluginInstanceProxy): (WebKit::NetscapePluginInstanceProxy::resize): (WebKit::NetscapePluginInstanceProxy::destroy): (WebKit::NetscapePluginInstanceProxy::focusChanged): (WebKit::NetscapePluginInstanceProxy::windowFocusChanged): (WebKit::NetscapePluginInstanceProxy::windowFrameChanged): (WebKit::NetscapePluginInstanceProxy::startTimers): (WebKit::NetscapePluginInstanceProxy::mouseEvent): (WebKit::NetscapePluginInstanceProxy::stopTimers):
4:10 PM Changeset in webkit [38881] by jchaffraix@webkit.org
  • 17 edits in trunk/WebCore

2008-12-01 Julien Chaffraix <jchaffraix@webkit.org>

Reviewed by Eric Seidel.

Bug 22564: Make HTML elements' constructors take a QualifiedName
https://bugs.webkit.org/show_bug.cgi?id=22564

  • Modified the remaining HTML elements' constructors to take a QualifiedName.
  • Added an assertion that the QualifiedName given corresponds to the element constructed.
  • bindings/js/JSAudioConstructor.cpp: (WebCore::constructAudio):
  • html/HTMLAudioElement.cpp: (WebCore::HTMLAudioElement::HTMLAudioElement):
  • html/HTMLAudioElement.h:
  • html/HTMLBRElement.cpp: (WebCore::HTMLBRElement::HTMLBRElement):
  • html/HTMLBRElement.h:
  • html/HTMLElement.cpp: (WebCore::HTMLElement::setInnerText):
  • html/HTMLElementFactory.cpp: (WebCore::brConstructor): (WebCore::quoteConstructor): (WebCore::marqueeConstructor): (WebCore::audioConstructor): (WebCore::videoConstructor): (WebCore::sourceConstructor):
  • html/HTMLMarqueeElement.cpp: (WebCore::HTMLMarqueeElement::HTMLMarqueeElement):
  • html/HTMLMarqueeElement.h:
  • html/HTMLQuoteElement.cpp: (WebCore::HTMLQuoteElement::HTMLQuoteElement):
  • html/HTMLQuoteElement.h:
  • html/HTMLSourceElement.cpp: (WebCore::HTMLSourceElement::HTMLSourceElement):
  • html/HTMLSourceElement.h:
  • html/HTMLVideoElement.cpp: (WebCore::HTMLVideoElement::HTMLVideoElement):
  • html/HTMLVideoElement.h:
  • rendering/RenderTextControl.cpp: (WebCore::RenderTextControl::updateFromElement):
3:58 PM Changeset in webkit [38880] by pam@chromium.org
  • 1 edit
    2 adds in trunk/LayoutTests

2008-12-01 Pamela Greene <pam@chromium.org>

Reviewed by Darin Adler.

https://bugs.webkit.org/show_bug.cgi?id=22464
Add a test for a potential crash when performing a same-origin
check on a subframe reloaded with about:blank.

  • fast/js/same-origin-subframe-about-blank-expected.txt: Added.
  • fast/js/same-origin-subframe-about-blank.html: Added.
3:37 PM Changeset in webkit [38879] by pol@apple.com
  • 17 edits in trunk/LayoutTests

2008-12-01 Pierre-Olivier Latour <pol@apple.com>

Reviewed by Dan Bernstein.

Fixed <video> layout tests so that DRT is notified they are done only when the video frames
are effectively rendered in the page. This requires using a timeout since there is no <video>
event that fires when the first frame has been drawn (the closest even fires when the element
is ready to render and will eventually draw at some unknown point in the future).
Thanks to this change, these tests now pass in --pixel mode as well.

https://bugs.webkit.org/show_bug.cgi?id=21911

  • media/video-aspect-ratio.html:
  • media/video-controls-rendering.html:
  • media/video-display-toggle.html:
  • media/video-layer-crash.html:
  • media/video-paint-test.js: (init):
  • media/video-transformed.html:
  • platform/mac/media/video-aspect-ratio-expected.checksum:
  • platform/mac/media/video-aspect-ratio-expected.png:
  • platform/mac/media/video-controls-rendering-expected.checksum:
  • platform/mac/media/video-controls-rendering-expected.png:
  • platform/mac/media/video-display-toggle-expected.checksum:
  • platform/mac/media/video-display-toggle-expected.png:
  • platform/mac/media/video-layer-crash-expected.checksum:
  • platform/mac/media/video-layer-crash-expected.png:
  • platform/mac/media/video-transformed-expected.checksum:
  • platform/mac/media/video-transformed-expected.png:
3:07 PM Changeset in webkit [38878] by jchaffraix@webkit.org
  • 32 edits in trunk/WebCore

2008-12-01 Julien Chaffraix <jchaffraix@webkit.org>

Reviewed by Antti Koivisto.

Bug 22441: Bridge the gap between the generated ElementFactory and HTMLElementFactory
https://bugs.webkit.org/show_bug.cgi?id=22441

Add an assertion to the modified HTML elements' constructor
to check that the QualifiedName parameter is the one that
matches the Element's.

  • html/HTMLBaseElement.cpp: (WebCore::HTMLBaseElement::HTMLBaseElement):
  • html/HTMLBlockquoteElement.cpp: (WebCore::HTMLBlockquoteElement::HTMLBlockquoteElement):
  • html/HTMLBodyElement.cpp: (WebCore::HTMLBodyElement::HTMLBodyElement):
  • html/HTMLButtonElement.cpp: (WebCore::HTMLButtonElement::HTMLButtonElement):
  • html/HTMLDListElement.cpp: (WebCore::HTMLDListElement::HTMLDListElement):
  • html/HTMLDirectoryElement.cpp: (WebCore::HTMLDirectoryElement::HTMLDirectoryElement):
  • html/HTMLDivElement.cpp: (WebCore::HTMLDivElement::HTMLDivElement):
  • html/HTMLFieldSetElement.cpp: (WebCore::HTMLFieldSetElement::HTMLFieldSetElement):
  • html/HTMLFormElement.cpp: (WebCore::HTMLFormElement::HTMLFormElement):
  • html/HTMLFrameElement.cpp: (WebCore::HTMLFrameElement::HTMLFrameElement):
  • html/HTMLFrameSetElement.cpp: (WebCore::HTMLFrameSetElement::HTMLFrameSetElement):
  • html/HTMLHeadElement.cpp: (WebCore::HTMLHeadElement::HTMLHeadElement):
  • html/HTMLHtmlElement.cpp: (WebCore::HTMLHtmlElement::HTMLHtmlElement):
  • html/HTMLIFrameElement.cpp: (WebCore::HTMLIFrameElement::HTMLIFrameElement):
  • html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::HTMLInputElement):
  • html/HTMLIsIndexElement.cpp: (WebCore::HTMLIsIndexElement::HTMLIsIndexElement):
  • html/HTMLKeygenElement.cpp: (WebCore::HTMLKeygenElement::HTMLKeygenElement):
  • html/HTMLLIElement.cpp: (WebCore::HTMLLIElement::HTMLLIElement):
  • html/HTMLLabelElement.cpp: (WebCore::HTMLLabelElement::HTMLLabelElement):
  • html/HTMLLegendElement.cpp: (WebCore::HTMLLegendElement::HTMLLegendElement):
  • html/HTMLLinkElement.cpp: (WebCore::HTMLLinkElement::HTMLLinkElement):
  • html/HTMLMenuElement.cpp: (WebCore::HTMLMenuElement::HTMLMenuElement):
  • html/HTMLMetaElement.cpp: (WebCore::HTMLMetaElement::HTMLMetaElement):
  • html/HTMLOListElement.cpp: (WebCore::HTMLOListElement::HTMLOListElement):
  • html/HTMLOptGroupElement.cpp: (WebCore::HTMLOptGroupElement::HTMLOptGroupElement):
  • html/HTMLOptionElement.cpp: (WebCore::HTMLOptionElement::HTMLOptionElement):
  • html/HTMLSelectElement.cpp: (WebCore::HTMLSelectElement::HTMLSelectElement):
  • html/HTMLStyleElement.cpp: (WebCore::HTMLStyleElement::HTMLStyleElement):
  • html/HTMLTextAreaElement.cpp: (WebCore::HTMLTextAreaElement::HTMLTextAreaElement):
  • html/HTMLTitleElement.cpp: (WebCore::HTMLTitleElement::HTMLTitleElement):
  • html/HTMLUListElement.cpp: (WebCore::HTMLUListElement::HTMLUListElement):
2:50 PM Changeset in webkit [38877] by mrowe@apple.com
  • 2 edits in trunk/JavaScriptCore

Disable WREC for x86_64 since memory allocated by the system allocator is not marked executable,
which causes 64-bit debug builds to crash. Once we have a dedicated allocator for executable
memory we can turn this back on.

Rubber-stamped by Anders Carlsson.

  • wtf/Platform.h:
2:50 PM Changeset in webkit [38876] by cmarrin@apple.com
  • 4 edits in trunk/WebCore

2008-12-01 Chris Marrin <cmarrin@apple.com>

Reviewed by Darin Adler.

https://bugs.webkit.org/show_bug.cgi?id=22046

Fixed another case of crashing because the animation object is getting deleted when
it's in the middle of a callback. I actually moved where I am retaining the pointer
up out of the lower level AnimationBase code and into the timer callback that calls
them. So now the pointer is valid throughout the entire sequence of callback code.

The testcase for https://bugs.webkit.org/show_bug.cgi?id=22052 also exhibits a
crash which this patch fixes.

  • page/animation/AnimationBase.cpp: (WebCore::AnimationBase::updateStateMachine): (WebCore::AnimationBase::animationTimerCallbackFired):
  • page/animation/CompositeAnimation.cpp: (WebCore::CompositeAnimationPrivate::setAnimationStartTime): (WebCore::CompositeAnimationPrivate::setTransitionStartTime): (WebCore::CompositeAnimationPrivate::styleAvailable):
  • page/animation/ImplicitAnimation.cpp: (WebCore::ImplicitAnimation::sendTransitionEvent):
  • page/animation/KeyframeAnimation.cpp: (WebCore::KeyframeAnimation::sendAnimationEvent): (WebCore::KeyframeAnimation::resumeOverriddenAnimations):
2:23 PM Changeset in webkit [38875] by Antti Koivisto
  • 2 edits in trunk/JavaScriptCore

2008-12-01 Antti Koivisto <Antti Koivisto>

Reviewed by Maciej Stachowiak.


Restore inline buffer after vector is shrunk back below its inline capacity.

  • wtf/Vector.h: (WTF::): (WTF::VectorBuffer::restoreInlineBufferIfNeeded): (WTF::::shrinkCapacity):
2:18 PM Changeset in webkit [38874] by andersca@apple.com
  • 2 edits in trunk/WebKit/mac

2008-12-01 Anders Carlsson <andersca@apple.com>

Try to fix the Tiger build.

  • Plugins/WebNetscapePluginView.mm:
2:09 PM Changeset in webkit [38873] by eric@webkit.org
  • 2 edits in trunk/WebKit/win

Reviewed by Adam Roben.

NULL-check documentFrameView() and topDocumentFrameView() it's possible
for either of these methods to return NULL, and this was seen to cause
crashes in Chromium.
https://bugs.webkit.org/show_bug.cgi?id=22572

  • AccessibleBase.cpp: (AccessibleBase::get_accParent): (AccessibleBase::accLocation): (AccessibleBase::accHitTest):
2:00 PM Changeset in webkit [38872] by andersca@apple.com
  • 4 edits in trunk/WebKit/mac

2008-12-01 Anders Carlsson <andersca@apple.com>

Rename _layer to _pluginLayer where I forgot to do so.


  • Plugins/Hosted/WebHostedNetscapePluginView.mm: (-[WebHostedNetscapePluginView destroyPlugin]):
  • Plugins/WebNetscapePluginView.h:
  • Plugins/WebNetscapePluginView.mm: (-[WebNetscapePluginView createPlugin]): (-[WebNetscapePluginView setLayer:]): (-[WebNetscapePluginView destroyPlugin]):
1:56 PM Changeset in webkit [38871] by mrowe@apple.com
  • 4 edits in trunk

Versioning.

1:48 PM Changeset in webkit [38870] by mrowe@apple.com
  • 1 copy in tags/Safari-6528.5

New tag.

1:45 PM Changeset in webkit [38869] by andersca@apple.com
  • 1 edit in trunk/WebKit/mac/ChangeLog

Fix ChangeLog

1:44 PM Changeset in webkit [38868] by andersca@apple.com
  • 4 edits in trunk/WebKit/mac

2008-12-01 Anders Carlsson <andersca@apple.com>

Reviewed by Adam Roben.

Make sure to re-insert layers as needed so they won't be lost when the layer backed
view is removed from the view hierarchy.

  • Plugins/Hosted/WebHostedNetscapePluginView.h: Add _layer ivar.


  • Plugins/Hosted/WebHostedNetscapePluginView.mm: (-[WebHostedNetscapePluginView createPlugin]): Don't add the layer here.


(-[WebHostedNetscapePluginView setLayer:]):
Instead, add it here.


(-[WebHostedNetscapePluginView destroyPlugin]):
Set _layer to 0.


  • Plugins/WebNetscapePluginView.mm: (-[WebNetscapePluginView createPlugin]): Don't add the layer here.


(-[WebNetscapePluginView setLayer:]):
Do it here.

1:23 PM Changeset in webkit [38867] by pam@chromium.org
  • 1 edit
    3 adds in trunk/LayoutTests

2008-12-01 Pamela Greene <pam@chromium.org>

Reviewed by Darin Adler.

https://bugs.webkit.org/show_bug.cgi?id=22463
Add a test for accessing navigator.cookieEnabled after navigation.

  • fast/dom/navigator-cookieEnabled-no-crash-expected.txt: Added.
  • fast/dom/navigator-cookieEnabled-no-crash.html: Added.
  • fast/dom/resources/test-successful-destination.html: Added.
1:14 PM Changeset in webkit [38866] by Antti Koivisto
  • 2 edits in trunk/JavaScriptCore

2008-11-30 Antti Koivisto <Antti Koivisto>

Reviewed by Mark Rowe.


Try to return free pages in the current thread cache too.

  • wtf/FastMalloc.cpp: (WTF::TCMallocStats::releaseFastMallocFreeMemory):
12:59 PM Changeset in webkit [38865] by pam@chromium.org
  • 1 edit
    2 adds in trunk/LayoutTests

2008-12-01 Pamela Greene <pam@chromium.org>

Reviewed by Sam Weinig.

https://bugs.webkit.org/show_bug.cgi?id=22365
Add a test to verify behavior of DOM node constructors.

  • fast/dom/dom-constructors-expected.txt: Added.
  • fast/dom/dom-constructors.html: Added.
12:52 PM Changeset in webkit [38864] by ddkilzer@apple.com
  • 2 edits in trunk/WebKitTools

Bug 22559: Report builds left to test in bisect-builds (like git-bisect)

<https://bugs.webkit.org/show_bug.cgi?id=22559>

Reviewed by Adam Roben.

  • Scripts/bisect-builds: Updated status message to report the maximum number of builds left to test after the current one. (max): Added.
12:48 PM Changeset in webkit [38863] by pam@chromium.org
  • 1 edit
    2 adds in trunk/LayoutTests

2008-12-01 Pamela Greene <pam@chromium.org>

Reviewed by Darin Adler.

https://bugs.webkit.org/show_bug.cgi?id=22358
Add a test for crash on "Copy" after showing a tooltip.

  • editing/pasteboard/copy-crash-expected.txt: Added.
  • editing/pasteboard/copy-crash.html: Added.
12:03 PM Changeset in webkit [38862] by ap@webkit.org
  • 1 edit
    1 move in trunk/LayoutTests

Rubber-stamped by Mark Rowe.

https://bugs.webkit.org/show_bug.cgi?id=22531
Stack overflow on PowerPC on fast/workers/use-machine-stack.html

Disabling the test until the problem can be investigated.

  • fast/workers/use-machine-stack.html: Removed.
  • fast/workers/use-machine-stack.html-disabled: Copied from fast/workers/use-machine-stack.html.
9:25 AM Changeset in webkit [38861] by christian@webkit.org
  • 6 edits in trunk/WebKit/gtk

2008-12-01 Xan Lopez <xan@gnome.org>

Reviewed by Holger Freyther.

http://bugs.webkit.org/show_bug.cgi?id=22553
Remove unneeded GObject casts.

Remove unneeded casts to GObject in functions that take a gpointer
argument.

  • WebCoreSupport/ChromeClientGtk.cpp: (WebKit::ChromeClient::setWindowRect): (WebKit::ChromeClient::createWindow): (WebKit::ChromeClient::setToolbarsVisible): (WebKit::ChromeClient::toolbarsVisible): (WebKit::ChromeClient::setStatusbarVisible): (WebKit::ChromeClient::statusbarVisible): (WebKit::ChromeClient::setScrollbarsVisible): (WebKit::ChromeClient::scrollbarsVisible): (WebKit::ChromeClient::setMenubarVisible): (WebKit::ChromeClient::menubarVisible): (WebKit::ChromeClient::setToolTip):
  • WebCoreSupport/InspectorClientGtk.cpp: (WebKit::InspectorClient::createPage):
  • webkit/webkitwebframe.cpp:
  • webkit/webkitwebview.cpp:
  • webkit/webkitwebwindowfeatures.cpp: (_WebKitWebWindowFeaturesPrivate::webkit_web_window_features_new_from_core_features):
6:24 AM Changeset in webkit [38860] by ap@webkit.org
  • 1 edit in trunk/JavaScriptCore/ChangeLog

Make it clearer in ChangeLog entry that the last change only affected debug builds.

6:19 AM Changeset in webkit [38859] by ap@webkit.org
  • 3 edits in trunk/JavaScriptCore

2008-12-01 David Levin <levin@chromium.org>

Reviewed by Alexey Proskuryakov.

https://bugs.webkit.org/show_bug.cgi?id=22567
Make HashTable work as expected with respect to threads. Specifically, it has class-level
thread safety and constant methods work on constant objects without synchronization.


No observable change in behavior, so no test.

  • wtf/HashTable.cpp: (WTF::hashTableStatsMutex): (WTF::HashTableStats::~HashTableStats): (WTF::HashTableStats::recordCollisionAtCount): Guarded variable access with a mutex.
  • wtf/HashTable.h: (WTF::::lookup): (WTF::::lookupForWriting): (WTF::::fullLookupForWriting): (WTF::::add): (WTF::::reinsert): (WTF::::remove): (WTF::::rehash): Changed increments of static variables to use atomicIncrement.

(WTF::::invalidateIterators):
(WTF::addIterator):
(WTF::removeIterator):
Guarded mutable access with a mutex.

1:25 AM Changeset in webkit [38858] by vestbo@webkit.org
  • 2 edits in trunk/WebCore

2008-12-01 Tor Arne Vestbø <tavestbo@trolltech.com>

Reviewed by Simon Hausmann.

[Qt/Mac] Initialize NPAPI plugins before getting their entry points

The old behavior (calling NP_GetEntryPoints before NP_Initialize) was
copied from Windows, but caused Silverlight on Mac to crash when loaded.

Apparently the call order of NP_Initialize and NP_GetEntryPoints is
reversed on Mac. See https://bugzilla.mozilla.org/show_bug.cgi?id=344425

Reported-by: Peter Johnson <peter@zattoo.com>

1:18 AM Changeset in webkit [38857] by barraclough@apple.com
  • 7 edits in trunk/JavaScriptCore

2008-11-29 Gavin Barraclough <barraclough@apple.com>

Reviewed by Camron Zwarich.

Enable WREC on PLATFORM(X86_64). This change predominantly requires changes to the
WREC::Generator::generateEnter method to support the x86-64 ABI, and addition of
support for a limited number of quadword operations in the X86Assembler.

This patch will cause the JS heap to be allocated with RWX permissions on 64-bit Mac
platforms. This is a regression with respect to previous 64-bit behaviour, but is no
more permissive than on 32-bit builds. This issue should be addressed at some point.
(This is tracked by bug #21783.)

https://bugs.webkit.org/show_bug.cgi?id=22554
Greater than 4x speedup on regexp-dna, on x86-64.

  • assembler/MacroAssembler.h: (JSC::MacroAssembler::addPtr): (JSC::MacroAssembler::loadPtr): (JSC::MacroAssembler::storePtr): (JSC::MacroAssembler::pop): (JSC::MacroAssembler::push): (JSC::MacroAssembler::move):
  • assembler/X86Assembler.h: (JSC::X86Assembler::): (JSC::X86Assembler::movq_rr): (JSC::X86Assembler::addl_i8m): (JSC::X86Assembler::addl_i32r): (JSC::X86Assembler::addq_i8r): (JSC::X86Assembler::addq_i32r): (JSC::X86Assembler::movq_mr): (JSC::X86Assembler::movq_rm):
  • wrec/WREC.h:
  • wrec/WRECGenerator.cpp: (JSC::WREC::Generator::generateEnter): (JSC::WREC::Generator::generateReturnSuccess): (JSC::WREC::Generator::generateReturnFailure):
  • wtf/Platform.h:
  • wtf/TCSystemAlloc.cpp:
1:07 AM Changeset in webkit [38856] by cwzwarich@webkit.org
  • 4 edits in trunk/JavaScriptCore

2008-12-01 Cameron Zwarich <zwarich@apple.com>

Reviewed by Sam Weinig.

Preliminary work for bug 20340: SegmentedVector segment allocations can lead to unsafe use of temporary registers
<https://bugs.webkit.org/show_bug.cgi?id=20340>

SegmentedVector currently frees segments and reallocates them when used
as a stack. This can lead to unsafe use of pointers into freed segments.

In order to fix this problem, SegmentedVector will be changed to only
grow and never shrink, with the sole exception of clearing all of its
data, a capability that is required by Lexer. This patch changes the
public interface to only allow for these capabilities.

  • bytecompiler/BytecodeGenerator.cpp: (JSC::BytecodeGenerator::BytecodeGenerator): Use reserveCapacity() instead of resize() for m_globals and m_parameters.
  • bytecompiler/SegmentedVector.h: (JSC::SegmentedVector::resize): Removed. (JSC::SegmentedVector::reserveCapacity): Added. (JSC::SegmentedVector::clear): Added. (JSC::SegmentedVector::shrink): Removed. (JSC::SegmentedVector::grow): Removed.
  • parser/Lexer.cpp: (JSC::Lexer::clear): Use clear() instead of resize(0).

Nov 30, 2008:

9:35 PM Changeset in webkit [38855] by Chris Fleizach
  • 2 edits in trunk/WebCore

Bug 22510: Crash at WebCore::AccessibilityRenderObject::activeDescendant() on Google Reader with ARIA
https://bugs.webkit.org/show_bug.cgi?id=22510

2:28 PM Changeset in webkit [38854] by weinig@apple.com
  • 2 edits in trunk/JavaScriptCore

2008-11-30 Sam Weinig <sam@webkit.org>

Reviewed by Mark Rowe.

Renames jumps to m_jumps in JumpList.

  • assembler/MacroAssembler.h: (JSC::MacroAssembler::JumpList::link): (JSC::MacroAssembler::JumpList::linkTo): (JSC::MacroAssembler::JumpList::append):
2:19 PM Changeset in webkit [38853] by Antti Koivisto
  • 5 edits in trunk

JavaScriptCore:

2008-11-30 Antti Koivisto <Antti Koivisto>

Reviewed by Mark Rowe.


https://bugs.webkit.org/show_bug.cgi?id=22557


Report free size in central and thread caches too.

  • wtf/FastMalloc.cpp: (WTF::TCMallocStats::fastMallocStatistics):
  • wtf/FastMalloc.h:

WebKit/mac:

2008-11-30 Antti Koivisto <Antti Koivisto>

Reviewed by Mark Rowe.


https://bugs.webkit.org/show_bug.cgi?id=22557


Report free size in central and thread caches too.

  • Misc/WebCoreStatistics.mm: (+[WebCoreStatistics memoryStatistics]):
12:09 PM Changeset in webkit [38852] by Antti Koivisto
  • 2 edits in trunk/WebKit/win

2008-11-30 Antti Koivisto <Antti Koivisto>

Another Windows build fix.

  • WebCoreStatistics.cpp: (WebCoreStatistics::javaScriptObjectsCount):
12:07 PM Changeset in webkit [38851] by Antti Koivisto
  • 2 edits in trunk/WebKit/win

2008-11-30 Antti Koivisto <Antti Koivisto>

Windows build fix.

  • WebJavaScriptCollector.cpp: (WebJavaScriptCollector::objectCount):
12:31 AM Changeset in webkit [38850] by ap@webkit.org
  • 7 edits in trunk/WebCore

Reviewed by Dan Bernstein.

https://bugs.webkit.org/show_bug.cgi?id=22530
Assertion failures seen on buildbot due to uninitialized WorkerThread::m_threadID

  • dom/WorkerThread.cpp: (WebCore::WorkerThread::start): Protect worker startup with a mutex to ensure that this function runs to completion before the thread begins execution. (WebCore::WorkerThread::workerThread): Updated comments. (WebCore::WorkerThread::stop): Ditto.
  • dom/WorkerThread.h: Renamed m_workerContextMutex to m_threadCreationMutex, because it now protects startup as a whole.
  • storage/DatabaseThread.cpp:
  • storage/DatabaseThread.h:
  • storage/LocalStorageThread.cpp:
  • storage/LocalStorageThread.h: Fixed the same m_threadID problem.

Nov 29, 2008:

11:09 PM Changeset in webkit [38849] by Antti Koivisto
  • 6 edits in trunk

JavaScriptCore:

2008-11-29 Antti Koivisto <Antti Koivisto>

Reviewed by Dan Bernstein.


https://bugs.webkit.org/show_bug.cgi?id=22557
Add statistics for JavaScript GC heap.

  • JavaScriptCore.exp:
  • runtime/Collector.cpp: (JSC::Heap::objectCount): (JSC::addToStatistics): (JSC::Heap::statistics):
  • runtime/Collector.h:

WebKit/mac:

2008-11-29 Antti Koivisto <Antti Koivisto>

Reviewed by Dan Bernstein.

https://bugs.webkit.org/show_bug.cgi?id=22557
Add statistics for JavaScript GC heap.

  • Misc/WebCoreStatistics.mm: (+[WebCoreStatistics javaScriptObjectsCount]): (+[WebCoreStatistics memoryStatistics]):
4:39 PM Changeset in webkit [38848] by Antti Koivisto
  • 2 edits in trunk/JavaScriptCore

2008-11-29 Antti Koivisto <Antti Koivisto>

Fix debug build by adding a stub method.

  • wtf/FastMalloc.cpp: (WTF::fastMallocStatistics):
3:44 PM Changeset in webkit [38847] by pewtermoose@webkit.org
  • 5 edits in trunk

WebCore:

2008-11-29 Brent Fulgham <bfulgham@gmail.com>

Reviewed by Alexey Proskuryakov.

Remove Visual Studio project dependencies on non-redistributable
components in the Debug_Cairo and Release_Cairo build targets.
See https://bugs.webkit.org/show_bug.cgi?id=22527

  • WebCore.vcproj/WebCore.vcproj:

WebKit/win:

2008-11-29 Brent Fulgham <bfulgham@gmail.com>

Reviewed by Alexey Proskuryakov.

Remove Visual Studio project dependencies on non-redistributable
components in the Debug_Cairo and Release_Cairo build targets.
See https://bugs.webkit.org/show_bug.cgi?id=22527

  • WebKit.vcproj/WebKit.vcproj:
  • WebKit.vcproj/WebKit.sln: Instruct Cairo builds to not bother building the unused QuickTime support library.
2:35 PM Changeset in webkit [38846] by weinig@apple.com
  • 2 edits in trunk/WebCore

2008-11-29 Sam Weinig <sam@webkit.org>

Rubber-stamped by Alexey Proskuryakov.

Fix some sorting

  • WebCore.xcodeproj/project.pbxproj:
2:33 PM Changeset in webkit [38845] by weinig@apple.com
  • 8 edits
    2 adds in trunk

WebCore:

2008-11-28 Sam Weinig <sam@webkit.org>

Reviewed by Alexey Proskuryakov.

Fix for https://bugs.webkit.org/show_bug.cgi?id=21063
NULL pointer crash in dispatchEvent(null);

Test: fast/events/dispatchEvent-crash.html

  • dom/MessagePort.cpp: (WebCore::MessagePort::dispatchEvent):
  • dom/Worker.cpp: (WebCore::Worker::dispatchEvent):
  • dom/WorkerContext.cpp: (WebCore::WorkerContext::dispatchEvent):
  • loader/appcache/DOMApplicationCache.cpp: (WebCore::DOMApplicationCache::dispatchEvent):
  • xml/XMLHttpRequest.cpp: (WebCore::XMLHttpRequest::dispatchEvent):
  • xml/XMLHttpRequestUpload.cpp: (WebCore::XMLHttpRequestUpload::dispatchEvent):

LayoutTests:

2008-11-28 Sam Weinig <sam@webkit.org>

Reviewed by Alexey Proskuryakov.

Test for https://bugs.webkit.org/show_bug.cgi?id=21063
NULL pointer crash in dispatchEvent(null);

  • fast/events/dispatchEvent-crash-expected.txt: Added.
  • fast/events/dispatchEvent-crash.html: Added.
2:10 PM Changeset in webkit [38844] by Antti Koivisto
  • 8 edits in trunk

JavaScriptCore:

2008-11-29 Antti Koivisto <Antti Koivisto>

Reviewed by Alexey Proskuryakov.


https://bugs.webkit.org/show_bug.cgi?id=22557


Add function for getting basic statistics from FastMalloc.

  • JavaScriptCore.exp:
  • wtf/FastMalloc.cpp: (WTF::DLL_Length): (WTF::TCMalloc_PageHeap::ReturnedBytes): (WTF::TCMallocStats::fastMallocStatistics):
  • wtf/FastMalloc.h:

WebKit/mac:

2008-11-29 Antti Koivisto <Antti Koivisto>

Reviewed by Alexey Proskuryakov.


https://bugs.webkit.org/show_bug.cgi?id=22557


  • Add purgeable memory statistics to cache statistics.
  • Add method for getting fastMalloc statistics.
  • Add method to force returning free memory back to system.
  • Misc/WebCache.mm: (+[WebCache statistics]):
  • Misc/WebCoreStatistics.h:
  • Misc/WebCoreStatistics.mm: (+[WebCoreStatistics stopIgnoringWebCoreNodeLeaks]): (+[WebCoreStatistics memoryStatistics]): (+[WebCoreStatistics returnFreeMemoryToSystem]):
1:40 PM Changeset in webkit [38843] by mitz@apple.com
  • 6 edits
    2 adds in trunk

WebCore:

Reviewed by Alexey Proskuryakov.

Test: http/tests/misc/font-face-in-multiple-segmented-faces.html

The crash happened because style recalculation was invoked by
CSSFontSelector after one CSSSegmentedFontFace had pruned its tables but
before another CSSSegmentedFontFace using the same CSSFontFace had done
so. The fix is to let all CSSSegmentedFontFaces using the CSSFontFace
prune their tables before telling the CSSFontSelector to recalc style.

  • css/CSSFontFace.cpp: (WebCore::CSSFontFace::fontLoaded):
  • css/CSSFontSelector.cpp: (WebCore::CSSFontSelector::fontLoaded):
  • css/CSSFontSelector.h:
  • css/CSSSegmentedFontFace.cpp: (WebCore::CSSSegmentedFontFace::fontLoaded):

LayoutTests:

Reviewed by Alexey Proskuryakov.

  • http/tests/misc/font-face-in-multiple-segmented-faces-expected.txt: Added.
  • http/tests/misc/font-face-in-multiple-segmented-faces.html: Added.
10:29 AM Changeset in webkit [38842] by ap@webkit.org
  • 3 edits
    2 adds in trunk

Reviewed by Eric Seidel.

https://bugs.webkit.org/show_bug.cgi?id=14968
document.open() erroneously returns void instead of the new Document

Test: fast/dom/HTMLDocument/document-open-return-value.html

  • bindings/js/JSHTMLDocumentCustom.cpp: (WebCore::JSHTMLDocument::open): Return the document on which this method was invoked, per HTML5.
4:14 AM Changeset in webkit [38841] by christian@webkit.org
  • 3 edits in trunk/WebKit/gtk

2008-11-29 Christian Dywan <christian@twotoasts.de>

Reviewed by Holger Freyther.

http://bugs.webkit.org/show_bug.cgi?id=17122
[GTK] Bad font default settings

Implement a property "enforce-96-dpi" in WebKitWebSettings
that can be enabled to force the view to assume 96 DPI.

  • webkit/webkitwebsettings.cpp: (_WebKitWebSettingsPrivate::): (_WebKitWebSettingsPrivate::webkit_web_settings_class_init): (_WebKitWebSettingsPrivate::webkit_web_settings_set_property): (_WebKitWebSettingsPrivate::webkit_web_settings_get_property):
  • webkit/webkitwebview.cpp:
4:07 AM Changeset in webkit [38840] by cwzwarich@webkit.org
  • 2 edits in trunk/JavaScriptCore

2008-11-29 Cameron Zwarich <zwarich@apple.com>

Not reviewed.

The C++ standard does not automatically grant the friendships of an
enclosing class to its nested subclasses, so we should do so explicitly.
This fixes the GCC 4.0 build, although both GCC 4.2 and Visual C++ 2005
accept the incorrect code as it is.

  • assembler/MacroAssembler.h:
3:10 AM Changeset in webkit [38839] by barraclough@apple.com
  • 15 edits
    1 add in trunk/JavaScriptCore

2008-11-29 Gavin Barraclough <barraclough@apple.com>

Reviewed by Camron Zwarich.

Add the class MacroAssembler to provide some abstraction of code generation,
and change WREC to make use of this class, rather than directly accessing
the X86Assembler.

This patch also allows WREC to be compiled without the rest of the JIT enabled.

  • JavaScriptCore.xcodeproj/project.pbxproj:
  • assembler/MacroAssembler.h: Added. (JSC::MacroAssembler::): (JSC::MacroAssembler::MacroAssembler): (JSC::MacroAssembler::copyCode): (JSC::MacroAssembler::Address::Address): (JSC::MacroAssembler::ImplicitAddress::ImplicitAddress): (JSC::MacroAssembler::BaseIndex::BaseIndex): (JSC::MacroAssembler::Label::Label): (JSC::MacroAssembler::Jump::Jump): (JSC::MacroAssembler::Jump::link): (JSC::MacroAssembler::Jump::linkTo): (JSC::MacroAssembler::JumpList::link): (JSC::MacroAssembler::JumpList::linkTo): (JSC::MacroAssembler::JumpList::append): (JSC::MacroAssembler::Imm32::Imm32): (JSC::MacroAssembler::add32): (JSC::MacroAssembler::or32): (JSC::MacroAssembler::sub32): (JSC::MacroAssembler::loadPtr): (JSC::MacroAssembler::load32): (JSC::MacroAssembler::load16): (JSC::MacroAssembler::storePtr): (JSC::MacroAssembler::store32): (JSC::MacroAssembler::pop): (JSC::MacroAssembler::push): (JSC::MacroAssembler::peek): (JSC::MacroAssembler::poke): (JSC::MacroAssembler::move): (JSC::MacroAssembler::compareImm32ForBranch): (JSC::MacroAssembler::compareImm32ForBranchEquality): (JSC::MacroAssembler::jae32): (JSC::MacroAssembler::je32): (JSC::MacroAssembler::je16): (JSC::MacroAssembler::jg32): (JSC::MacroAssembler::jge32): (JSC::MacroAssembler::jl32): (JSC::MacroAssembler::jle32): (JSC::MacroAssembler::jne32): (JSC::MacroAssembler::jump): (JSC::MacroAssembler::breakpoint): (JSC::MacroAssembler::ret):
  • assembler/X86Assembler.h: (JSC::X86Assembler::cmpw_rm):
  • interpreter/Interpreter.cpp: (JSC::Interpreter::Interpreter):
  • interpreter/Interpreter.h: (JSC::Interpreter::assemblerBuffer):
  • runtime/RegExp.cpp: (JSC::RegExp::RegExp):
  • wrec/WREC.cpp: (JSC::WREC::Generator::compileRegExp):
  • wrec/WREC.h:
  • wrec/WRECFunctors.cpp: (JSC::WREC::GeneratePatternCharacterFunctor::generateAtom): (JSC::WREC::GenerateCharacterClassFunctor::generateAtom): (JSC::WREC::GenerateBackreferenceFunctor::generateAtom): (JSC::WREC::GenerateParenthesesNonGreedyFunctor::generateAtom):
  • wrec/WRECFunctors.h: (JSC::WREC::GenerateParenthesesNonGreedyFunctor::GenerateParenthesesNonGreedyFunctor):
  • wrec/WRECGenerator.cpp: (JSC::WREC::Generator::generateEnter): (JSC::WREC::Generator::generateReturnSuccess): (JSC::WREC::Generator::generateSaveIndex): (JSC::WREC::Generator::generateIncrementIndex): (JSC::WREC::Generator::generateLoadCharacter): (JSC::WREC::Generator::generateJumpIfEndOfInput): (JSC::WREC::Generator::generateJumpIfNotEndOfInput): (JSC::WREC::Generator::generateReturnFailure): (JSC::WREC::Generator::generateBacktrack1): (JSC::WREC::Generator::generateBacktrackBackreference): (JSC::WREC::Generator::generateBackreferenceQuantifier): (JSC::WREC::Generator::generateNonGreedyQuantifier): (JSC::WREC::Generator::generateGreedyQuantifier): (JSC::WREC::Generator::generatePatternCharacter): (JSC::WREC::Generator::generateCharacterClassInvertedRange): (JSC::WREC::Generator::generateCharacterClassInverted): (JSC::WREC::Generator::generateCharacterClass): (JSC::WREC::Generator::generateParentheses): (JSC::WREC::Generator::generateParenthesesNonGreedy): (JSC::WREC::Generator::generateParenthesesResetTrampoline): (JSC::WREC::Generator::generateAssertionBOL): (JSC::WREC::Generator::generateAssertionEOL): (JSC::WREC::Generator::generateAssertionWordBoundary): (JSC::WREC::Generator::generateBackreference): (JSC::WREC::Generator::terminateAlternative): (JSC::WREC::Generator::terminateDisjunction):
  • wrec/WRECGenerator.h: (JSC::WREC::Generator::Generator):
  • wrec/WRECParser.cpp: (JSC::WREC::Parser::parsePatternCharacterQualifier): (JSC::WREC::Parser::parseCharacterClassQuantifier): (JSC::WREC::Parser::parseBackreferenceQuantifier): (JSC::WREC::Parser::parseParentheses): (JSC::WREC::Parser::parseCharacterClass): (JSC::WREC::Parser::parseOctalEscape): (JSC::WREC::Parser::parseEscape): (JSC::WREC::Parser::parseTerm): (JSC::WREC::Parser::parseDisjunction):
  • wrec/WRECParser.h: (JSC::WREC::Parser::Parser): (JSC::WREC::Parser::parsePattern): (JSC::WREC::Parser::parseAlternative):
  • wtf/Platform.h:
Note: See TracTimeline for information about the timeline view.