Timeline


and

03/17/08:

23:12 Changeset [31120] by timothy@apple.com
  • 2 edits in trunk/WebCore

2008-03-17 Timothy Hatcher <timothy@apple.com>

Reviewed by Mark Rowe.

Bug 17908: Various bugs in the Console completion code
http://bugs.webkit.org/show_bug.cgi?id=17908

  • page/inspector/ConsolePanel.js: (WebInspector.ConsolePanel.complete): Moved the code that checked for the caret being at the end of the prompt into the _caretAtEndOfPrompt helper function. (WebInspector.ConsolePanel.messagesSelectStart): Clear and redo the auto complete when the selection changes. (WebInspector.ConsolePanel._caretInsidePrompt): Fixed a logic error that always caused a false result. (WebInspector.ConsolePanel._caretAtEndOfPrompt): Added. Tests if the selection is a caret at the end of the prompt. (WebInspector.ConsolePanel._moveCaretToEndOfPrompt): Changed the offset to use the childNodes length. This makes sure the caret is at the end when there are multiple text nodes in the prompt.
22:36 Changeset [31119] by oliver@apple.com
  • 3 edits in trunk/JavaScriptCore

Optimise multi-scope function call resolution

Reviewed by Geoff

Refactor multiscope variable resolution and use to add
optimised FunctionCallResolveNode subclasses.

2.6% gain in sunspider performance, *25%* gain in controlflow-recursive

22:03 Changeset [31118] by eric@webkit.org
  • 2 edits in trunk/WebKitTools

Reviewed by Dan Bernstein.

Fix bogus argCount check breaking plugin test.

  • DumpRenderTree/TestNetscapePlugIn.subproj/PluginObject.cpp:
21:36 Changeset [31117] by mitz@apple.com
  • 4 edits in trunk/WebCore

2008-03-17 Dan Bernstein <mitz@apple.com>

Rubber-stamped by Dave Hyatt.

  • FloatingObject cleanup

Renamed FloatingObject's data members as follows: node -> m_renderer,
startY -> m_top, endY -> m_bottom, left -> m_left, width -> m_width,
and noPaint -> !m_shouldPaint, reversing the meaning of the flag.

Also addressed the FIXME in RenderBlock::containsFloat().

  • rendering/RenderBlock.cpp: (WebCore::RenderBlock::repaintOverhangingFloats): (WebCore::RenderBlock::paintFloats): (WebCore::RenderBlock::insertFloatingObject): (WebCore::RenderBlock::removeFloatingObject): (WebCore::RenderBlock::positionNewFloats): (WebCore::RenderBlock::leftRelOffset): (WebCore::RenderBlock::rightRelOffset): (WebCore::RenderBlock::nextFloatBottomBelow): (WebCore::RenderBlock::floatBottom): (WebCore::RenderBlock::floatRect): (WebCore::RenderBlock::lowestPosition): (WebCore::RenderBlock::rightmostPosition): (WebCore::RenderBlock::leftmostPosition): (WebCore::RenderBlock::leftBottom): (WebCore::RenderBlock::rightBottom): (WebCore::RenderBlock::clearFloats): (WebCore::RenderBlock::addOverhangingFloats): (WebCore::RenderBlock::addIntrudingFloats): (WebCore::RenderBlock::containsFloat): Changed to return false if the floats lists exists but is empty, since line layout code no longer relies on the buggy behavior. (WebCore::RenderBlock::nodeAtPoint): (WebCore::RenderBlock::adjustForBorderFit):
  • rendering/RenderBlock.h: (WebCore::RenderBlock::containsFloats): (WebCore::RenderBlock::FloatingObject::FloatingObject):
  • rendering/bidi.cpp: (WebCore::RenderBlock::layoutInlineChildren): (WebCore::RenderBlock::matchedEndLine):
21:04 Changeset [31116] by mitz@apple.com
  • 6 edits
    38 adds in trunk

WebCore:

2008-03-17 Dan Bernstein <mitz@apple.com>

Reviewed by Dave Hyatt.

  • allow incremental relayout of blocks that contain floats

Tests: fast/repaint/line-flow-with-floats-[1-9].html

  • rendering/RenderBlock.cpp: (WebCore::RenderBlock::clearFloatsIfNeeded): Cleaned up by moving most of the function body out of an if statement which was replaced with an early return. (WebCore::RenderBlock::insertFloatingObject): Cleaned up by moving most of the function body out of an if statement and moving the ASSERT, which is a crash in release builds, to the beginning. Made this function set the m_isDescendant flag of floating objects it creates. (WebCore::RenderBlock::removeFloatingObject): Added a call to markLinesDirtyInVerticalRange() when removing a float from a block with inline children. (WebCore::RenderBlock::markLinesDirtyInVerticalRange): Added. Marks the lines in the given range as dirty. (WebCore::RenderBlock::clearFloats): Added code to detect changes to the geometry of floats intruding into this block from other blocks and mark any lines whose available width has changed as a result as dirty.
  • rendering/RenderBlock.h: (WebCore::RenderBlock::FloatWithRect::FloatWithRect): Added a structure to cache a float with its position and size. (WebCore::RenderBlock::FloatingObject::FloatingObject): Added an m_isDescendant flag, used by clearFloats() to distinguish between floats entering the block from outside and floats internal to the block.
  • rendering/RootInlineBox.h: (WebCore::RootInlineBox::floats): Added. (WebCore::RootInlineBox::floatsPtr): Added. (WebCore::RootInlineBox::Overflow::Overflow): Added a data member to hold the floats originating on the line.
  • rendering/bidi.cpp: (WebCore::RenderBlock::layoutInlineChildren): Made the existence of floats not force a full layout. Changed to cache the geometry of floats in the block and detect changes to it. If a float's size or position changes, all lines from that point on are treated as dirty. An exception is a change in the dimensions of a float on an otherwise-clean line, which only dirties lines potentially affected by the change (see determineStartPosition()). Added code to update each RootInlineBox's set of floats as lines are laid out. Added code to shift floats belonging to clean lines in the end along with the lines. (WebCore::RenderBlock::determineStartPosition): Made this function look for changes to floats' dimensions and mark lines as dirty accordingly. Also look for new floats and if found, cause a full layout. Added code to re-add floats belonging to clean lines. (WebCore::RenderBlock::matchedEndLine): Added checking that the clean lines in the end can be shifted vertically as needed, i.e. that the available width along the way is uniform.

LayoutTests:

2008-03-17 Dan Bernstein <mitz@apple.com>

Reviewed by Dave Hyatt.

  • test incremental relayout of blocks that contain floats
  • fast/repaint/line-flow-with-floats-1.html: Added.
  • fast/repaint/line-flow-with-floats-2.html: Added.
  • fast/repaint/line-flow-with-floats-3.html: Added.
  • fast/repaint/line-flow-with-floats-4.html: Added.
  • fast/repaint/line-flow-with-floats-5.html: Added.
  • fast/repaint/line-flow-with-floats-6.html: Added.
  • fast/repaint/line-flow-with-floats-7.html: Added.
  • fast/repaint/line-flow-with-floats-8.html: Added.
  • fast/repaint/line-flow-with-floats-9.html: Added.
  • fast/repaint/resources/line-flow-with-floats.html: Added.
  • fast/repaint/resources/line-flow-with-floats.js: Added.
  • platform/mac/fast/repaint/line-flow-with-floats-1-expected.checksum: Added.
  • platform/mac/fast/repaint/line-flow-with-floats-1-expected.png: Added.
  • platform/mac/fast/repaint/line-flow-with-floats-1-expected.txt: Added.
  • platform/mac/fast/repaint/line-flow-with-floats-2-expected.checksum: Added.
  • platform/mac/fast/repaint/line-flow-with-floats-2-expected.png: Added.
  • platform/mac/fast/repaint/line-flow-with-floats-2-expected.txt: Added.
  • platform/mac/fast/repaint/line-flow-with-floats-3-expected.checksum: Added.
  • platform/mac/fast/repaint/line-flow-with-floats-3-expected.png: Added.
  • platform/mac/fast/repaint/line-flow-with-floats-3-expected.txt: Added.
  • platform/mac/fast/repaint/line-flow-with-floats-4-expected.checksum: Added.
  • platform/mac/fast/repaint/line-flow-with-floats-4-expected.png: Added.
  • platform/mac/fast/repaint/line-flow-with-floats-4-expected.txt: Added.
  • platform/mac/fast/repaint/line-flow-with-floats-5-expected.checksum: Added.
  • platform/mac/fast/repaint/line-flow-with-floats-5-expected.png: Added.
  • platform/mac/fast/repaint/line-flow-with-floats-5-expected.txt: Added.
  • platform/mac/fast/repaint/line-flow-with-floats-6-expected.checksum: Added.
  • platform/mac/fast/repaint/line-flow-with-floats-6-expected.png: Added.
  • platform/mac/fast/repaint/line-flow-with-floats-6-expected.txt: Added.
  • platform/mac/fast/repaint/line-flow-with-floats-7-expected.checksum: Added.
  • platform/mac/fast/repaint/line-flow-with-floats-7-expected.png: Added.
  • platform/mac/fast/repaint/line-flow-with-floats-7-expected.txt: Added.
  • platform/mac/fast/repaint/line-flow-with-floats-8-expected.checksum: Added.
  • platform/mac/fast/repaint/line-flow-with-floats-8-expected.png: Added.
  • platform/mac/fast/repaint/line-flow-with-floats-8-expected.txt: Added.
  • platform/mac/fast/repaint/line-flow-with-floats-9-expected.checksum: Added.
  • platform/mac/fast/repaint/line-flow-with-floats-9-expected.png: Added.
  • platform/mac/fast/repaint/line-flow-with-floats-9-expected.txt: Added.
19:36 Google Summer of Code 2008 edited by eric@webkit.org
(diff)
19:34 Google Summer of Code 2008 edited by eric@webkit.org
(diff)
19:33 Google Summer of Code 2008 edited by eric@webkit.org
(diff)
19:32 Google Summer of Code 2008 edited by eric@webkit.org
(diff)
19:32 Google Summer of Code 2008 edited by eric@webkit.org
(diff)
19:31 Google Summer of Code 2008 edited by eric@webkit.org
(diff)
18:54 Changeset [31115] by ddkilzer@apple.com
  • 2 edits in trunk/JavaScriptCore

Don't define PLATFORM(MIDDLE_ENDIAN) on little endian ARM.

Reviewed by Darin.

See <http://bugs.webkit.org/show_bug.cgi?id=15416#c13>.

  • wtf/Platform.h: Added check for !defined(ARMEL) when defining PLATFORM(MIDDLE_ENDIAN).
16:33 Changeset [31114] by oliver@apple.com
  • 11 edits in trunk/JavaScriptCore

Add fast multi-level scope lookup

Reviewed by Geoff, Darin and Weinig

Add logic and AST nodes to provide rapid variable resolution across
static scope boundaries. This also adds logic that allows us to skip
any static scopes that do not contain the variable to be resolved.

This results in a ~2.5% speedup in SunSpider, and gives a 25-30% speedup
in some simple and ad hoc closure and global variable access tests.

16:22 Google Summer of Code 2008 edited by eric@webkit.org
(diff)
16:08 Changeset [31113] by mitz@apple.com
  • 2 edits in trunk/WebKitSite

2008-03-17 Dan Bernstein <mitz@apple.com>

Reviewed by Sam Weinig.

  • link "backtrace" to the page that explains how to get one
  • quality/bugwriting.html:
14:47 Changeset [31112] by eric@webkit.org
  • 8 edits
    4 adds in trunk

Reviewed by darin.

Fix _NPN_IntFromIdentifier (and export the symbol for use!)

Test: plugins/netscape-identifier-conversion.html

  • WebCore.NPAPI.exp:
  • bridge/npruntime.cpp: (_NPN_IntFromIdentifier):
14:38 Changeset [31111] by weinig@apple.com
  • 4 edits in trunk

WebCore:

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

Reviewed by Dan Bernstein.

Add HTMLCollection constructor to the Window object. (Omission noticed by Harri Porten)

  • page/DOMWindow.idl:

LayoutTests:

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

Reviewed by Dan Bernstein.

Add HTMLCollection constructor to the Window object. (Omission noticed by Harri Porten)

  • fast/dom/Window/window-properties-expected.txt:
14:34 Changeset [31110] by zecke@webkit.org
  • 2 edits in trunk/WebCore

2008-03-17 Holger Hans Peter Freyther <zecke@selfish.org>

Unreviewed Gtk+ build fix.

  • platform/ScrollView.h: make it public
  • platform/gtk/ScrollViewGtk.cpp: remove const
14:33 Changeset [31109] by zecke@webkit.org
  • 5 edits in trunk/WebCore

2008-03-17 Julien Chaffraix <julien.chaffraix@gmail.com>

Reviewed by Holger.

<http://bugs.webkit.org/show_bug.cgi?id=17754>

  • Implement ResourceHandle::loadResourceSynchronously to dispatch synchronous requests.
  • Implement WebCoreSynchronousLoader, the ResourceHandleClient which holds the network data, response and error for us during the transfert.
  • platform/network/ResourceHandleInternal.h: Remove trailing white space.
  • platform/network/curl/ResourceHandleCurl.cpp: Add WebCoreSynchronousLoader (WebCore::WebCoreSynchronousLoader::resourceResponse): (WebCore::WebCoreSynchronousLoader::resourceError): (WebCore::WebCoreSynchronousLoader::data): (WebCore::WebCoreSynchronousLoader::WebCoreSynchronousLoader): (WebCore::WebCoreSynchronousLoader::didReceiveResponse): (WebCore::WebCoreSynchronousLoader::didReceiveData): (WebCore::WebCoreSynchronousLoader::didFinishLoading): (WebCore::WebCoreSynchronousLoader::didFail): (WebCore::ResourceHandle::loadResourceSynchronously): Implement method using WebCoreSynchronousLoader.
  • platform/network/curl/ResourceHandleManager.cpp: (WebCore::ResourceHandleManager::dispatchSynchronousJob): (WebCore::ResourceHandleManager::startJob): (WebCore::ResourceHandleManager::initializeHandle): Handle initialization method used both for synchronous and asynchronous job.
  • platform/network/curl/ResourceHandleManager.h:
14:27 Changeset [31108] by darin@apple.com
  • 2 edits in trunk/WebCore

2008-03-17 Darin Adler <darin@apple.com>

  • try to fix GTK build
  • platform/ScrollView.h: Make setGtkAdjustments adjustment. And non-virtual (why was it virtual?).
13:35 Changeset [31107] by mrowe@apple.com
  • 4 edits in branches/Safari-3-1-branch

Versioning.

13:34 Changeset [31106] by aroben@apple.com
  • 3 edits
    2 adds in trunk/WebCore

2008-03-17 Rodney Dawes <dobey@wayofthemonkey.com>

Fix Bug 17898: Split PluginMessageThrottlerWin into its own files

<http://bugs.webkit.org/show_bug.cgi?id=17898>

Move the PluginMessageThrottlerWin class into its own files, in
preparation for refactoring PluginView code to be shared.

Reviewed and tweaked by Adam Roben.

  • WebCore.vcproj/WebCore.vcproj:
  • plugins/PluginView.h:
  • plugins/win/PluginMessageThrottlerWin.cpp: Added.
  • plugins/win/PluginMessageThrottlerWin.h: Added.
  • plugins/win/PluginViewWin.cpp:
13:33 Changeset [31105] by mrowe@apple.com
  • 1 copy in tags/Safari-5525.15

New tag.

13:21 Changeset [31104] by aroben@apple.com
  • 2 edits in trunk/WebCore

More Windows build fixes after r31098

  • platform/ScrollView.h: Make some more methods public.
13:18 Changeset [31103] by aroben@apple.com
  • 2 edits in trunk/WebCore

Windows and Qt build fixes after r31098

  • platform/ScrollView.h: Mark methods public that still need to be so.
12:28 Changeset [31102] by mrowe@apple.com
  • 2 edits in branches/Safari-3-1-branch/WebCore

Merge r31069.

11:58 Changeset [31101] by timothy@apple.com
  • 2 edits in trunk/WebCore

2008-03-16 Timothy Hatcher <timothy@apple.com>

Reviewed by Darin Adler.

Bug 17883: Console completion should support bracket notation
http://bugs.webkit.org/show_bug.cgi?id=17883

Also fixes a bug where the Inspector's window object was used instead of the
inspected window object.

  • page/inspector/ConsolePanel.js: (WebInspector.ConsolePanel.complete): Add a comment about the _backwardsRange call. (WebInspector.ConsolePanel.completions): Add a comment about the _backwardsRange call. Check the last character of the expression for a dot or bracket. Fallback to the InspectorController.inspectedWindow() instead of window, this was a bad bug. If the expression caused an exception, just consider the prefix a window property. When bracket notation is used remember what quote was used and compared property names with that quote surrounding it. Also escape the property name for the quote and backslash.
11:01 Changeset [31100] by darin@apple.com
  • 12 edits
    22 adds
    7 deletes in trunk

WebCore:

2008-03-17 Robert Blaut <webkit@blaut.biz>

Reviewed by Darin.

Fix for bug http://bugs.webkit.org/show_bug.cgi?id=17696
Set default margin-bottom for form element in quirk mode
and be compatible with Gecko.

Tests: fast/css/margin-bottom-form-element-quirk.html

fast/css/margin-bottom-form-element-strict.html

  • css/html4.css:
  • css/quirks.css:

LayoutTests:

2008-03-17 Robert Blaut <webkit@blaut.biz>

Reviewed by Darin.

Fix for bug http://bugs.webkit.org/show_bug.cgi?id=17696
Set default margin-bottom for form element in quirk mode
and be compatible with Gecko.

  • fast/css/margin-bottom-form-element-quirk.html: Added.
  • fast/css/margin-bottom-form-element-strict.html: Added.
  • fast/frames/viewsource-empty-attribute-value-expected.txt:
  • platform/mac/fast/block/margin-collapse/103-expected.checksum:
  • platform/mac/fast/block/margin-collapse/103-expected.png:
  • platform/mac/fast/block/margin-collapse/103-expected.txt:
  • platform/mac/fast/css/margin-bottom-form-element-quirk-expected.checksum: Added.
  • platform/mac/fast/css/margin-bottom-form-element-quirk-expected.png: Added.
  • platform/mac/fast/css/margin-bottom-form-element-quirk-expected.txt: Added.
  • platform/mac/fast/css/margin-bottom-form-element-strict-expected.checksum: Added.
  • platform/mac/fast/css/margin-bottom-form-element-strict-expected.png: Added.
  • platform/mac/fast/css/margin-bottom-form-element-strict-expected.txt: Added.
  • platform/mac/tables/mozilla/bugs/bug44505-expected.checksum:
  • platform/mac/tables/mozilla/bugs/bug44505-expected.png:
  • platform/mac/tables/mozilla/bugs/bug44505-expected.txt:
  • platform/mac/tables/mozilla/bugs/bug51727-expected.checksum:
  • platform/mac/tables/mozilla/bugs/bug51727-expected.png:
  • platform/mac/tables/mozilla/bugs/bug51727-expected.txt:
  • platform/mac/tables/mozilla/bugs/bug52505-expected.checksum:
  • platform/mac/tables/mozilla/bugs/bug52505-expected.png:
  • platform/mac/tables/mozilla/bugs/bug52505-expected.txt:
  • platform/mac/tables/mozilla/bugs/bug52506-expected.checksum:
  • platform/mac/tables/mozilla/bugs/bug52506-expected.png:
  • platform/mac/tables/mozilla/bugs/bug52506-expected.txt:
  • platform/mac/tables/mozilla_expected_failures/bugs/bug2479-2-expected.checksum:
  • platform/mac/tables/mozilla_expected_failures/bugs/bug2479-2-expected.png:
  • platform/mac/tables/mozilla_expected_failures/bugs/bug2479-2-expected.txt:
  • platform/mac/tables/mozilla_expected_failures/bugs/bug56024-expected.checksum:
  • platform/mac/tables/mozilla_expected_failures/bugs/bug56024-expected.png:
  • platform/mac/tables/mozilla_expected_failures/bugs/bug56024-expected.txt:
  • platform/qt/fast/block/margin-collapse/103-expected.txt: Removed.
  • platform/qt/tables/mozilla/bugs/bug44505-expected.txt: Removed.
  • platform/qt/tables/mozilla/bugs/bug51727-expected.txt: Removed.
  • platform/qt/tables/mozilla/bugs/bug52505-expected.txt: Removed.
  • platform/qt/tables/mozilla/bugs/bug52506-expected.txt: Removed.
  • platform/qt/tables/mozilla_expected_failures/bugs/bug2479-2-expected.txt: Removed.
  • platform/qt/tables/mozilla_expected_failures/bugs/bug56024-expected.txt: Removed.
10:38 Changeset [31099] by antti@apple.com
  • 2 edits in trunk/WebCore

2008-03-17 Antti Koivisto <antti@apple.com>

Reviewed by Darin.

Speculative fix for http://bugs.webkit.org/show_bug.cgi?id=17878
Bug 17878: REGRESSION: Acid3 sometimes crashes Webkit under WebCore::Loader::Host::cancelRequests


I can't reproduce the crash or make a test case for this one but I'm pretty sure this
is the problem. Essentially the same bug as http://bugs.webkit.org/show_bug.cgi?id=17862
except in didFail() instead of didFinishLoading().

  • loader/loader.cpp: (WebCore::Loader::Host::didFail):
09:56 Changeset [31098] by darin@apple.com
  • 2 edits in trunk/WebCore

2008-03-17 Jan Michael Alonzo <jmalonzo@unpluggable.com>

Reviewed and tweaked by Darin.

http://bugs.webkit.org/show_bug.cgi?id=17172
Refactor platform checks in ScrollView.h

  • platform/ScrollView.h: Change #ifs around.
09:43 Changeset [31097] by darin@apple.com
  • 3 edits
    3 adds in trunk

WebCore:

2008-03-17 Yuzhu Shen <yuzhu.shen@gmail.com>

Reviewed by Darin.

Fix the bug: http://bugs.webkit.org/show_bug.cgi?id=17760
It is necessary to load the image even when src="".

Test: fast/images/load-img-with-empty-src.html

  • html/HTMLImageLoader.cpp: (WebCore::HTMLImageLoader::updateFromElement): isNull rather than isEmpty.

LayoutTests:

2008-03-17 Yuzhu Shen <yuzhu.shen@gmail.com>

Reviewed by Darin.

Bug: http://bugs.webkit.org/show_bug.cgi?id=17760
Test whether <img> tries to load image with empty src attribute.

  • fast/images/load-img-with-empty-src-expected.txt: Added.
  • fast/images/load-img-with-empty-src.html: Added.
  • fast/images/resources/test-load.jpg: Added.
08:27 Changeset [31096] by aroben@apple.com
  • 2 edits in trunk/WebCore

2008-03-17 Rodney Dawes <dobey@wayofthemonkey.com>

Fix GTK+ build from r31094.

  • plugins/gtk/PluginDatabaseGtk.cpp: (PluginDatabase::getPluginsInPaths):
08:25 Changeset [31095] by aroben@apple.com
  • 3 edits
    2 adds in trunk

Fix Bug 17876: REGRESSION (r31060): Attempting to visit Ofcom page causes crash

WebCore:

Fix Bug 17876: REGRESSION (r31060): Attempting to visit Ofcom page causes crash

<http://bugs.webkit.org/show_bug.cgi?id=17876>

Reviewed by John.

Test: fast/dom/remove-named-attribute-crash.html

  • dom/NamedAttrMap.cpp: (WebCore::NamedAttrMap::removeAttribute): Store the Attribute we're going to remove from the m_attributes Vector in a RefPtr so it doesn't get deleted when it is removed from the Vector.

LayoutTests:

Test for Bug 17876: REGRESSION (r31060): Attempting to visit Ofcom page causes crash

<http://bugs.webkit.org/show_bug.cgi?id=17876>

Reviewed by John.

  • fast/dom/remove-named-attribute-crash-expected.txt: Added.
  • fast/dom/remove-named-attribute-crash.html: Added.
07:51 Changeset [31094] by aroben@apple.com
  • 3 edits
    2 adds in trunk/WebCore

2008-03-17 Rodney Dawes <dobey@wayofthemonkey.com>

Reviewed by Adam Roben.

Implement PluginDatabase for GTK+ with PluginDatabaseGtk.cpp.
Remove implemented methods from TemporaryLinkStubs.

  • GNUmakefile.am:
  • plugins/gtk:
  • plugins/gtk/PluginDatabaseGtk.cpp:
  • platform/gtk/TemporaryLinkStubs.cpp:
02:47 WebKit Team edited by zecke2@selfish.org
Correct my information. I'm not employed by Trolltech (and wasn't) (diff)
01:27 Changeset [31093] by hausmann@webkit.org
  • 3 edits in trunk/WebCore

Fix the Qt build.

03/16/08:

21:05 Changeset [31092] by mjs@apple.com
  • 2 edits in trunk/WebCore

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

Not reviewed, just fixing an incomplete comment from the last commit.

  • dom/Range.cpp: (WebCore::Range::surroundContents):
20:59 Changeset [31091] by kevino@webkit.org
  • 3 edits in trunk/WebKit/wx

wx build fix. Make sure we link png/jpeg libraries before wx libraries to get the right symbols.

20:50 Changeset [31090] by mjs@apple.com
  • 3 edits
    2 adds in trunk

WebCore:

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

Reviewed by Darin.


This gets us to 92/100

  • dom/Range.cpp: (WebCore::Range::surroundContents): Check for HIERARCHY_REQUEST_ERR before BAD_BOUNDARYPOINTS_ERR, since Acid3 expects exceptional conditions to be tested in the order that the spec lists them. Also, adjust the HIERARCHY_REQUEST_ERR check. If the start point of the range is in a comment node, the node that would be the parent of a partial replacement is actually the comment node's parent (since comment nodes have character indices), so we should do the HIERARCHY_REQUEST_ERR check based on the parent of the comment node, as for text nodes, even though it will fail later with a different exception because it is not allowed to surround a partially selected non-text node.

LayoutTests:

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

Reviewed by Darin.


  • fast/dom/Range/acid3-surround-contents-expected.txt: Added.
  • fast/dom/Range/acid3-surround-contents.html: Added.
20:47 Changeset [31089] by darin@apple.com
  • 21 edits
    2 adds in trunk

WebCore:

2008-03-16 Marvin Decker <marv.decker@gmail.com>

Reviewed by Darin.

Fix bug 15119: URL query characters that are unencodable in the
request's character set should be converted to XML entities with
non-alphanumeric characters escaped.

Test: http/tests/uri/escaped-entity.html

  • html/FormDataList.cpp: (WebCore::FormDataList::appendString):
  • html/HTMLFormElement.cpp: (WebCore::HTMLFormElement::formData):
  • platform/KURL.cpp: (WebCore::encodeRelativeString):
  • platform/text/String.cpp: (WebCore::String::latin1): (WebCore::String::utf8):
  • platform/text/TextCodec.cpp: (WebCore::TextCodec::unencodableCharReplacement):
  • platform/text/TextCodec.h: (WebCore::):
  • platform/text/TextCodecICU.cpp: (WebCore::urlEscapedEntityCallback): (WebCore::gbkUrlEscapedEntityCallack): (WebCore::TextCodecICU::encode):
  • platform/text/TextCodecICU.h: (WebCore::TextCodecICU::setNeedsGBKFallbacks):
  • platform/text/TextCodecLatin1.cpp: (WebCore::encodeComplexWindowsLatin1): (WebCore::TextCodecLatin1::encode):
  • platform/text/TextCodecLatin1.h:
  • platform/text/TextCodecUTF16.cpp: (WebCore::TextCodecUTF16::encode):
  • platform/text/TextCodecUTF16.h:
  • platform/text/TextCodecUserDefined.cpp: (WebCore::encodeComplexUserDefined): (WebCore::TextCodecUserDefined::encode):
  • platform/text/TextCodecUserDefined.h:
  • platform/text/TextEncoding.cpp: (WebCore::TextEncoding::encode):
  • platform/text/TextEncoding.h:
  • platform/text/mac/TextCodecMac.cpp: (WebCore::TextCodecMac::encode):
  • platform/text/mac/TextCodecMac.h:
  • xml/XMLHttpRequest.cpp: (WebCore::XMLHttpRequest::send):

LayoutTests:

2008-03-16 Marvin Decker <marv.decker@gmail.com>

Reviewed by Darin.

Fix bug 15119, unencodable characters in URLs should be entity-escaped.

  • http/tests/uri/escaped-entity-expected.txt: Added.
  • http/tests/uri/escaped-entity.html: Added.
20:26 Changeset [31088] by darin@apple.com
  • 2 edits in trunk/JavaScriptCore

2008-03-16 weihongzeng <weihong.zeng@hotmail.com>


Reviewed by Darin Adler.


http://bugs.webkit.org/show_bug.cgi?id=15416
Add support for mixed-endian processors


  • kjs/dtoa.cpp: Add IEEE_ARM, triggered by PLATFORM(MIDDLE_ENDIAN).
18:29 Changeset [31087] by kevino@webkit.org
  • 12 edits in trunk

Rubber stamped by Darin.

Add set-webkit-configuration support for wx port, and centralize build dir location setting.

http://bugs.webkit.org/show_bug.cgi?id=17790

15:21 Changeset [31086] by darin@apple.com
  • 7 edits
    2 copies
    2 adds in trunk

WebCore:

2008-03-16 Darin Adler <darin@apple.com>

Reviewed by Mark Rowe.

Tests: fast/forms/textarea-default-value-leading-newline.html

fast/forms/textarea-linewrap-dynamic.html

  • html/HTMLTextAreaElement.cpp: (WebCore::HTMLTextAreaElement::HTMLTextAreaElement): Tweaked names/ (WebCore::HTMLTextAreaElement::selectionStart): Ditto, also use early return and check for < 0 rather than -1 specifically. (WebCore::HTMLTextAreaElement::selectionEnd): Ditto. (WebCore::HTMLTextAreaElement::setSelectionStart): Early return. (WebCore::HTMLTextAreaElement::setSelectionEnd): Ditto. (WebCore::HTMLTextAreaElement::select): Ditto. (WebCore::HTMLTextAreaElement::setSelectionRange): Ditto. (WebCore::HTMLTextAreaElement::parseMappedAttribute): Changed value parsing to treat unknown values as meaning "default" rather than "leave value as-is". Only call setNeedsLayoutAndPrefWidthsRecalc when mode changed. (WebCore::HTMLTextAreaElement::createRenderer): Removed name of unused argument. (WebCore::HTMLTextAreaElement::appendFormData): Updated for name changes. (WebCore::HTMLTextAreaElement::isKeyboardFocusable): Got rid of unnneeded explicit class name in isFocusable call. (WebCore::HTMLTextAreaElement::isMouseFocusable): Ditto. (WebCore::HTMLTextAreaElement::updateFocusAppearance): Tweaked formatting. (WebCore::HTMLTextAreaElement::defaultEventHandler): Ditto. (WebCore::HTMLTextAreaElement::updateValue): Early return. (WebCore::HTMLTextAreaElement::setValue): Got rid of intermediate value to eliminate on small refcount churn. (WebCore::HTMLTextAreaElement::defaultValue): Got rid of unneeded redundant string length checks, since String already checks all indexing and returns 0. (WebCore::HTMLTextAreaElement::setDefaultValue): Added code to normalize line endings and add a leading line ending to fix cases where the first character is a newline. (WebCore::HTMLTextAreaElement::accessKeyAction): Removed name of unused arg. (WebCore::HTMLTextAreaElement::accessKey): Changed return value to avoid refcount churn. (WebCore::HTMLTextAreaElement::selection): Updated names and use < 0 instead of -1 specifically.
  • html/HTMLTextAreaElement.h: Replaced wrap function with more-specific shouldWrapText one. Changed return value of accessKey. Made WrapMethod enum provate and renamed the values. Renamed cachedSelStart and cachedSelEnd to m_cachedSelectionStart and m_cachedSelectionEnd.
  • rendering/RenderTextControl.cpp: (WebCore::RenderTextControl::createInnerTextStyle): Updated for change to HTMLTextAreaElement wrap function.

LayoutTests:

2008-03-16 Darin Adler <darin@apple.com>

Reviewed by Mark Rowe.

  • fast/forms/textarea-default-value-leading-newline-expected.txt: Added.
  • fast/forms/textarea-default-value-leading-newline.html: Copied from fast/forms/textarea-crlf.html.
  • fast/forms/textarea-hard-linewrap-expected.txt: Updated.
  • fast/forms/textarea-hard-linewrap.html: Cleaned up a bit.
  • fast/forms/textarea-linewrap-dynamic-expected.txt: Added.
  • fast/forms/textarea-linewrap-dynamic.html: Copied from fast/forms/textarea-hard-linewrap.html.
14:47 Changeset [31085] by antti@apple.com
  • 6 edits in trunk/WebCore

Reviewed by Mitz.

Fix http/tests/security/frame-loading-via-document-write.html
which was broken by the preload patch.


Don't print error message when preload fails local file security check.
Some minor refactoring.

  • html/PreloadScanner.cpp: (WebCore::PreloadScanner::emitTag): (WebCore::PreloadScanner::emitCSSRule):
  • loader/Cache.cpp: (WebCore::Cache::requestResource):
  • loader/Cache.h:
  • loader/DocLoader.cpp: (WebCore::DocLoader::requestResource): (WebCore::DocLoader::preload): (WebCore::DocLoader::printPreloadStats):
  • loader/DocLoader.h:
13:53 Changeset [31084] by antti@apple.com
  • 3 edits
    3 adds in trunk

WebCore:

Reviewed by Darin.


Fix http://bugs.webkit.org/show_bug.cgi?id=17862
REGRESSION (r31038): Reproducible crash under DocLoader::checkForReload() at marware.com


This was a memory smasher introduced by the preloading patch.
If a script resource was marked uncacheable, early deletion of the
Request object would cause deletion of the CachedResource too if
it was referred more than once in a single document.

Test: http/tests/misc/uncacheable-script-repeated.html

  • loader/loader.cpp: (WebCore::Loader::Host::servePendingRequests): (WebCore::Loader::Host::didFinishLoading):

LayoutTests:

Reviewed by Darin.


Test for http://bugs.webkit.org/show_bug.cgi?id=17862
REGRESSION (r31038): Reproducible crash under DocLoader::checkForReload() at marware.com

  • http/tests/misc/resources/uncacheable-script.cgi: Added.
  • http/tests/misc/uncacheable-script-repeated-expected.txt: Added.
  • http/tests/misc/uncacheable-script-repeated.html: Added.
13:35 Changeset [31083] by darin@apple.com
  • 3 edits
    2 adds in trunk

WebCore:

2008-03-16 Yuzhu Shen <yuzhu.shen@gmail.com>

Reviewed by Darin.

Fix bug http://bugs.webkit.org/show_bug.cgi?id=17714
<img href="#"> should go to top of the page.

Test: fast/html/empty-fragment-id-goto-top.html

  • loader/FrameLoader.cpp: (WebCore::FrameLoader::gotoAnchor):

LayoutTests:

2008-03-16 Yuzhu Shen <yuzhu.shen@gmail.com>

Reviewed by Darin.

Bug: http://bugs.webkit.org/show_bug.cgi?id=17714
Test whether clicking <img href="#"> goes to top of the page.

  • fast/html/empty-fragment-id-goto-top-expected.txt: Added.
  • fast/html/empty-fragment-id-goto-top.html: Added.
13:25 Changeset [31082] by darin@apple.com
  • 6 edits in trunk

WebCore:

2008-03-16 Thiago Macieira <thiago.macieira@trolltech.com>

Reviewed by Darin.

Don't use RefPtr in classes you haven't seen the implementation of.

Forward-declaration and declaration of RefPtr<Foo> is ok. But you
cannot *use* said objects until Foo is defined. This is true even for
initialisation with a 0.

Seems the HP aCC compiler is more strict here than gcc.

  • editing/SplitTextNodeCommand.h:
  • page/FrameTree.h:
  • xml/XPathExpressionNode.h:

WebKit/qt:

2008-03-16 Thiago Macieira <thiago.macieira@trolltech.com>

Reviewed by Simon.

Don't use RefPtr in classes you haven't seen the implementation of.


Forward-declaration and declaration of RefPtr<Foo> is ok. But you
cannot *use* said objects until Foo is defined. This is true even for
initialisation with a 0.


Seems the HP aCC compiler is more strict here than gcc.

  • Api/qwebframe_p.h:
13:17 Changeset [31081] by darin@apple.com
  • 4 edits
    2 adds in trunk

WebCore:

2008-03-16 Darin Adler <darin@apple.com>

Reviewed by Mitz.

Test: fast/forms/textarea-trailing-newline.html

  • rendering/RenderTextControl.cpp: (WebCore::RenderTextControl::finishText): Added code to strip the trailing newline. It's possible there are some obscure cases where this is not wanted, but I couldn't find any. If someone finds a case where this is bad, we can make the code conditional.

LayoutTests:

2008-03-16 Darin Adler <darin@apple.com>

Reviewed by Mitz.

  • fast/forms/textarea-paste-newline.html: Updated test to expect correct behavior instead of expecting the bug.
  • fast/forms/textarea-trailing-newline-expected.txt: Added.
  • fast/forms/textarea-trailing-newline.html: Added.
13:15 Changeset [31080] by darin@apple.com
  • 2 edits in trunk/WebCore

2008-03-16 Darin Adler <darin@apple.com>

Reviewed by Mitz.

This is causing intermittent crashes on some existing test cases on the buildbot
too; I don't have a 100% test case right now, but it should be easy to add one later
and this does fix a crash in a test we already have.

  • dom/CharacterData.cpp: (WebCore::CharacterData::CharacterData): Initialize m_data to the empty string, not the null string. The class assumes the string can never being null. (WebCore::CharacterData::setData): If asked to set the data to the null string, set it to the empty string instead. This matches what the (non-empty) constructor has always done.

03/15/08:

23:34 Changeset [31079] by timothy@apple.com
  • 5 edits
    2 adds in trunk/WebCore

Reviewed by Adam Roben.

Bug 17870: Web Inspector console should feel more like a terminal
http://bugs.webkit.org/show_bug.cgi?id=17870

Bug 14390: Console input area should be more noticeable
http://bugs.webkit.org/show_bug.cgi?id=14390

Adds tab completion, auto completion and a blended input prompt.
The prompt is also focused when the console is shown.

Implements a new look, that will be part of the UI refresh.

  • page/inspector/ConsolePanel.js: (WebInspector.ConsolePanel): Renamed a few properties. (WebInspector.ConsolePanel.get/set promptText): Property to set and get the current prompt text. Does not affect command history. (WebInspector.ConsolePanel.show): Make the prompt focus on show. (WebInspector.ConsolePanel.acceptAutoComplete): Accepts any pending auto complete text. (WebInspector.ConsolePanel.clearAutoComplete): Cancels any pending auto complete text. (WebInspector.ConsolePanel.autoCompleteSoon): Sets a timeout to auto complete in 250 ms, only if there isn't a pending auto complete. (WebInspector.ConsolePanel.complete): (WebInspector.ConsolePanel.completions): Generate a list of possible completions based on the prefix and the previous expression ranges. (WebInspector.ConsolePanel._backwardsRange): Helper to scan backwards from a node and offset to find a start node and offset of the first character found in the characters string. (WebInspector.ConsolePanel._evalInInspectedWindow): Helper to eval in the inspected window. (WebInspector.ConsolePanel._caretInsidePrompt): Returns true if the selection is collapsed and is inside the prompt element. (WebInspector.ConsolePanel._moveCaretToEndOfPrompt): Moves the selection to the end of the prompt. (WebInspector.ConsolePanel._onTabPressed): Calls complete on tab press. (WebInspector.ConsolePanel._onEnterPressed): Call clearAutoComplete so the autocompletion text is not evaluated.
  • page/inspector/Images/errorIcon.png: New image.
  • page/inspector/Images/userInputIcon.png: Added.
  • page/inspector/Images/userInputPreviousIcon.png: Added.
  • page/inspector/Images/warningIcon.png: New image.
  • page/inspector/inspector.css: New refreshed UI.
12:12 Changeset [31078] by pewtermoose@webkit.org
  • 2 edits in trunk/WebKitSite

2008-03-15 Matt Lilek <webkit@mattlilek.com>

Rubber-stamped by Mitz.

Update crash log page with instructions for Leopard.

  • quality/crashlogs.html:
10:49 Changeset [31077] by darin@apple.com
  • 3 edits in trunk/WebKitTools

2008-03-15 Darin Adler <darin@apple.com>

  • Scripts/commit-log-editor: Include the name line of the change log entry. A long time ago I designed this script to not include the name because I thought it was redundant (same as the name of the person checking in), but nowadays it's more common for someone to check something in done by someone else.
  • Scripts/do-webcore-rename: Added some more planned renames and removed some that were already done "by hand".
10:37 Changeset [31076] by darin@apple.com
  • 2 edits
    3 moves in trunk/WebCore

2008-03-15 Mark Mentovai <mark@moxienet.com>

Reviewed and landed by Darin.

  • WebCore.xcodeproj/project.pbxproj: Remove unnecessary uses of explicitFileType, preferring lastKnownFileType ("File Type: Default for File" in Xcode's File Info's General tab). Files below that relied on an explicit file type setting other than what would be implied by their extensions have been renamed to have correct extensions.
  • bridge/jni/jni_jsobject.cpp: Removed.
  • bridge/jni/jni_jsobject.mm: Copied from bridge/jni/jni_jsobject.cpp.
  • loader/mac/LoaderNSURLExtras.m: Removed.
  • loader/mac/LoaderNSURLExtras.mm: Copied from loader/mac/LoaderNSURLExtras.m.
  • platform/mac/SharedTimerMac.cpp: Removed.
  • platform/mac/SharedTimerMac.mm: Copied from platform/mac/SharedTimerMac.cpp.
10:26 Changeset [31075] by darin@apple.com
  • 23 edits
    6 adds in trunk

WebCore:

Reviewed by Sam.

Test: fast/dom/Range/mutation.html

  • WebCore.xcodeproj/project.pbxproj: Added NodeWithIndex.h, NodeWithIndexAfter.h, and NodeWithIndexBefore.h.
  • dom/CharacterData.cpp: (WebCore::CharacterData::setData): Replaced call to Document::removeMarkers with call to Document::textRemoved. (WebCore::CharacterData::insertData): Replaced call to Document::shiftMarkers with call to Document::textInserted. (WebCore::CharacterData::deleteData): Replaced call to Document::removeMarkers and Document::shiftMarkers with call to Document::textRemoved. (WebCore::CharacterData::replaceData): Replaced call to Document::removeMarkers and Document::shiftMarkers with call to Document::textRemoved and Document::textInserted. (WebCore::CharacterData::containsOnlyWhitespace): Tweaked a bit.
  • dom/ContainerNode.cpp: (WebCore::ContainerNode::childrenChanged): Added a call to Document::nodeChildrenChanged when the nmber of children was changed (and not by the parser). (WebCore::dispatchChildRemovalEvents): Updated for name change.
  • dom/Document.cpp: (WebCore::Document::~Document): Assert that all ranges are gone. (WebCore::Document::nodeChildrenChanged): Added. Calls nodeChildrenChanged on all ranges. (WebCore::Document::nodeWillBeRemoved): Renamed from notifyBeforeNodeRemoval. Added code to call nodeWillBeRemoved on all ranges. (WebCore::Document::textInserted): Added. Calls textInserted on all ranges and also calls shiftMarkers. (WebCore::Document::textRemoved): Added. Calls textRemoved on all ranges and also calls removeMarkers and shiftMarkers. (WebCore::Document::textNodesMerged): Added. Calls textNodesMerged on all ranges. (WebCore::Document::textNodeSplit): Added. Calls textNodeSplit on all ranges. (WebCore::Document::attachRange): Added. Adds range to the HashSet of all ranges for this document. (WebCore::Document::detachRange): Added. Removes range from the HashSet.
  • dom/Document.h: Added the new functions and the data member.
  • dom/Element.cpp: (WebCore::Element::normalizeAttributes): Added. Contains the part of the normalize function that's specific to Element. Better encapsulation to have it here rather than in Node::normalize.
  • dom/Element.h: Added the new function.
  • dom/Node.cpp: (WebCore::Node::normalize): Rewrote so it's no longer recursive. Also added a call to textNodesMerged after each pair of nodes is merged but before the second node is removed. (WebCore::Node::traverseNextNodePostOrder): Added. Helper function used by normalize, but also useful elsewhere.
  • dom/Node.h: Added the new function.
  • dom/NodeIterator.cpp: (WebCore::NodeIterator::nodeWillBeRemoved): Renamed from notifyBeforeNodeRemoval.
  • dom/NodeIterator.h: Ditto.
  • dom/ProcessingInstruction.cpp: (WebCore::ProcessingInstruction::setData): Call textRemoved.
  • dom/Range.cpp: (WebCore::NodeWithIndex::index): Added. Computes and stores index. (WebCore::NodeWithIndexBefore::indexBefore): Added. Computes and stores index. (WebCore::NodeWithIndexAfter::indexAfter): Added. Computes and stores index. (WebCore::Range::Range): Call attachRange. (WebCore::Range::~Range): Call detachRange unless the range is already detached. (WebCore::Range::commonAncestorContainer): Removed check for WRONG_DOCUMENT_ERR. It's no longer possible to create a range where the two containers are non-zero and have no common ancestor. (WebCore::Range::isPointInRange): Rewrote expression to be more readable. (WebCore::Range::compareNode): Changed local variable to use int for consistency. (WebCore::Range::compareBoundaryPoints): Replaced ASSERT with ASSERT_NOT_REACHED. (WebCore::Range::deleteContents): Removed check for INVALID_STATE_ERR and initialization of ec to 0; both are now inside checkDeleteExtract. (WebCore::Range::intersectsNode): Changed local variable to use int for consistency. Also changed comparison to use < 0 and >= 0 rather than checking explicitly for 1 and -1. (WebCore::Range::processContents): Changed code to not get the nodeType multiple times on the same node, and tweaked formatting. Removed code to update the range on deletion, because the normal delete logic will take care of that now. (WebCore::Range::extractContents): Removed check for INVALID_STATE_ERR and initialization of ec to 0; both are now inside checkDeleteExtract. (WebCore::Range::insertNode): Changed local variable to use int for consistency. (WebCore::Range::toString): Changed variable name to pastLast. (WebCore::Range::detach): Call detachRange. (WebCore::Range::checkDeleteExtract): Added check for detached range and code to set ec to 0; moved here from the two callers. Also changed variable name to pastLast. (WebCore::endpointNodeChildrenChanged): Added. (WebCore::Range::nodeChildrenChanged): Added. (WebCore::endpointNodeWillBeRemoved): Added. (WebCore::Range::nodeWillBeRemoved): Added. (WebCore::endpointTextInserted): Added. (WebCore::Range::textInserted): Added. (WebCore::endpointTextRemoved): Added. (WebCore::Range::textRemoved): Added. (WebCore::endpointTextNodesMerged): Added. (WebCore::Range::textNodesMerged): Added. (WebCore::endpointTextNodesSplit): Added. (WebCore::Range::textNodeSplit): Added.
  • dom/Range.h: Added new member functions.
  • dom/NodeWithIndex.h: Added. Makes it so we won't find the index for the same node more than once.
  • dom/NodeWithIndexAfter.h: Added. Similar to NodeWithIndex but gives the index after a node and treats a node pointer of 0 as meaning "before first node in parent container".
  • dom/NodeWithIndexBefore.h: Added. Similar to NodeWithIndex but treats a node pointer of 0 as meaning "after last node in parent container".
  • dom/Text.cpp: (WebCore::Text::splitText): Call textNodeSplit.
  • editing/ApplyStyleCommand.cpp: (WebCore::ApplyStyleCommand::applyInlineStyle): Changed variable name to pastLast.

LayoutTests:

Reviewed by Sam.

  • fast/dom/Range/mutation-expected.txt: Added.
  • fast/dom/Range/mutation.html: Added.
  • fast/dom/Range/resources/mutation.js: Added.
  • editing/execCommand/4920742-2-expected.txt: Updated.
  • editing/execCommand/4920742-2.html: Updated this test. It was testing for a crash in a case that's no longer possible -- you can't make a range where one endpoint is in the document and the other is not.
  • platform/mac/editing/execCommand/4920488-expected.txt: Removed WRONG_DOCUMENT_ERR. The fact that a test was getting this exception was a bug, similar to the case above.
  • platform/qt/editing/execCommand/4920488-expected.txt: Ditto.
07:15 Changeset [31074] by zecke@webkit.org
  • 3 edits
    2 adds in trunk

WebCore:
2008-03-15 Julien Chaffraix <julien.chaffraix@gmail.com>

Reviewed by Holger.

[CURL] Crash below ResourceHandleManager::setupPOST when job->request().httpBody() is NULL
http://bugs.webkit.org/show_bug.cgi?id=16906

Add null checks for httpBody() to match other ports.

Test: http/tests/xmlhttprequest/xmlhttprequest-post-crash.html

  • platform/network/curl/ResourceHandleManager.cpp: (WebCore::readCallback): Add null check. (WebCore::ResourceHandleManager::setupPOST): Ditto.

LayoutTests:
2008-03-15 Julien Chaffraix <julien.chaffraix@gmail.com>

Reviewed by Holger.

[CURL] Crash below ResourceHandleManager::setupPOST when job->request().httpBody() is NULL
http://bugs.webkit.org/show_bug.cgi?id=16906

  • http/tests/xmlhttprequest/xmlhttprequest-post-crash-expected.txt: Added.
  • http/tests/xmlhttprequest/xmlhttprequest-post-crash.html: Added.

03/14/08:

23:06 Changeset [31073] by sfalken@apple.com
  • 6 edits in trunk

JavaScriptCore:

PGO build fixes.

WebCore:

PGO build fixes.

  • WebCore.vcproj/WebCore.vcproj:

WebKit/win:

PGO build fixes.

  • WebKit.vcproj/WebKit.vcproj:
18:05 Changeset [31072] by oliver@apple.com
  • 8 edits in trunk/JavaScriptCore

Add logic to track whether a function uses a locally scoped eval or requires a closure

Reviewed by Maciej

Now that we limit eval we can track those uses of eval that operate
in the local scope and functions that require a closure. We track
this information during initial parsing to avoid yet another tree
walk.

17:21 Changeset [31071] by andersca@apple.com
  • 5 edits
    2 adds in trunk

WebCore:

Reviewed by Sam.

<rdar://problem/5794989>
https://bugs.webkit.org/show_bug.cgi?id=17792
REGRESSION (Safari 3.0.4-3.1): Ordering tickets from Sweden's biggest train operator doesn't work

Pass the frame loader that should be used for looking up the frame name to FrameLoader::createWindow
so that somewindow.open calls where the active window and 'somewindow' differ return the correct frame.


  • bindings/js/JSDOMWindowBase.cpp: (WebCore::createWindow):
  • loader/FrameLoader.cpp: (WebCore::FrameLoader::createWindow):
  • loader/FrameLoader.h:

LayoutTests:

Reviewed by Sam.

<rdar://problem/5794989>
https://bugs.webkit.org/show_bug.cgi?id=17792
REGRESSION (Safari 3.0.4-3.1): Ordering tickets from Sweden's biggest train operator doesn't work


Add tests.


  • fast/dom/Window/window-open-self-from-other-frame-expected.txt: Added.
  • fast/dom/Window/window-open-self-from-other-frame.html: Added.
15:57 Changeset [31070] by mitz@apple.com
  • 1 edit in trunk/WebCore/ChangeLog

Fix ChangeLog

15:54 Changeset [31069] by mitz@apple.com
  • 2 edits in trunk/WebCore

Reviewed by Mark Rowe.

  • fix <rdar://problem/5797836> shadow offsets are smaller than specified
  • platform/graphics/cg/GraphicsContextCG.cpp: (WebCore::GraphicsContext::setShadow): Made the workaround for <rdar://problem/5643663> unconditional.
14:06 Changeset [31068] by aroben@apple.com
  • 3 edits in trunk/WebCore

Fix it right this time

  • platform/MainThread.cpp: Cast to unsigned so we can use %u in the format string.
  • platform/mac/MainThreadMac.mm:
13:57 Changeset [31067] by beidson@apple.com
  • 2 edits in trunk/WebKit/mac

Reviewed by Brian Dash's rubberstamp

Remove a class declaration for a class that has never existed

  • WebView/WebResource.h:
13:47 Changeset [31066] by aroben@apple.com
  • 2 edits in trunk/WebCore

Mac build fix

  • platform/mac/MainThreadMac.mm: Corrected a typo.
13:34 Changeset [31065] by mitz@apple.com
  • 3 edits
    4 adds in trunk

WebCore:

Reviewed by Darin Adler.

Test: fast/css/first-letter-float.html

  • rendering/RenderBlock.cpp: (WebCore::RenderBlock::updateFirstLetter): Changed the search for the first text node to stop at a float if that float is an existing first- letter.

LayoutTests:

Reviewed by Darin Adler.

  • fast/css/first-letter-float.html: Added.
  • platform/mac-leopard/fast/css/first-letter-float-expected.checksum: Added.
  • platform/mac-leopard/fast/css/first-letter-float-expected.png: Added.
  • platform/mac/fast/css/first-letter-float-expected.txt: Added.
13:15 Changeset [31064] by weinig@apple.com
  • 2 edits in trunk/WebCore

Fix Mac build

  • WebCore.xcodeproj/project.pbxproj:
12:53 Changeset [31063] by aroben@apple.com
  • 12 edits
    1 copy in trunk/WebCore

Make most of callOnMainThread's implementation be cross-platform

I took the non-platform-specific parts of MainThreadWin.cpp and moved
them to a new MainThread.cpp. Each platform is now responsible for
implementing one function, scheduleDispatchFunctionsOnMainThread,
which is supposed to set things up so that
dispatchFunctionsFromMainThread gets called from the main thread in
the near future.

Reviewed by Alexey.

  • GNUmakefile.am: Added MainThread.cpp to the project.
  • WebCore.pro: Ditto.
  • WebCore.vcproj/WebCore.vcproj: Ditto.
  • WebCore.xcodeproj/project.pbxproj: Ditto.
  • WebCoreSources.bkl: Ditto.
  • platform/MainThread.cpp:
    • Copied from WebCore/platform/win/MainThreadWin.cpp.
    • Removed the Windows-specific parts.

(WebCore::callOnMainThread): Changed to call
scheduleDispatchFunctionsOnMainThread instead of PostMessage.

  • platform/gtk/MainThreadGtk.cpp: (WebCore::timeoutFired): Renamed from callFunctionOnMainThread. Now just calls dispatchFunctionsFromMainThread. (WebCore::scheduleDispatchFunctionsOnMainThread): Added. Calls through to g_timeout_add.
  • platform/mac/MainThreadMac.mm: Renamed WebCoreFunctionWrapper to WebCoreMainThreadCaller. (-[WebCoreMainThreadCaller call]): Calls through to dispatchFunctionsFromMainThread. (WebCore::scheduleDispatchFunctionsOnMainThread): Makes a new WebCoreMainThreadCaller and calls performSelectorOnMainThread on it.
  • platform/qt/MainThreadQt.cpp: Removed PerformFunctionEvent. (WebCore::MainThreadInvoker::event): Chagned to call through to dispatchFunctionsFromMainThread. (WebCore::scheduleDispatchFunctionsOnMainThread): Sends an empty event to the MainThreadInvoker.
  • platform/win/MainThreadWin.cpp:
    • Removed the non-Windows-specific parts.
    • Removed some unnecessary initialization of static variables to 0.

(WebCore::ThreadingWindowWndProc): Changed to call
dispatchFunctionsFromMainThread.
(WebCore::scheduleDispatchFunctionsOnMainThread): Calls through to
PostMessage.

  • platform/wx/MainThreadWx.cpp: (WebCore::scheduleDispatchFunctionsOnMainThread): Added.
12:28 Changeset [31062] by ggaren@apple.com
  • 2 edits in trunk/JavaScriptCore

Reviewed by Beth Dakin.

Fixed another problem with Vector::shrinkCapacity.


moveOverlapping isn't good enough for the case where the buffer hasn't
changed, because it still destroys the contents of the buffer.

  • wtf/Vector.h: (WTF::::shrinkCapacity): Changed to explicitly check whether the call to allocateBuffer produced a new buffer. If it didn't, there's no need to move.
12:05 Changeset [31061] by ggaren@apple.com
  • 2 edits in trunk/JavaScriptCore

Reviewed by Beth Dakin.


Fixed a few problems with Vector::shrinkCapacity that I noticed in testing.

  • wtf/Vector.h: (WTF::VectorBufferBase::deallocateBuffer): Clear our m_buffer pointer when we deallocate m_buffer, in case we're not asked to reallocate a new buffer. (Otherwise, we would use a stale m_buffer if we were asked to perform any operations after shrinkCapacity was called.)


(WTF::VectorBuffer::allocateBuffer): Made VectorBuffer with inline
capacity aware that calls to allocateBuffer might be shrinks, rather
than grows, so we shouldn't allocate a new buffer on the heap unless
our inline buffer is too small.


(WTF::::shrinkCapacity): Call resize() instead of just setting m_size,
so destructors run. Call resize before reallocating the buffer to make
sure that we still have access to the objects we need to destroy. Call
moveOverlapping instead of move, since a call to allocateBuffer on an
inline buffer may produce identical storage.

11:28 Changeset [31060] by bdakin@apple.com
  • 5 edits in trunk/WebCore

Reviewed by Geoff.

Fix for <rdar://problem/5728171> Potential PLT speedup: don't
realloc every time inside NamedAttrMap::addAttribute

The speed-up for this turned out to be so small that it is mostly
imperceptible. It is likely that it is a tiny boost, though, and
the new code is much cleaner.

  • dom/Element.cpp: (WebCore::Element::setAttributeMap): attrs is now called m_attributes
  • dom/NamedAttrMap.cpp: The array attrs is now the Vector of RefPtrs called m_attributes, and there is no longer any need for the len member variable. (WebCore::NamedAttrMap::NamedAttrMap): (WebCore::NamedAttrMap::item): (WebCore::NamedAttrMap::getAttributeItem): (WebCore::NamedAttrMap::clearAttributes): (WebCore::NamedAttrMap::operator=): (WebCore::NamedAttrMap::addAttribute): (WebCore::NamedAttrMap::removeAttribute): (WebCore::NamedAttrMap::mapsEquivalent):
  • dom/NamedAttrMap.h: Same. (WebCore::NamedAttrMap::length): (WebCore::NamedAttrMap::attributeItem): (WebCore::NamedAttrMap::shrinkToLength): (WebCore::NamedAttrMap::reserveCapacity):
  • html/HTMLTokenizer.cpp: One of the benefits of the old array was that it never took up more memory than it needed to. So the tokenizer utilizes new member functions on NamedAttrMap (shrinkToLength and reserveCapacity) to try to keep memory usage at a minimum. (WebCore::Token::addAttribute): (WebCore::HTMLTokenizer::processToken):
08:21 Changeset [31059] by ddkilzer@apple.com
  • 1 edit in trunk/WebCore/ChangeLog

Fix typos.

08:19 Changeset [31058] by ddkilzer@apple.com
  • 2 edits in trunk/WebCore

BUILD FIX when ENABLE(MAC_JAVA_BINDINGS) set to 0.

  • page/mac/FrameMac.mm: Move up #if ENABLE(MAC_JAVA_BINDINGS) guard to comment out unused code.
07:59 Changeset [31057] by ap@webkit.org
  • 4 edits in trunk/JavaScriptCore

Reviewed by Darin.

Get rid of a localime() call on platforms that have better alternatives.

  • kjs/DateMath.h: Added getLocalTime();
  • kjs/DateMath.cpp: (KJS::getLocalTime): (KJS::getDSTOffsetSimple): Implementation moved from getDSTOffsetSimple().
  • kjs/date_object.cpp: (KJS::DateObjectImp::callAsFunction): Switched to getLocalTime().
07:34 Changeset [31056] by ddkilzer@apple.com
  • 26 edits
    1 add
    1 delete in trunk

JavaScriptCore:

Unify concept of enabling the Mac Java bridge.

Reviewed by Darin and Anders.

  • wtf/Platform.h: Define ENABLE_MAC_JAVA_BRIDGE here.

WebCore:

Unify concept of enabling the Mac Java bridge.

Reviewed by Darin and Anders.

No test cases added since there is no change in functionality.

  • DerivedSources.make: Added check for ENABLE_MAC_JAVA_BRIDGE macro. If defined as "1", add WebCore.JNI.exp to WEBCORE_EXPORT_DEPENDENCIES.
  • WebCore.JNI.exp: Added.
  • WebCore.base.exp: Moved exported JNI methods to WebCore.JNI.exp.
  • bridge/jni/jni_class.cpp: Added #if ENABLE(MAC_JAVA_BRIDGE) guard.
  • bridge/jni/jni_class.h: Ditto.
  • bridge/jni/jni_instance.cpp: Ditto.
  • bridge/jni/jni_instance.h: Ditto.
  • bridge/jni/jni_jsobject.cpp: Ditto.
  • bridge/jni/jni_jsobject.h: Ditto.
  • bridge/jni/jni_objc.mm: Ditto.
  • bridge/jni/jni_runtime.cpp: Ditto.
  • bridge/jni/jni_runtime.h: Ditto.
  • bridge/jni/jni_utility.cpp: Ditto.
  • bridge/jni/jni_utility.h: Ditto.
  • bridge/runtime.cpp: Removed unused #include statements.
  • bridge/runtime.h: (KJS::Bindings::Instance::BindingLanguage): Added #if ENABLE(MAC_JAVA_BRIDGE) guard for JavaLanguage enum. Also added #if PLATFORM(MAC) guard for ObjectiveCLanguage enum to match corresponding code in runtime.cpp.
  • config.h: Removed definition of HAVE_JNI.
  • loader/FrameLoaderClient.h: (WebCore::FrameLoaderClient::javaApplet): Added #if ENABLE(MAC_JAVA_BRIDGE) guard.
  • page/Frame.cpp: (WebCore::Frame::Frame): Ditto.
  • page/Frame.h: (WebCore::Frame::initJavaJSBindings): Ditto.
  • page/mac/FrameMac.mm: (WebCore::Frame::createScriptInstanceForWidget): Ditto. (WebCore::Frame::initJavaJSBindings): Ditto.

WebKit/mac:

Unify concept of enabling the Mac Java bridge.

Reviewed by Darin and Anders.

  • Plugins/WebPluginJava.h: Removed unused file.
  • WebCoreSupport/WebFrameLoaderClient.h: (WebFrameLoaderClient::javaApplet): Added #if ENABLE(MAC_JAVA_BRIDGE) guard.
  • WebCoreSupport/WebFrameLoaderClient.mm: Ditto for #import and NSView SPI method. (WebFrameLoaderClient::javaApplet): Ditto.
01:09 Changeset [31055] by hausmann@webkit.org
  • 2 edits in trunk/WebKit/qt

Fix the Qt build.

00:13 Changeset [31054] by darin@apple.com
  • 3 edits in trunk/WebCore
  • html/PreloadScanner.h: Corrected license.
  • html/PreloadScanner.cpp: Corrected license.

03/13/08:

23:22 Developer Tools Hitlist edited by aroben@apple.com
(diff)
21:40 Changeset [31053] by pewtermoose@webkit.org
  • 2 edits in trunk/WebKitTools

2008-03-13 Brent Fulgham <bfulgham@gmail.com>

Reviewed by Darin.

Correct paths to vsprops files so they use the environment
variable, rather than hard-coded path.
http://bugs.webkit.org/show_bug.cgi?id=17797.

  • WinLauncher/WinLauncher.vcproj: Correct paths to vsprops.
21:19 Changeset [31052] by eric@webkit.org
  • 2 edits in trunk/WebCore

Reviewed by darin. Landed by eseidel.

  • platform/FloatConversion.h: Include a header to get CoreGraphics types when using CoreGraphics types.
21:19 Changeset [31051] by eric@webkit.org
  • 4 edits in trunk/WebCore

Reviewed by eseidel. Landed by eseidel.

  • WebCore.xcodeproj/project.pbxproj:
  • css/CSSParser.cpp:
  • css/makeprop.pl: Move CSSPropertyNames.c to CSSPropertyNames.cpp
20:47 Changeset [31050] by eric@webkit.org
  • 2 edits in trunk/WebCore

Reviewed by eseidel. Landed by eseidel.

  • platform/Arena.h: Use statement1;statement2 instead of (statement1,statement2) in CLEAR_UNUSED.
20:44 Changeset [31049] by eric@webkit.org
  • 2 edits in trunk/JavaScriptCore

Reviewed by eseidel. Landed by eseidel.

  • wtf/FastMalloc.cpp: #include <wtf/HashSet.h> outside of any namespaces.
20:43 Changeset [31048] by eric@webkit.org
  • 3 edits in trunk/JavaScriptCore

Reviewed by eseidel. Landed by eseidel

  • pcre/pcre_exec.cpp: Fix misnamed variable, allowing -DDEBUG build to succeed.
  • wtf/ThreadingPthreads.cpp: #include <sys/time.h> for gettimeofday in non-pch build.
20:07 Changeset [31047] by antti@apple.com
  • 4 edits in trunk/LayoutTests

Reviewed by Mitz.


Update test results for the preload patch. Load order for some resources changed,
this does not affect the substance of these tests.

  • platform/mac-leopard/security/block-test-expected.txt:
  • security/block-test-expected.txt:
  • webarchive/loading/cache-expired-subresource-expected.txt:
19:47 Changeset [31046] by alp@webkit.org
  • 2 edits in trunk/WebCore

2008-03-13 Tommi Komulainen <tommi.komulainen@iki.fi>

Reviewed by Alp Toker.

http://bugs.webkit.org/show_bug.cgi?id=17821
[SOUP] POST requests are empty

Send the HTTP request body as well.

  • platform/network/soup/ResourceHandleSoup.cpp: (WebCore::ResourceHandle::start):
16:16 Changeset [31045] by timothy@apple.com
  • 1 edit in trunk/WebCore/WebCore.xcodeproj/project.pbxproj

Fix the build.

15:14 Changeset [31044] by mitz@apple.com
  • 3 edits
    4 adds in trunk

WebCore:

Reviewed by Dave Hyatt.

Test: fast/table/border-collapsing/equal-precedence-resolution.html

  • rendering/RenderTableCell.cpp: (WebCore::RenderTableCell::collapsedLeftBorder): When calling compareBorders() with borders that may have the same precedence, made sure to pass the border belonging to the earlier (in document order) element first, since compareBorders() prefers the first argument when there is a tie. (WebCore::RenderTableCell::collapsedRightBorder): Ditto. (WebCore::RenderTableCell::collapsedTopBorder): Ditto.

LayoutTests:

Reviewed by Dave Hyatt.

  • fast/table/border-collapsing/equal-precedence-resolution.html: Added.
  • platform/mac/fast/table/border-collapsing/equal-precedence-resolution-expected.checksum: Added.
  • platform/mac/fast/table/border-collapsing/equal-precedence-resolution-expected.png: Added.
  • platform/mac/fast/table/border-collapsing/equal-precedence-resolution-expected.txt: Added.
15:07 Changeset [31043] by aroben@apple.com
  • 2 edits in trunk/WebKit/win

Another Windows build fix after r31034

  • WebKitDLL.cpp: (loadResourceIntoBuffer): Use SharedBuffer::create.
14:40 Changeset [31042] by aroben@apple.com
  • 5 edits in trunk

Build fixes after r31034

WebCore:

wx build fix and Windows leak fix after r31034

  • platform/graphics/wx/ImageWx.cpp: (WebCore::Image::loadPlatformResource): Use SharedBuffer::create.
  • platform/win/SharedBufferWin.cpp: (WebCore::SharedBuffer::createWithContentsOfFile): Ditto (we were leaking the SharedBuffer here before).

WebKit/win:

Windows build fix after r31034

  • WebFrame.cpp: (WebFrame::loadData): Use SharedBuffer::create. (WebFrame::loadHTMLString): Ditto.
14:31 Changeset [31041] by antti@apple.com
  • 3 edits in trunk/WebCore

Reviewed by Eric.

Correct a few issues spotted by Mike Belshe.

  • html/PreloadScanner.cpp: (WebCore::PreloadScanner::tokenize):
  • loader/loader.cpp: (WebCore::Loader::cancelRequests):
14:26 Changeset [31040] by aroben@apple.com
  • 4 edits in trunk

Fix GTK+ build for SharedBuffer changes.

WebCore:

2008-03-13 Rodney Dawes <dobey@wayofthemonkey.com>

Fix GTK+ build for SharedBuffer changes.

  • platform/graphics/gtk/ImageGtk.cpp: (Image::loadPlatformResource):

WebKit/gtk:

2008-03-13 Rodney Dawes <dobey@wayofthemonkey.com>

Fix GTK+ build for SharedBuffer changes.

  • webkit/webkitwebview.cpp: (webkit_web_view_load_string):
14:24 Changeset [31039] by sfalken@apple.com
  • 5 edits
    1 delete in trunk

WebCore:

More PGO build fixes.

  • WebCorePrefix.cpp:

WebKit/win:

More PGO build fixes.

  • WebKit.vcproj/WebKit.pgd: Removed.
  • WebKit.vcproj/WebKit.vcproj:
  • WebKitPrefix.cpp:
14:20 Changeset [31038] by antti@apple.com
  • 16 edits
    3 adds in trunk

WebCore:

Reviewed by Darin.


Make page loads go fast.


http://bugs.webkit.org/show_bug.cgi?id=17480

  • Implement speculative preloading. When a script load blocks the main parser, use a side parser to pick up more resources.
  • Implement per-host load queues, prioritize scripts and stylesheets over images.


Depending on content and network latency this may speed things up quite a bit.

  • WebCore.xcodeproj/project.pbxproj:
  • dom/Document.cpp: (WebCore::Document::implicitClose): Clear the preloads after laoding completes.


  • html/HTMLLinkElement.cpp: (WebCore::HTMLLinkElement::parseMappedAttribute): (WebCore::HTMLLinkElement::tokenizeRelAttribute):
  • html/HTMLLinkElement.h: Make tokenizeRelAttribute() public static so it can be used from elsewhere. Eliminate a pointless bitfield so I can get references.


  • html/HTMLTokenizer.cpp: (WebCore::HTMLTokenizer::scriptHandler): (WebCore::HTMLTokenizer::scriptExecution): (WebCore::HTMLTokenizer::write):
  • html/HTMLTokenizer.h: Spin up the preload scanner whenever a script load blocks the parser. One scanner tracks the end of the document while temporary ones are created as needed to scan document.write() output.


  • html/PreloadScanner.cpp: Added. (WebCore::PreloadScanner::PreloadScanner): (WebCore::PreloadScanner::~PreloadScanner): (WebCore::PreloadScanner::begin): (WebCore::PreloadScanner::end): (WebCore::PreloadScanner::reset): (WebCore::PreloadScanner::write): (WebCore::isWhitespace): (WebCore::PreloadScanner::clearLastCharacters): (WebCore::PreloadScanner::rememberCharacter): (WebCore::PreloadScanner::lastCharactersMatch): (WebCore::legalEntityFor): (WebCore::PreloadScanner::consumeEntity): (WebCore::PreloadScanner::tokenize): (WebCore::PreloadScanner::processAttribute): (WebCore::PreloadScanner::emitCharacter): (WebCore::PreloadScanner::tokenizeCSS): (WebCore::PreloadScanner::emitTag): (WebCore::PreloadScanner::emitCSSRule):
  • html/PreloadScanner.h: Added. (WebCore::PreloadScanner::inProgress): (WebCore::PreloadScanner::): HTML5 tokenization plus some glue code. Fake CSS parsing thrown in just for fun.


  • loader/Cache.cpp: (WebCore::Cache::pruneDeadResources): Preloads have zero refcount, avoid kicking them out too early.


  • loader/CachedResource.cpp: (WebCore::CachedResource::CachedResource): (WebCore::CachedResource::ref):
  • loader/CachedResource.h: (WebCore::CachedResource::): (WebCore::CachedResource::preloadResult): (WebCore::CachedResource::setRequestedFromNetworkingLayer): (WebCore::CachedResource::canDelete): (WebCore::CachedResource::isPreloaded): (WebCore::CachedResource::increasePreloadCount): (WebCore::CachedResource::decreasePreloadCount): Keep track which resources are preloads. Avoid deleting them. Track at which point of the loading preloads get utilized to enable some interesting statistics.


  • loader/DocLoader.cpp: (WebCore::DocLoader::~DocLoader): (WebCore::DocLoader::checkForReload): (WebCore::DocLoader::registerPreload): (WebCore::DocLoader::clearPreloads): (WebCore::DocLoader::printPreloadStats):
  • loader/DocLoader.h: Ensure we utilize preloaded resources during reloads. Keep a list of all preloads in the document. Clear the preloads after parsing is complete. Some debug statistics.


  • loader/DocumentLoader.cpp: (WebCore::DocumentLoader::isLoadingInAPISense): Avoid signaling that loading is complete too early.


  • loader/loader.cpp: (WebCore::Loader::Loader): (WebCore::Loader::~Loader): (WebCore::Loader::determinePriority): (WebCore::Loader::load): (WebCore::Loader::scheduleServePendingRequests): (WebCore::Loader::requestTimerFired): (WebCore::Loader::servePendingRequests): (WebCore::Loader::cancelRequests): (WebCore::Loader::Host::Host): (WebCore::Loader::Host::~Host): (WebCore::Loader::Host::addRequest): (WebCore::Loader::Host::hasRequests): (WebCore::Loader::Host::servePendingRequests): (WebCore::Loader::Host::didFinishLoading): (WebCore::Loader::Host::didFail): (WebCore::Loader::Host::didReceiveResponse): (WebCore::Loader::Host::didReceiveData): (WebCore::Loader::Host::cancelPendingRequests): (WebCore::Loader::Host::cancelRequests):
  • loader/loader.h: (WebCore::Loader::): Distribute load requests to per-host priority queues. Limit the number of loads issued to the networking layer so we have better changes of getting important requests through first. Prioritize scripts > stylesheets > images.

WebKit/mac:

Reviewed by Darin.

  • ForwardingHeaders/wtf/Deque.h: Added.
14:01 Changeset [31037] by hyatt@apple.com
  • 8 edits in trunk/WebCore

This patch makes full page zoom work pretty well. It fixes repainting so that it works when transforms
are set on the RenderView. It also implements the "smart layout" behavior that other browsers support when
zooming. The page will still try to constrain to the viewport size even when zoomed.

Reviewed by john

  • dom/Document.cpp: (WebCore::Document::recalcStyle): Make sure to test for transform changes even when there is no zoom. This fixes repainting issues caused by jumping from a zoomed state back to the standard size.
  • page/FrameView.cpp: (WebCore::FrameView::adjustViewSize): Adjust for the zoom factor (the render tree is in unzoomed coordinates, but the scrollbars of the view need to handle zoomed coordinates).
  • rendering/RenderBox.cpp: (WebCore::RenderBox::calcHeight): Fix the body-sizing-to-the-view-height quirk so that it takes the zoom factor into account when stretching to fill the viewport.
  • rendering/RenderLayer.cpp: (WebCore::RenderLayer::updateLayerPositions): (WebCore::RenderLayer::setHasVisibleContent): Remove the FIXMEs now that absoluteClippedOverflowRect works with transforms on the RenderView.
  • rendering/RenderView.cpp: (WebCore::RenderView::calcHeight): (WebCore::RenderView::calcWidth): Make sure the calculated width/height take the zoom factor into account in order to get the "smart layout" behavior.

(WebCore::RenderView::layout):
When deciding whether children have to get a relayout, we need to check the zoomed width/height and not just
the viewport size.

(WebCore::RenderView::computeAbsoluteRepaintRect):
Patched to take into account transforms set on the RenderView.

(WebCore::RenderView::docHeight):
(WebCore::RenderView::docWidth):
Patched to just always use m_width and m_height initially, since those have already been adjusted for
the zoom factor.

(WebCore::RenderView::zoomedHeight):
(WebCore::RenderView::zoomedWidth):

  • rendering/RenderView.h: New helper methods for obtaining the adjusted width/height of the viewport taking into account the zoom factor.
13:02 Changeset [31036] by andersca@apple.com
  • 2 edits in trunk/WebCore

Build fix.

  • WebCore.base.exp:
12:08 Changeset [31035] by andersca@apple.com
  • 8 edits in trunk

WebCore:

Reviewed by Adam.

Get rid of actualRequest, it is not used anymore. Also, get rid of
initialRequest and replace all uses with originalRequest because those are
the same thing.


  • loader/DocumentLoader.cpp:
  • loader/DocumentLoader.h:
  • loader/FrameLoader.cpp: (WebCore::FrameLoader::initialRequest): (WebCore::FrameLoader::originalRequestURL):

WebKit/mac:

Reviewed by Adam.

Call originalRequest, not initialRequest.


  • WebView/WebDataSource.mm: (-[WebDataSource initialRequest]):

WebKit/win:

Reviewed by Adam.

Call originalRequest instead of initialRequest.


  • WebDataSource.cpp: (WebDataSource::initialRequest):
12:00 Changeset [31034] by beidson@apple.com
  • 8 edits in trunk/WebCore

Reviewed by Anders

Convert SharedBuffer to start with a refCount of 1

  • loader/ImageDocument.cpp: (WebCore::ImageTokenizer::finish):
  • loader/ResourceLoader.cpp: (WebCore::ResourceLoader::addData): (WebCore::ResourceLoader::willStopBufferingData):
  • loader/icon/IconDatabase.cpp: (WebCore::IconDatabase::defaultIcon): (WebCore::IconDatabase::getImageDataForIconURLFromSQLDatabase):
  • loader/loader.cpp: (WebCore::Loader::didReceiveData):
  • platform/SharedBuffer.h: (WebCore::SharedBuffer::create): Make all constructors private, add ::create() calls
  • platform/SharedBuffer.cpp: (WebCore::SharedBuffer::SharedBuffer): Revert to default RefCounted constructor to start with a ref count of 1 (WebCore::SharedBuffer::copy):
  • platform/mac/SharedBufferMac.mm: (WebCore::SharedBuffer::wrapNSData): (WebCore::SharedBuffer::SharedBuffer): Revert to default RefCounted constructor to start with a ref count of 1
11:42 BuildingOnWindows edited by aroben@apple.com
Removed note about PGO (this was fixed in r31033) (diff)
11:37 Changeset [31033] by sfalken@apple.com
  • 6 edits in trunk

JavaScriptCore:

PGO build fixes.


Disable PGO for normal release builds.
Added work-in-progress Release_PGOInstrument/Release_PGOOptimize targets.

WebCore:

PGO build fixes.


Disable PGO for normal release builds.
Added work-in-progress Release_PGOInstrument/Release_PGOOptimize targets.

  • WebCore.vcproj/WebCore.vcproj:

WebKit/win:

PGO build fixes.


Disable PGO for normal release builds.
Added work-in-progress Release_PGOInstrument/Release_PGOOptimize targets.

  • WebKit.vcproj/WebKit.vcproj:
11:32 Changeset [31032] by bdakin@apple.com
  • 2 edits in trunk/JavaScriptCore

Reviewed by Geoff.

Adding new functionality to Vector. Currently all of the shrink and
resize functions on Vector only shrink the size of the Vector, not
the capacity. For the Vector to take up as little memory as
possible, though, it is necessary to be able to shrink the capacity
as well. So this patch adds that functionality.

I need this for a speed up I am working on, and Geoff wants to use
it in a speed up he is working on also, so he asked me to commit it
now.

  • wtf/Vector.h: (WTF::VectorBufferBase::allocateBuffer): (WTF::::shrinkCapacity):
11:18 Changeset [31031] by andersca@apple.com
  • 3 edits in trunk/WebCore

Reviewed by Darin.

Make a bunch of DocumentLoader setters/getters inline.


  • loader/DocumentLoader.cpp:
  • loader/DocumentLoader.h: (WebCore::DocumentLoader::isStopping): (WebCore::DocumentLoader::setCommitted): (WebCore::DocumentLoader::isCommitted): (WebCore::DocumentLoader::isLoading): (WebCore::DocumentLoader::setLoading): (WebCore::DocumentLoader::response): (WebCore::DocumentLoader::mainDocumentError): (WebCore::DocumentLoader::setResponse): (WebCore::DocumentLoader::isClientRedirect): (WebCore::DocumentLoader::setIsClientRedirect): (WebCore::DocumentLoader::overrideEncoding): (WebCore::DocumentLoader::responses): (WebCore::DocumentLoader::triggeringAction): (WebCore::DocumentLoader::setTriggeringAction): (WebCore::DocumentLoader::setOverrideEncoding): (WebCore::DocumentLoader::setLastCheckedRequest): (WebCore::DocumentLoader::lastCheckedRequest): (WebCore::DocumentLoader::title): (WebCore::DocumentLoader::setLoadingFromCachedPage): (WebCore::DocumentLoader::isLoadingFromCachedPage):
09:17 Changeset [31030] by hausmann@webkit.org
  • 2 edits in trunk/JavaScriptCore

Attempt at fixing the Qt/Windows build bot. Quote using double-quotes
instead of single quotes.

08:19 Changeset [31029] by aroben@apple.com
  • 2 edits in trunk/WebCore

2008-03-13 Rodney Dawes <dobey@wayofthemonkey.com>

Fix builds without SVG enabled.

  • page/Frame.cpp: (Frame::shouldApplyTextZoom): (Frame::shouldApplyPageZoom):
07:49 Changeset [31028] by darin@apple.com
  • 15 edits in trunk/WebKit/mac

Reviewed by John Sullivan.

  • cleanup after removing the bridge
  • DOM/WebDOMOperations.mm: (-[DOMDocument URLWithAttributeString:]): Call computeURL directly.
  • Misc/WebCoreStatistics.mm: (-[WebFrame renderTreeAsExternalRepresentation]): Call externalRepresentation directly.
  • Plugins/WebBaseNetscapePluginView.mm: (-[WebBaseNetscapePluginView loadPluginRequest:]): Use core function instead of _frameLoader method. (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:sendNotification:]): Ditto.
  • Plugins/WebPluginController.mm: (-[WebPluginController webPlugInContainerLoadRequest:inFrame:]): Ditto.
  • WebCoreSupport/WebFrameLoaderClient.mm: (WebFrameLoaderClient::frameLoaderDestroyed): Added a call to the new _clearCoreFrame method. Without this we could leave a stale frame pointer around. (WebFrameLoaderClient::dispatchDidReceiveIcon): Rewrote assertion so it's not the single caller of the _isMainFrame method. (WebFrameLoaderClient::transitionToCommittedForNewPage): Use core function instead of _frameLoader method. (WebFrameLoaderClient::createFrame): Moved code here from _addChild.
  • WebView/WebFrame.mm: Removed lots of methods. Some were moved elsewhere, others turned out to be unused. (core): Added overload for DocumentFragment. (kit): Ditto. (-[WebFrame _loadURL:referrer:intoChild:]): Get to Frame using _private->coreFrame and to FrameLoader with _private->coreFrame->loader(). (-[WebFrame _attachScriptDebugger]): Ditto. (-[WebFrame _clearCoreFrame]): Added. (-[WebFrame _updateBackground]): More of the same. (-[WebFrame _unmarkAllBadGrammar]): Ditto. (-[WebFrame _unmarkAllMisspellings]): Ditto. (-[WebFrame _hasSelection]): Ditto. (-[WebFrame _atMostOneFrameHasSelection]): Ditto. (-[WebFrame _findFrameWithSelection]): Ditto. (-[WebFrame _dataSource]): Ditto. (-[WebFrame _addData:]): Streamlined code a bit. (-[WebFrame _replaceSelectionWithText:selectReplacement:smartReplace:]): Ditto. (-[WebFrame _receivedData:textEncodingName:]): Ditto. (-[WebFrame _isDescendantOfFrame:]): Ditto. (-[WebFrame _bodyBackgroundColor]): Ditto. (-[WebFrame _isFrameSet]): Ditto. (-[WebFrame _firstLayoutDone]): Ditto. (-[WebFrame _loadType]): Ditto. (-[WebFrame _isDisplayingStandaloneImage]): Ditto. (-[WebFrame name]): Ditto. (-[WebFrame DOMDocument]): Ditto. (-[WebFrame frameElement]): Ditto. (-[WebFrame provisionalDataSource]): Ditto. (-[WebFrame dataSource]): Ditto. (-[WebFrame loadRequest:]): Ditto. (-[WebFrame _loadData:MIMEType:textEncodingName:baseURL:unreachableURL:]): Ditto. (-[WebFrame loadArchive:]): Ditto. (-[WebFrame stopLoading]): Ditto. (-[WebFrame reload]): Ditto. (-[WebFrame findFrameNamed:]): Ditto. (-[WebFrame parentFrame]): Ditto. (-[WebFrame childFrames]): Ditto. (-[WebFrame windowObject]): Ditto. (-[WebFrame globalContext]): Ditto.
  • WebView/WebFrameInternal.h: Added overloads of core and kit. Removed method declarations.
  • WebView/WebHTMLRepresentation.mm: (-[WebHTMLRepresentation documentSource]): Moved code here from WebFrame. (formElementFromDOMElement): Ditto. (-[WebHTMLRepresentation elementWithName:inForm:]): Ditto. (inputElementFromDOMElement): Ditto. (-[WebHTMLRepresentation elementDoesAutoComplete:]): Ditto. (-[WebHTMLRepresentation elementIsPassword:]): Ditto. (-[WebHTMLRepresentation formForElement:]): Ditto. (-[WebHTMLRepresentation currentForm]): Ditto. (-[WebHTMLRepresentation controlsInForm:]): Ditto. (-[WebHTMLRepresentation searchForLabels:beforeElement:]): Ditto. (-[WebHTMLRepresentation matchLabels:againstElement:]): Ditto.
  • WebView/WebHTMLView.mm: (-[WebHTMLView _frameOrBoundsChanged]): Moved sendScrollEvent code here from WebFrame. (-[WebHTMLView _documentFragmentFromPasteboard:forType:inContext:subresources:]): Call createFragmentFromText directly instead of via WebFrame. (-[WebHTMLView layoutToMinimumPageWidth:maximumPageWidth:adjustingViewSize:]): Moved layout calls here from WebFrame. (-[WebHTMLView adjustPageHeightNew:top:bottom:limit:]): Ditto. (-[WebHTMLView _updateFontPanel]): Ditto, but with fontForSelection. (-[WebHTMLView _canSmartCopyOrDelete]): Ditto, but with selectionGranularity. (-[WebHTMLView markedRange]): Moved code here from _markedTextNSRange. (-[WebHTMLView attributedSubstringFromRange:]): Tweaked code a bit. (-[WebHTMLView searchFor:direction:caseSensitive:wrap:startInSelection:]): Moved code here from WebFrame. (-[WebHTMLView elementAtPoint:allowShadowContent:]): Ditto. (-[WebHTMLView markAllMatchesForText:caseSensitive:limit:]): Ditto. (-[WebHTMLView setMarkedTextMatchesAreHighlighted:]): Ditto. (-[WebHTMLView markedTextMatchesAreHighlighted]): Ditto. (-[WebHTMLView unmarkAllTextMatches]): Ditto. (-[WebHTMLView rectsForTextMatches]): Ditto.
  • WebView/WebHTMLViewInternal.h: Removed unused method declarations.
  • WebView/WebPDFView.mm: (-[WebPDFView PDFViewWillClickOnLink:withURL:]): Use core function instead of _frameLoader method.
  • WebView/WebRenderNode.mm: (copyRenderNode): Moved code here from WebFrame. (-[WebRenderNode initWithWebFrameView:]): Ditto.
  • WebView/WebResource.mm: (-[WebResource _stringValue]): Moved code here from WebFrame.
  • WebView/WebView.mm: (-[WebView _close]): Use core function intsead of _frameLoader method. (-[WebView setCustomTextEncodingName:]): Ditto. (-[WebView setHostWindow:]): Moved code here from WebFrame. (aeDescFromJSValue): Moved this here from WebFrame. (-[WebView aeDescByEvaluatingJavaScriptFromString:]): Moved code here from WebFrame.
05:17 Changeset [31027] by hausmann@webkit.org
  • 7 edits in trunk

Fix the Qt build.

01:51 QtWebKitContrib edited by tavestbo@trolltech.com
(diff)
01:50 QtWebKitContrib edited by tavestbo@trolltech.com
(diff)
00:11 Changeset [31026] by weinig@apple.com
  • 2 edits in trunk/WebCore

Reviewed by Darin Adler.

Fix <rdar://problem/5784773>
Crash loading QT movies @ apple.com/ipodtouch/features.html with a PAC file (WebKitThreadingException)

Make bridged RuntimeObjects get collected on the main thread only. This is necessary
because clients of the bridged objects are unlikely to prepared for a collection on
non-main thread, which can happen with a PAC file.

  • bridge/runtime_object.cpp: (RuntimeObjectImp::RuntimeObjectImp):
Note: See TracTimeline for information about the timeline view.