⚠ Archived content — this site is no longer maintained.   Current WebKit documentation is at docs.webkit.org.

Timeline



Jun 4, 2008:

10:36 PM Changeset in webkit [34372] by weinig@apple.com
  • 32 edits in trunk/JavaScriptCore

2008-06-04 Sam Weinig <sam@webkit.org>

Reviewed by Maciej Stachowiak.

Big cleanup of formatting and whitespace.

9:39 PM Changeset in webkit [34371] by cwzwarich@webkit.org
  • 6 edits in trunk

2008-06-04 Cameron Zwarich <cwzwarich@uwaterloo.ca>

Reviewed by Oliver.

Add an option to dump statistics on executed instructions.

JavaScriptCore:

  • VM/Machine.cpp: (KJS::Machine::privateExecute):
  • VM/Opcode.cpp: (KJS::): (KJS::OpcodeStats::~OpcodeStats): (KJS::OpcodeStats::recordInstruction):
  • VM/Opcode.h:

WebKitTools:

  • Scripts/check-for-global-initializers:
6:03 PM Changeset in webkit [34370] by andersca@apple.com
  • 5 edits in trunk/WebCore

2008-06-04 Anders Carlsson <andersca@apple.com>

Reviewed by Mitz.

Get rid of DeprecatedPtrList from StyleSheetList.


  • css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::CSSStyleSelector):
  • css/StyleSheetList.cpp: (WebCore::StyleSheetList::~StyleSheetList): (WebCore::StyleSheetList::length): (WebCore::StyleSheetList::item):
  • css/StyleSheetList.h: (WebCore::StyleSheetList::swap):
  • dom/Document.cpp: (WebCore::Document::recalcStyleSelector):
5:31 PM Changeset in webkit [34369] by andersca@apple.com
  • 17 edits in trunk/WebCore

2008-06-04 Anders Carlsson <andersca@apple.com>

Reviewed by Darin.

Convert more classes over to start out with a ref count of 1.


  • css/CSSImageGeneratorValue.cpp: (WebCore::CSSImageGeneratorValue::generatedImage):
  • css/CSSImageValue.cpp: (WebCore::CSSImageValue::cachedImage):
  • css/CSSMediaRule.cpp: (WebCore::CSSMediaRule::CSSMediaRule):
  • css/CSSParser.cpp: (WebCore::CSSParser::parseValue): (WebCore::CSSParser::parseFillSize): (WebCore::CSSParser::parseCounter): (WebCore::CSSParser::createRuleList):
  • css/CSSRuleList.cpp: (WebCore::CSSRuleList::CSSRuleList):
  • css/CSSRuleList.h: (WebCore::CSSRuleList::create):
  • css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::matchRules): (WebCore::CSSStyleSelector::styleRulesForElement):
  • css/CSSStyleSelector.h:
  • css/CSSStyleSheet.cpp: (WebCore::CSSStyleSheet::cssRules): (WebCore::CSSStyleSheet::addSubresourceURLStrings):
  • css/CSSStyleSheet.h: (WebCore::CSSStyleSheet::rules):
  • css/Pair.h: (WebCore::Pair::create): (WebCore::Pair::Pair):
  • html/HTMLMediaElement.cpp: (WebCore::HTMLMediaElement::buffered): (WebCore::HTMLMediaElement::played): (WebCore::HTMLMediaElement::seekable):
  • html/TimeRanges.cpp: (TimeRanges::TimeRanges):
  • html/TimeRanges.h: (WebCore::TimeRanges::create): (WebCore::TimeRanges::TimeRanges):
  • rendering/style/RenderStyle.cpp: (WebCore::RenderStyle::addCursor): (WebCore::RenderStyle::clearCursorList):
  • rendering/style/RenderStyle.h: (WebCore::StyleImage::~StyleImage): (WebCore::StyleImage::StyleImage): (WebCore::StyleCachedImage::create): (WebCore::StyleCachedImage::StyleCachedImage): (WebCore::StyleGeneratedImage::create): (WebCore::StyleGeneratedImage::StyleGeneratedImage): (WebCore::CursorList::create): (WebCore::CursorList::CursorList):
4:45 PM Changeset in webkit [34368] by Chris Fleizach
  • 2 edits in trunk/WebCore

<rdar://problem/5983804> Editable web areas do not properly report the AXFocused attribute

3:04 PM Changeset in webkit [34367] by Beth Dakin
  • 2 edits in trunk/WebCore

2008-06-03 Beth Dakin <Beth Dakin>

Reviewed by Adele.

Fix for https://bugs.webkit.org/show_bug.cgi?id=19381 WebKit
Crashing Constantly on Gmail with accessibility turned on

There was a missing null-check!

  • page/AccessibilityRenderObject.cpp: (WebCore::AccessibilityRenderObject::roleValue):
2:12 PM Changeset in webkit [34366] by andersca@apple.com
  • 21 edits in trunk/WebCore

2008-06-04 Anders Carlsson <andersca@apple.com>

Reviewed by Sam.

Convert more classes to start with a ref count of 1.


  • bindings/js/JSCustomVoidCallback.cpp: (WebCore::toVoidCallback):
  • bindings/js/JSCustomVoidCallback.h: (WebCore::JSCustomVoidCallback::create):
  • css/StyleSheetList.cpp: (WebCore::StyleSheetList::StyleSheetList):
  • css/StyleSheetList.h: (WebCore::StyleSheetList::create):
  • dom/Document.cpp: (WebCore::Document::Document): (WebCore::Document::createNodeIterator): (WebCore::Document::createTreeWalker):
  • dom/NodeIterator.h: (WebCore::NodeIterator::create):
  • dom/Traversal.cpp: (WebCore::Traversal::Traversal):
  • dom/Traversal.h:
  • dom/TreeWalker.h: (WebCore::TreeWalker::create):
  • history/CachedPage.cpp: (WebCore::CachedPage::create): (WebCore::CachedPage::CachedPage):
  • html/CanvasGradient.cpp: (WebCore::CanvasGradient::CanvasGradient):
  • html/CanvasGradient.h: (WebCore::CanvasGradient::create):
  • html/CanvasRenderingContext2D.cpp: (WebCore::CanvasRenderingContext2D::CanvasRenderingContext2D): (WebCore::CanvasRenderingContext2D::createLinearGradient): (WebCore::CanvasRenderingContext2D::createRadialGradient):
  • html/CanvasRenderingContext2D.h: (WebCore::CanvasRenderingContext2D::create):
  • html/HTMLCanvasElement.cpp: (WebCore::HTMLCanvasElement::getContext):
  • html/VoidCallback.h: (WebCore::VoidCallback::VoidCallback):
  • loader/FormState.cpp: (WebCore::FormState::create): (WebCore::FormState::FormState):
  • platform/text/RegularExpression.cpp: (WebCore::RegularExpression::Private::create): (WebCore::RegularExpression::Private::Private): (WebCore::RegularExpression::RegularExpression):
  • storage/SQLResultSet.cpp: (WebCore::SQLResultSet::SQLResultSet):
  • storage/SQLResultSetRowList.h: (WebCore::SQLResultSetRowList::create): (WebCore::SQLResultSetRowList::SQLResultSetRowList):
1:47 PM Changeset in webkit [34365] by mitz@apple.com
  • 3 edits
    2 adds in trunk

WebCore:

Reviewed by Dave Hyatt.

  • fix <rdar://problem/5962118> Crash in RenderBlock::calcColumnWidth()

Test: fast/multicol/gap-non-negative.html

LayoutTests:

Reviewed by Dave Hyatt.

  • test for <rdar://problem/5962118> Crash in RenderBlock::calcColumnWidth()
  • fast/multicol/gap-non-negative-expected.txt: Added.
  • fast/multicol/gap-non-negative.html: Added.
1:45 PM Changeset in webkit [34364] by mitz@apple.com
  • 3 edits
    4 adds in trunk

WebCore:

Reviewed by Dave Hyatt.

  • fix <rdar://problem/5962270> Crash in WebCore::RenderTableCell::computeAbsoluteRepaintRect()

Test: fast/reflections/table-cell.html

  • rendering/RenderTableCell.cpp: (WebCore::RenderTableCell::computeAbsoluteRepaintRect): Null-check parent(). (WebCore::RenderTableCell::absolutePosition): Ditto.

LayoutTests:

Reviewed by Dave Hyatt.

  • test for <rdar://problem/5962270> Crash in WebCore::RenderTableCell::computeAbsoluteRepaintRect()
  • fast/reflections/table-cell.html: Added.
  • platform/mac/fast/reflections/table-cell-expected.checksum: Added.
  • platform/mac/fast/reflections/table-cell-expected.png: Added.
  • platform/mac/fast/reflections/table-cell-expected.txt: Added.
1:00 PM Changeset in webkit [34363] by dino@apple.com
  • 1 edit
    2 adds in trunk/WebKitSite

Added index.html files to specification directories so
things are easier to find.

11:53 AM Changeset in webkit [34362] by kmccullough@apple.com
  • 6 edits in trunk/JavaScriptCore

2008-06-04 Kevin McCullough <kmccullough@apple.com>

Reviewed by Geoff.

<rdar://problem/5969992> JSProfiler: Remove the recursion limit in the
profiler.

  • This patch removes the use of recursion for the sort functions.
  • JavaScriptCore.exp: Change the signatures of the functions being exported.
  • profiler/Profile.cpp: (KJS::Profile::sort): This generic function will accept any of the static sort functions and apply them to the whole tree.
  • profiler/Profile.h: All of the sorting functions now call the new sort() function. (KJS::Profile::sortTotalTimeDescending): (KJS::Profile::sortTotalTimeAscending): (KJS::Profile::sortSelfTimeDescending): (KJS::Profile::sortSelfTimeAscending): (KJS::Profile::sortCallsDescending): (KJS::Profile::sortCallsAscending): (KJS::Profile::sortFunctionNameDescending): (KJS::Profile::sortFunctionNameAscending):
  • profiler/ProfileNode.cpp: (KJS::ProfileNode::ProfileNode): m_head used to point to the head node if this was the head node. It now points to null to make iteration easy (KJS::ProfileNode::willExecute): Now must check if m_head is null, this check used to happend in the constructor. (KJS::ProfileNode::stopProfiling): Again the check is slightly different to determine if this is the head. (KJS::ProfileNode::traverseNextNode): This function returns the next node in post order. (KJS::ProfileNode::sort): This generic function will sort according to the comparator passed in, then reset the children pointers to macth the new order.
  • profiler/ProfileNode.h: The sorting function were removed from the definition file and instead use the new generic sort() function (KJS::ProfileNode::totalPercent): because the head can now be empty we need to check here too for the head node. (KJS::ProfileNode::selfPercent): Ditto (KJS::ProfileNode::firstChild): This function is necessary for the iterative algorithm in Profile.cpp. (KJS::ProfileNode::sortTotalTimeDescending): (KJS::ProfileNode::sortTotalTimeAscending): (KJS::ProfileNode::sortSelfTimeDescending): (KJS::ProfileNode::sortSelfTimeAscending): (KJS::ProfileNode::sortCallsDescending): (KJS::ProfileNode::sortCallsAscending): (KJS::ProfileNode::sortFunctionNameDescending): (KJS::ProfileNode::sortFunctionNameAscending): (KJS::ProfileNode::childrenBegin): (KJS::ProfileNode::childrenEnd): (KJS::ProfileNode::totalTimeDescendingComparator): (KJS::ProfileNode::totalTimeAscendingComparator): (KJS::ProfileNode::selfTimeDescendingComparator): (KJS::ProfileNode::selfTimeAscendingComparator): (KJS::ProfileNode::callsDescendingComparator): (KJS::ProfileNode::callsAscendingComparator): (KJS::ProfileNode::functionNameDescendingComparator): (KJS::ProfileNode::functionNameAscendingComparator):
11:10 AM Changeset in webkit [34361] by ap@webkit.org
  • 11 edits
    2 deletes in trunk

Reviewed by Darin.

Fix JSClassCreate to work with old JSCore API threading model.

No change on SunSpider.

  • API/JSClassRef.cpp: (OpaqueJSClass::OpaqueJSClass): Since JSClass is constructed without a context, there is no way for it to create Identifiers. Also, added initializeThreading(), just for good measure.
  • API/JSCallbackObjectFunctions.h: (KJS::::getPropertyNames): Make an Identifier out of the string here, because propertyNames.add() needs that.
  • kjs/identifier.cpp:
  • kjs/identifier.h: (KJS::Identifier::equal):
  • kjs/ustring.cpp: (KJS::equal): Moved equal() from identifier.h to ustring.h, because it's not really about Identifiers, and to make it possible to use it from StrHash. Include StrHash.h from ustring.h to avoid having the behavior depend on headers that happen to be included.
  • wtf/StrHash.h: Removed.
  • kjs/ustring.h: Made RefPtr<UString::Rep> use the same default hash as UString::Rep* (it used to default to pointer equality). Moved the whole StrHash header into ustring.h.
  • JavaScriptCore.exp: Export equal() for WebCore use (this StrHash is used in c_class.cpp, jni_class.cpp, and npruntime.cpp).
9:29 AM Changeset in webkit [34360] by ap@webkit.org
  • 3 edits in trunk/JavaScriptCore

Rubber-stamped by Darin.

Fix spacing in collector.{h,cpp}.

  • kjs/collector.cpp:
  • kjs/collector.h:
6:40 AM Changeset in webkit [34359] by Simon Hausmann
  • 2 edits in trunk/WebKit/qt

2008-06-04 Tor Arne Vestbø <tavestbo@trolltech.com>

Reviewed by Simon.

Fix a failing assertion when calling QWebFrame::evaluateJavaScript.

The starting line number has to be 1 instead of 0.

Jun 3, 2008:

7:57 PM Changeset in webkit [34358] by Antti Koivisto
  • 6 edits
    2 adds in trunk

WebCore:

2008-06-03 Antti Koivisto <Antti Koivisto>

Reviewed by Darin.


https://bugs.webkit.org/show_bug.cgi?id=19384
Implement path morphing for SVG animation


You can animate smoothly between paths that have equal number of control points of matching type.

Test: svg/custom/animate-path-morphing.svg

  • svg/SVGAnimateElement.cpp: (WebCore::SVGAnimateElement::determinePropertyType): (WebCore::SVGAnimateElement::calculateAnimatedValue): (WebCore::SVGAnimateElement::calculateFromAndToValues): (WebCore::SVGAnimateElement::resetToBaseValue): (WebCore::SVGAnimateElement::applyResultsToTarget):
  • svg/SVGAnimateElement.h: (WebCore::SVGAnimateElement::):
  • svg/SVGPathSegList.cpp: (WebCore::blendFunc): (WebCore::SVGPathSegList::createAnimated):
  • svg/SVGPathSegList.h:

LayoutTests:

2008-06-03 Antti Koivisto <Antti Koivisto>

Reviewed by Darin.


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


Test for path morphing.

  • platform/mac/svg/custom/animate-path-morphing-expected.txt: Added.
  • svg/custom/animate-path-morphing.svg: Added.
7:09 PM Changeset in webkit [34357] by Darin Adler
  • 3 edits in trunk/WebCore

2008-06-03 Darin Adler <Darin Adler>

  • try to fix the Qt build
  • bridge/qt/qt_runtime.cpp: (KJS::Bindings::QtRuntimeMetaMethod::lengthGetter): Remove the originalObject argument. (KJS::Bindings::QtRuntimeMetaMethod::connectGetter): Ditto. (KJS::Bindings::QtRuntimeMetaMethod::disconnectGetter): Ditto. (KJS::Bindings::QtRuntimeConnectionMethod::lengthGetter): Ditto. (KJS::Bindings::QtConnectionObject::execute): Use callAsFunction.
  • bridge/qt/qt_runtime.h: More of the same.
6:03 PM Changeset in webkit [34356] by cwzwarich@webkit.org
  • 3 edits in trunk/JavaScriptCore

2008-06-03 Cameron Zwarich <cwzwarich@uwaterloo.ca>

Reviewed by Maciej.

Build fix. The cleanup in r34355 missed a method.

  • kjs/nodes.cpp:
  • kjs/nodes.h:
5:40 PM Changeset in webkit [34355] by Darin Adler
  • 71 edits in trunk

JavaScriptCore:

2008-06-03 Darin Adler <Darin Adler>

Reviewed by Geoff.

Makes standalone SunSpider 1.025x as fast as before.

The getOwnPropertySlot virtual function now takes care of the toObject call
for get. Similarly, the put function (and later deleteProperty) does the
same for those operations. To do this, the virtual functions were moved from
the JSObject class to the JSCell class. Also, since the caller no longer knows
the identity of the "original object", which is used by JavaScript-function
based getters, changed the PropertySlot class so the original object is
already stored in the slot when getOwnPropertySlot is called, if the caller
intends to call getValue.

This affected the old interpreter code enough that the easiest thing for me
was to just delete it. While I am not certain the mysterious slowdown is not
still occurring, the net change is definitely a significant speedup.

  • VM/Machine.cpp: Moved the UNLIKELY macro into AlwaysInline.h. (KJS::resolve): Set up the originalObject in the PropertySlot before calling getPropertySlot. Also removed the originalObject argument from getValue. (KJS::resolve_skip): Ditto. (KJS::resolveBaseAndProperty): Ditto. (KJS::resolveBaseAndFunc): Ditto. (KJS::Machine::privateExecute): Removed the toObject calls from the get and put functions where possible, instead calling directly with JSValue and letting the JSValue and JSCell calls handle toObject. Same for toThisObject.
  • kjs/ExecState.h: Removed OldInterpreterExecState.
  • API/JSBase.cpp: Updated includes.
  • kjs/LocalStorageEntry.h: Removed contents. Later we can remove the file too.
  • kjs/array_instance.cpp: (KJS::ArrayInstance::lengthGetter): Removed originalObject argumet. (KJS::ArrayInstance::inlineGetOwnPropertySlot): Don't pass a base value to setValueSlot. Also use UNLIKELY around the "getting elements past the end of the array" code path; less common than successfully getting an element.
  • kjs/array_object.cpp: (KJS::getProperty): Initialize the PropertySlot with the original object. Don't pass the original object to the get function. (KJS::arrayProtoFuncFilter): Ditto. (KJS::arrayProtoFuncMap): Ditto. (KJS::arrayProtoFuncEvery): Ditto. (KJS::arrayProtoFuncForEach): Ditto. (KJS::arrayProtoFuncSome): Ditto.
  • kjs/function_object.cpp: (KJS::FunctionObjectImp::construct): Removed an obsolete comment.
  • kjs/grammar.y: Eliminated support for some of the node types that were used to optimize executing from the syntax tree.
  • kjs/internal.cpp: (KJS::StringImp::toThisObject): Added. Same as toObject. (KJS::NumberImp::toThisObject): Ditto. (KJS::GetterSetterImp::getOwnPropertySlot): Added. Not reached. (KJS::GetterSetterImp::put): Ditto. (KJS::GetterSetterImp::toThisObject): Ditto.
  • kjs/internal.h: Added toThisObject to NumberImp for speed.
  • kjs/lexer.cpp: (KJS::Lexer::shift): Changed shift to just do a single character, to unroll the loop and especially to make the one character case faster. (KJS::Lexer::setCode): Call shift multiple times instead of passing a number. (KJS::Lexer::lex): Ditto. (KJS::Lexer::matchPunctuator): Ditto. Also removed unneeded elses after returns. (KJS::Lexer::scanRegExp): Ditto.
  • kjs/lexer.h: Removed the count argument from shift.
  • kjs/math_object.cpp: (KJS::mathProtoFuncPow): Call jsNaN instead of jsNumber(NaN).
  • kjs/nodes.cpp: Removed some of the things needed only for the pre-SquirrelFish execution model. (KJS::ForNode::emitCode): Handle cases where some expressions are missing by not emitting any code at all. The old way was to emit code for "true", but this is an unnecessary remnant of the old way of doing things.
  • kjs/nodes.h: Removed some of the things needed only for the pre-SquirrelFish execution model.
  • kjs/object.cpp: (KJS::JSObject::fillGetterPropertySlot): Changed to only pass in the getter function. The old code passed in a base, but it was never used when actually getting the property; the toThisObject call was pointless. Also changed to not pass a base for setUndefined.
  • kjs/object.h: Added the new JSCell operations to GetterSetterImp. Never called. (KJS::JSObject::get): Initialize the object in the PropertySlot and don't pass it in getValue. (KJS::JSObject::getOwnPropertySlotForWrite): Removed the base argument in calls to setValueSlot. (KJS::JSObject::getOwnPropertySlot): Ditto. (KJS::JSValue::get): Added. Here because it calls through to JSObject. A version of JSObject::get that also handles the other types of JSValue by creating the appropriate wrapper. Saves the virtual call to toObject. (KJS::JSValue::put): Ditto. (KJS::JSValue::deleteProperty): Ditto.
  • kjs/property_slot.cpp: (KJS::PropertySlot::undefinedGetter): Removed the originalObject argument. (KJS::PropertySlot::ungettableGetter): Ditto. (KJS::PropertySlot::functionGetter): Ditto. Use the value in the base as the "this" object, which will be set to the original object by the new PropertySlot initialization code. Also call toThisObject. The old code did not do this, but needed to so we can properly handle the activation object like the other similar code paths.
  • kjs/property_slot.h: (KJS::PropertySlot::PropertySlot): Added a constructor that takes a base object. In debug builds, set the base to 0 if you don't pass one. (KJS::PropertySlot::getValue): Don't take or pass the originalObject. (KJS::PropertySlot::setValueSlot): Don't take a base object, and clear the base object in debug builds. (KJS::PropertySlot::setGetterSlot): Ditto. (KJS::PropertySlot::setUndefined): Ditto. (KJS::PropertySlot::setUngettable): Ditto. (KJS::PropertySlot::slotBase): Assert that a base object is present. This will fire if someone actually calls the get function without having passed in a base object and the getter needs it. (KJS::PropertySlot::setBase): Added. Used by the code that implements toObject so it can supply the original object after the fact. (KJS::PropertySlot::clearBase): Added. Clears the base, but is debug-only code because it's an error to fetch the base if you don't have a guarantee it was set.
  • API/JSCallbackObject.h:
  • API/JSCallbackObjectFunctions.h: (KJS::JSCallbackObject::cachedValueGetter): (KJS::JSCallbackObject::staticValueGetter): (KJS::JSCallbackObject::staticFunctionGetter): (KJS::JSCallbackObject::callbackGetter):
  • kjs/JSActivation.cpp: (KJS::JSActivation::getOwnPropertySlot): (KJS::JSActivation::argumentsGetter):
  • kjs/JSActivation.h:
  • kjs/JSVariableObject.h: (KJS::JSVariableObject::symbolTableGet):
  • kjs/array_instance.h:
  • kjs/function.cpp: (KJS::FunctionImp::argumentsGetter): (KJS::FunctionImp::callerGetter): (KJS::FunctionImp::lengthGetter): (KJS::Arguments::mappedIndexGetter):
  • kjs/function.h:
  • kjs/lookup.h: (KJS::staticFunctionGetter): (KJS::staticValueGetter):
  • kjs/string_object.cpp: (KJS::StringInstance::lengthGetter): (KJS::StringInstance::indexGetter): (KJS::stringInstanceNumericPropertyGetter):
  • kjs/string_object.h: Removed originalObject arguments from getters. Don't pass base values to the various PropertySlot functions that no longer take them.
  • kjs/value.cpp: (KJS::JSCell::getOwnPropertySlot): Added. Calls toObject and then sets the slot. This function has to always return true, because the caller can't walk the prototype chain. Because of that, we do a getPropertySlot, not getOwnPropertySlot, which works for the caller. This is private, only called by getOwnPropertySlotInternal. (KJS::JSCell::put): Added. Calls toObject and then put. (KJS::JSCell::toThisObject): Added. Calls toObject.
  • kjs/value.h: Added get, put, and toThisObject to both JSValue and JSCell. These take care of the toObject operation without an additional virtual function call, and so make the common "already an object" case faster.
  • wtf/AlwaysInline.h: Moved the UNLIKELY macro here for now. Maybe we can find a better place later, or rename this header.

JavaScriptGlue:

2008-06-03 Darin Adler <Darin Adler>

  • UserObjectImp.cpp: (UserObjectImp::userObjectGetter): Removed originalObject argument.
  • UserObjectImp.h: Ditto.

WebCore:

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

Reviewed by John.

<rdar://problem/5763082> GMail: Hang when removing indent from nested list
<rdar://problem/5775449> In Gmail and GoogleDocs, a hang occurs when I attempt to apply a list style to a large selection of text
<rdar://problem/5937624> 9D32: Hang in Safari. Using 100% of processor

  • editing/InsertListCommand.cpp: (WebCore::InsertListCommand::modifyRange): doApply() may operate on and remove the last paragraph of the selection from the document if it's in the same list item as startOfCurrentParagraph. Return early to avoid an infinite loop and because there is no more work to be done. Added a FIXME (<rdar://problem/5983974>) about the incorrect endingSelection()s.
5:36 PM Changeset in webkit [34354] by justin.garcia@apple.com
  • 3 edits
    2 adds in trunk

WebCore:

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

Reviewed by John.

<rdar://problem/5763082> GMail: Hang when removing indent from nested list
<rdar://problem/5775449> In Gmail and GoogleDocs, a hang occurs when I attempt to apply a list style to a large selection of text
<rdar://problem/5937624> 9D32: Hang in Safari. Using 100% of processor

  • editing/InsertListCommand.cpp: (WebCore::InsertListCommand::modifyRange): doApply() may operate on and remove the last paragraph of the selection from the document if it's in the same list item as startOfCurrentParagraph. Return early to avoid an infinite loop and because there is no more work to be done. Added a FIXME (<rdar://problem/5983974>) about the incorrect endingSelection()s.

LayoutTests:

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

Reviewed by John.


<rdar://problem/5763082> GMail: Hang when removing indent from nested list

  • editing/execCommand/5763082-expected.txt: Added.
  • editing/execCommand/5763082.html: Added.
3:53 PM Changeset in webkit [34353] by mrowe@apple.com
  • 4 edits in tags/Safari-6526.9.1

Versioning.

3:52 PM Changeset in webkit [34352] by mrowe@apple.com
  • 2 edits in tags/Safari-6526.9.1/WebKit/mac

Merge r34347.

3:48 PM Changeset in webkit [34351] by oliver@apple.com
  • 15 edits in trunk

Bug 12983: Web Inspector break on the debugger keyword
<https://bugs.webkit.org/show_bug.cgi?id=12983>

Reviewed by Tim

Added a DebuggerStatementNode to handle codegen, and added a new
DidReachBreakPoint debug event (which will hopefully be useful
if we ever move breakpoint management into JSC proper). Also
added didReachBreakpoint to Debugger to allow us to actually respond
to this event.

3:46 PM Changeset in webkit [34350] by mrowe@apple.com
  • 1 copy in tags/Safari-6526.9.1

New tag.

2:43 PM Changeset in webkit [34349] by Darin Adler
  • 2 edits in trunk/WebCore

2008-06-03 Darin Adler <Darin Adler>

Fix build with GCC.

  • page/AccessibilityRenderObject.cpp: (WebCore::AccessibilityRenderObject::ariaRoleHasPresentationalChildren): Put a default case back in the switch statement so we don't get warned about all the unhandled cases with GCC. Remove the unreachable code that was causing a warning in Visual Studio.
2:01 PM Changeset in webkit [34348] by Darin Adler
  • 2 edits in trunk/WebKit/qt

2008-06-03 Jonathon Jongsma <jonathon.jongsma@collabora.co.uk>

Reviewed by Darin.

  • Api/qwebhistoryinterface.cpp: Remove WebCore::historyContains(). This function is not used anywhere internally and is only a convenience function that can still be accomplished using QWebHistoryInterface::historyContains();
12:25 PM Changeset in webkit [34347] by andersca@apple.com
  • 2 edits in trunk/WebKit/mac

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

Reviewed by Darin.

<rdar://problem/5980961>


In 64-bit Web Kit, converting between float and double, can cause rounding errors which in turn causes
newBottom to be larger than oldBottom which is illegal.


  • WebView/WebHTMLView.mm: (-[WebHTMLView adjustPageHeightNew:top:bottom:limit:]):
11:46 AM Changeset in webkit [34346] by sfalken@apple.com
  • 10 edits in trunk

2008-05-30 Steve Falkenburg <sfalken@apple.com>

Registry-free COM.


WebKit no longer requires COM registration.
Registry-free COM information is read from the application manifest.

Only 1 set of CLSIDs are now used, since we don't need to worry about registry collisions.
The second set remains, but only temporarily so nightlies continue to work.

This is supported for XPSP2 and later. Earlier systems require an installer
to write the required registry keys. Nightlies and developer builds require
XPSP2, Server 2003, or later.

Reviewed by Adam.

  • ForEachCoClass.cpp: Moved COM registration code here from WebKitDLL.cpp. This is ONLY used in the nightly case. (substituteGUID): Moved here from WebKitDLL.cpp. (registerWebKit): Moved here from WebKitDLL.cpp. (setUseOpenSourceWebKit): Call registerWebKit instead of swapping progids. There is only 1 set of progids now - for the nightly.
  • ForEachCoClass.h: Removed production progids.
  • Interfaces/WebKit.idl: Added prototype for shutDownWebKit.
  • WebKit.vcproj/Interfaces.vcproj: Changed path to type library to move it out of project directory.
  • WebKit.vcproj/WebKit.vcproj: Changed path to type library to move it out of project directory.
  • WebKitDLL.cpp: (DllUnregisterServer): Does nothing. Entry point is still present for backward compatibility. (DllRegisterServer): Does nothing. Entry point is still present for backward compatibility. (RunAsLocalServer): Does nothing. Entry point is still present for backward compatibility. (shutDownWebKit): Moved from ForEachCoClass.
  • WebKitDLL.h:

2008-05-30 Steve Falkenburg <sfalken@apple.com>

Generate an isolated COM manifest for registry free COM.


  • DumpRenderTree/win/DumpRenderTree.vcproj:
11:29 AM Changeset in webkit [34345] by sfalken@apple.com
  • 2 edits in trunk/WebCore

Fix build.

10:12 AM Changeset in webkit [34344] by justin.garcia@apple.com
  • 4 edits in trunk/WebCore

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

Reviewed by John Sullivan.

<rdar://problem/5943515> SelectionController()->modify Backward/Forward with LineGranularity sometimes don't work


next/previousLinePosition didn't work if the input position was the last line in its
block. The code for handling such a position assumed that the input position was
editable, and that the position to be returned needed to also be editable. Changed
this code to just maintain the same editability.


No test case for now because we haven't enabled selection extension operations for
non-editable selections. I enabled them temporarily to test the fix, however.

  • dom/Node.cpp: Removed the now unused nextEditable(int).
  • dom/Node.h:
  • editing/visible_units.cpp: (WebCore::previousLeafWithSameEditability): Added. Like previousEditable but just returns a node of the same editability. (WebCore::previousLinePosition): Call previousLeaf instead of previousEditable. (WebCore::nextLeafWithSameEditability): Added. (WebCore::nextLinePosition): Same as above.
10:07 AM Changeset in webkit [34343] by andersca@apple.com
  • 4 edits
    4 adds in trunk

WebCore:

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

Reviewed by John and Sam.

<rdar://problem/5955218>
Assertion failure in ApplicationCacheGroup::addEntry when reloading a page with a cache manifest (19182)


  • loader/appcache/ApplicationCacheGroup.h: (WebCore::ApplicationCacheGroup::hasNewestCache): Add new accessor.


  • loader/appcache/ApplicationCacheStorage.cpp: (WebCore::ApplicationCacheStorage::cacheGroupDestroyed): Don't call newestCache since it will always be null. Instead, call hasNewestCache which returns the saved newest cache pointer.

LayoutTests:

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

Reviewed by John and Sam.

<rdar://problem/5955218>
Assertion failure in ApplicationCacheGroup::addEntry when reloading a page with a cache manifest (19182)

  • http/tests/appcache/crash-when-navigating-away-then-back-expected.txt: Added.
  • http/tests/appcache/crash-when-navigating-away-then-back.html: Added.
  • http/tests/appcache/resources/crash-when-navigating-away-then-back.html: Added.
  • http/tests/appcache/resources/crash-when-navigating-away-then-back.manifest: Added.
8:56 AM Changeset in webkit [34342] by ap@webkit.org
  • 2 edits in trunk/SunSpider

Rubber-stamped by Mark Rowe.

Roll out r31215 - with Mac OS X 10.5.3, there is no need to pause update daemon any more.

  • sunspider:
8:29 AM Changeset in webkit [34341] by mitz@apple.com
  • 6 edits
    4 adds in trunk

WebCore:

Reviewed by Dave Hyatt.

  • fix <rdar://problem/5965410> In fixed table layout, the width of cells with auto width should be proportional to their column span, to match Firefox and IE.

Test: fast/table/fixed-with-auto-with-colspan.html

  • rendering/FixedTableLayout.cpp: (WebCore::FixedTableLayout::layout):

LayoutTests:

Reviewed by Dave Hyatt.

  • test and updated results for <rdar://problem/5965410> In fixed table layout, the width of cells with auto width should be proportional to their column span, to match Firefox and IE.
  • fast/table/fixed-with-auto-with-colspan.html: Added.
  • platform/mac/fast/table/fixed-with-auto-with-colspan-expected.checksum: Added.
  • platform/mac/fast/table/fixed-with-auto-with-colspan-expected.png: Added.
  • platform/mac/fast/table/fixed-with-auto-with-colspan-expected.txt: Added.
  • platform/mac/tables/mozilla_expected_failures/bugs/bug220653-expected.checksum:
  • platform/mac/tables/mozilla_expected_failures/bugs/bug220653-expected.png:
  • platform/mac/tables/mozilla_expected_failures/bugs/bug220653-expected.txt:
2:01 AM Changeset in webkit [34340] by alp@webkit.org
  • 2 edits in trunk/WebCore

2008-06-03 Alp Toker <alp@nuanti.com>

Rubber-stamped by Alexey.

Remove GenerateNativeConverter added in r34331 to fix JS regressions.
(JSTextCustom.cpp added in r34141 is now unused in any code path.)

  • dom/Text.idl:
1:47 AM Changeset in webkit [34339] by mjs@apple.com
  • 1 edit
    1 add in trunk/WebKitSite

2008-06-03 Maciej Stachowiak <mjs@apple.com>

Add a snapshot of the squirrelfish bytecode docs.

  • specs/squirrelfish-bytecode.html: Added.
1:44 AM Changeset in webkit [34338] by mjs@apple.com
  • 2 edits in trunk/JavaScriptCore

2008-06-03 Maciej Stachowiak <mjs@apple.com>

Reviewed by Oliver.


  • document remaining opcodes.
  • VM/Machine.cpp: (KJS::Machine::privateExecute): Document call, call_eval, construct, ret and end opcodes.
1:42 AM Changeset in webkit [34337] by ap@webkit.org
  • 2 edits in trunk/LayoutTests

<rdar://problem/5621979> editing/selection/5241148.html crashes on Windows

Try removing it from the Skipped list, as this is not reproducible with current closed
source libraries.

  • platform/win/Skipped:
12:56 AM Changeset in webkit [34336] by ap@webkit.org
  • 2 edits in trunk/WebCore

2008-06-03 Alexander Vassilev <avasilev@voipgate.com>

Reviewed, tweaked and landed by Alexey.

https://bugs.webkit.org/show_bug.cgi?id=19363
Compiler error in Entity.h

  • dom/Entity.h: (WebCore::Entity::Entity): Add a private constructor to shut down the errors.
12:46 AM Changeset in webkit [34335] by mjs@apple.com
  • 2 edits in trunk/JavaScriptCore

2008-06-03 Maciej Stachowiak <mjs@apple.com>

Reviewed by Oliver.

  • VM/Machine.cpp: (KJS::Machine::privateExecute): Document throw and catch opcodes.
Note: See TracTimeline for information about the timeline view.