Timeline


and

04/09/07:

18:36 Known incompatibilities between open-source WebKit and Safari edited by bdash@webkit.org
(diff)
18:05 Changeset [20815] by adele
  • blog/wp-content/chrome.jpg: Added.
17:55 Changeset [23250] by beidson

Build fix for my recent OpenSource checkin

17:06 Changeset [20814] by andersca

WebCore:

Reviewed by John.

  • WebCore.exp: Add ZNK7WebCore11FrameLoader10isCompleteEv.

WebKit:

Reviewed by John.

<rdar://problem/5081860>
REGRESSION: Select All for standalone image has no visible effect but does change state


<rdar://problem/5081840>
REGRESSION: context menu in white space beyond standalone image is different after Select All


Have validateUserInterface emulate the old behavior for full-frame images and plugins, which is:


  • For full-frame plugins, always return false.
  • For images, only return true if the selector is copy: and the image has finished loading.


  • WebView/WebHTMLView.mm: (-[WebHTMLView validateUserInterfaceItem:]):
17:00 Changeset [20813] by beidson

LayoutTests:

Reviewed by Darin

Layout test for the fix for <rdar://4921797> and http://bugs.webkit.org/show_bug.cgi?id=12005

  • http/tests/navigation/multiple-back-forward-entries-expected.txt: Added.
  • http/tests/navigation/multiple-back-forward-entries.html: Added.
  • http/tests/navigation/resources/slow-resource.pl: Added.

WebCore:

Reviewed by Darin

Fixes <rdar://4921797> and http://bugs.webkit.org/show_bug.cgi?id=12005

The original regression was to claim that more loads were the result of a "user gesture" than really
were. A lot of the ways a frame load could be kicked off didn't properly set up this flag, and it
wasn't properly propagated and respected where it should've been.

This patch cleans much of that up. One loose end is the "treatAsUserGesture" flag which is a stop
gap measure to keep "slow redirects" working to create a new history item. In the future, we need
to cleanup the meaning and use of "userGesture" and "lockHistory." This includes integrating them
in to FrameLoadRequest and being very clear of what their meaning actually is at different stages of
the Frame load process.

  • dom/Document.cpp: (WebCore::Document::processHttpEquiv): Pass only the delay for the redirect
  • html/HTMLAnchorElement.cpp: (WebCore::HTMLAnchorElement::defaultEventHandler): Pass "lockHistory" false, "userGesture" true
  • ksvg2/svg/SVGAElement.cpp: (WebCore::SVGAElement::defaultEventHandler): Pass "lockHistory" false, "userGesture" true
  • loader/FrameLoader.cpp: (WebCore::ScheduledRedirection::ScheduledRedirection): Figure "lockHistory" and "userGesture" from the delay here, instead of at 3 other different sites that call this method (WebCore::FrameLoader::changeLocation): Set userGesture correctly (WebCore::FrameLoader::urlSelected): Propagate userGesture down (WebCore::FrameLoader::requestFrame): (WebCore::FrameLoader::receivedFirstData): (WebCore::FrameLoader::scheduleRedirection): Pass only the delay here (WebCore::FrameLoader::redirectionTimerFired): Set userGesture correctly (WebCore::FrameLoader::load): (WebCore::FrameLoader::updateHistoryForInternalLoad): Insteading of asserting we aren't a redirect, handle the case where we *are* a redirect by updating the previous history item
  • loader/FrameLoader.h:
16:31 Changeset [20812] by andersca

Reviewed by Darin.

<rdar://problem/5026893>
REGRESSION: "Mail Contents of this Page" for standalone image in Safari results in a broken image in Mail


  • WebView/WebFrame.mm: (-[WebFrame DOMDocument]): We can't check for _isHTMLDocument here since image and plugin documents inherit from HTMLDocument. Instead, check for those two document types explicitly.
15:52 Changeset [20811] by andersca

Reviewed by Geoff, Ada and John.

<rdar://problem/4600978> Would like a way to test whether a WebView is displaying a standalone image

  • WebView/WebFrame.mm: (-[WebFrame _isDisplayingStandaloneImage]):
  • WebView/WebFramePrivate.h: Add _isDisplayingStandaloneImage SPI.
15:30 Changeset [23249] by thatcher

Merge in r20810.

<rdar://problem/5121757> WebInspector focuses elements on mouse up instead of mouse down

Make selecting a tree node happen on mousedown to match the NSOutlineView behavior.
Also makes selecting rows in the style pane happen on mousedown for consistency.

15:14 Changeset [20810] by thatcher

Make selecting a tree node happen on mousedown to match the NSOutlineView behavior. Also makes selecting rows in the style pane happen on mousedown for consistency.

15:11 Changeset [20809] by andersca

Add bug number to ChangeLog.

13:07 Changeset [20808] by justing

Reviewed by ggaren


These were never checked in:

  • editing/pasteboard/drag-image-to-contenteditable-in-iframe-expected.checksum: Added.
  • editing/pasteboard/drag-image-to-contenteditable-in-iframe-expected.png: Added.


New results were never checked in after some selection
gap filling fixes:

  • editing/style/remove-underline-across-paragraph-expected.checksum:
  • editing/style/remove-underline-across-paragraph-expected.png:
  • editing/style/remove-underline-across-paragraph-in-bold-expected.checksum:
  • editing/style/remove-underline-across-paragraph-in-bold-expected.png:
  • editing/style/style-3690704-fix-expected.checksum:
  • editing/style/style-3690704-fix-expected.png:
  • editing/style/table-selection-expected.checksum:
  • editing/style/table-selection-expected.png:
  • editing/undo/4063751-expected.checksum:
  • editing/undo/4063751-expected.png:
  • editing/style/apple-style-editable-mix-expected.checksum:
  • editing/style/apple-style-editable-mix-expected.png:
  • editing/inserting/paragraph-separator-in-table-1-expected.checksum:
  • editing/inserting/paragraph-separator-in-table-1-expected.png:
  • editing/inserting/paragraph-separator-in-table-2-expected.checksum:
  • editing/inserting/paragraph-separator-in-table-2-expected.png:


Checking in incorrect results and adding a FIXME that references the
bug that this test demonstrates:

  • editing/style/smoosh-styles-003-expected.checksum:
  • editing/style/smoosh-styles-003-expected.png:
  • editing/style/smoosh-styles-003-expected.txt:
  • editing/style/smoosh-styles-003.html:


Misspelling marker correctly removed:

  • editing/deleting/delete-to-select-table-expected.checksum:
  • editing/deleting/delete-to-select-table-expected.png:


Horizontal rules and parts of table borders were made very slightly
darker, and these results were never updated:

  • editing/inserting/4278698-expected.checksum:
  • editing/inserting/4278698-expected.png:
  • editing/unsupported-content/table-type-after-expected.checksum:
  • editing/unsupported-content/table-type-after-expected.png:
  • editing/unsupported-content/table-type-before-expected.checksum:
  • editing/unsupported-content/table-type-before-expected.png:
  • editing/deleting/table-cells-expected.checksum:
  • editing/deleting/table-cells-expected.png:
12:51 Changeset [20807] by andersca

Reviewed by Mitz.

  • plugins/resources/open-and-close-window-with-plugin.html: Try to fix the ASSERT on the build bot by scheduling a timeout that schedules a timeout.
11:48 Changeset [20806] by spadma

raalexan, reviewed by <spadma>

DESC: removed the webkit warnings
http://bugs.webkit.org/show_bug.cgi?id=13143

  • BrowserView/src/PluginContentPlayer.cpp:
  • BrowserView/src/WebKitLoader.cpp:
  • BrowserView/src/WebKitView.cpp:
  • ResourceLoader/CacheSrc/HttpCacheManager.cpp:
11:40 Changeset [23248] by aroben

Fixed copyrights.

  • WebInspector/WebInspector.cpp:
  • WebInspector/WebInspector.h:
11:19 Changeset [20805] by andersca

LayoutTests:

Reviewed by Darin.


<rdar://problem/5120801>
http://bugs.webkit.org/show_bug.cgi?id=13247
Closing a page during slow cloning causes crash in setJSStatusBarText (13247)


  • fast/dom/Window/setting-properties-on-closed-window-expected.txt: Added.
  • fast/dom/Window/setting-properties-on-closed-window.html: Added.

WebCore:

Reviewed by Darin.

<rdar://problem/5120801>
http://bugs.webkit.org/show_bug.cgi?id=13247
Closing a page during slow cloning causes crash in setJSStatusBarText (13247)

  • bindings/js/kjs_window.cpp: (KJS::Window::put): Return early if m_frame is null. A closed window only has one property, "closed" so no properties should be settable in that case.
11:13 Changeset [23247] by aroben

Reviewed by Oliver.

Fix two Web Inspector bugs:

  • The WebView wasn't focused when the inspector first appeared.
  • Resizing the upper pane did not resize the whole window.
  • WebInspector/WebInspector.cpp: (WebInspector::show): Focus the WebView. (WebInspector::setFrame): Implemented. (WebInspector::webViewFrame): Implemented.
  • WebInspector/WebInspector.h:
10:48 Changeset [20804] by spadma

borges, reviewed by <sachin>

DESC: Part of S60 task 15095: Removed exporting of header files RecentUrlStore.h. Moved all keys from BrowserUiInternalCRKeys.h to BrowserUiSDKCRKeys.h
http://bugs.webkit.org/show_bug.cgi?id=13310

  • BrowserView/src/WebKitControl.cpp:
  • Plugin/src/PluginSkin.cpp:
  • ResourceLoader/src/HttpLoaderAcceptHeader.cpp:
10:27 Changeset [23246] by aroben
  • WebInspector/WebInspector.cpp: (WebInspector::WebInspector): Removed two fixed FIXMEs and some commented-out code.
10:19 Changeset [23245] by aroben

Build fix.

  • platform/win/PasteboardWin.cpp: (WebCore::Pasteboard::writeImage):
07:33 Changeset [20803] by yongjzha

2007-04-05 winship <steven.winship@nokia.com>

Reviewed by Yongjun <yongjun.zhang@nokia.com>
DESC: ASAA-6Y2BLC - Crash when opening NT dialog twice

fix: set pointer to null so static data is re-initialized

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

WARNING: NO TEST CASES ADDED OR CHANGED

  • kwq/KWQTextCodec.cpp: (QTextCodec::PrepareForExit):
04:48 Changeset [20802] by andrew

2007-04-09 Andrew Wellington <proton@wiretapped.net>

Reviewed by Justin Garcia.


Layout test for http://bugs.webkit.org/show_bug.cgi?id=12959
"REGRESSION: Edit -> Copy not enabled on standalone images"

  • editing/pasteboard/copy-standalone-image-expected.checksum: Added.
  • editing/pasteboard/copy-standalone-image-expected.png: Added.
  • editing/pasteboard/copy-standalone-image-expected.txt: Added.
  • editing/pasteboard/copy-standalone-image.html: Added.

2007-04-09 Andrew Wellington <proton@wiretapped.net>

Reviewed by Justin Garcia.


Fix for http://bugs.webkit.org/show_bug.cgi?id=12959
"REGRESSION: Edit -> Copy not enabled on standalone images"

  • dom/Document.h: Add support for determining if a document is an image (WebCore::Document::isImageDocument):
  • editing/Editor.cpp: (WebCore::Editor::canCopy): Image documents are copyable (WebCore::Editor::copy): If copying an image document, call appropriate pasteboard methods
  • loader/ImageDocument.h: (WebCore::ImageDocument::isImageDocument): Override to return true for image documents
  • platform/Pasteboard.h: Add new writeImage function to pasteboard
  • platform/mac/PasteboardMac.mm: (WebCore::Pasteboard::writeImage): Add writeImage implementation that takes Node and URL
  • platform/qt/PasteboardQt.cpp: (WebCore::Pasteboard::writeImage): Stub for Qt implementation of pasteboard

04/08/07:

23:32 Changeset [23244] by aroben

When does "merge" != "merge"? When you make the change yourself
pre-emptively and make a typo.

23:32 Changeset [20801] by oliver

2007-04-08 Oliver Hunt <oliver@apple.com>

rs=Adam.

Add ASSERT(selectedRange) to previous change

  • platform/mac/PasteboardMac.mm: (WebCore::Pasteboard::writeSelection):
23:25 Changeset [23243] by aroben

Merge in r20800.

23:18 Changeset [20800] by thatcher

Use keyIdentifier instead of keyCode.

23:14 Changeset [20799] by oliver

2007-04-08 Oliver Hunt <oliver@apple.com>

rs=Adam.

Fix minor error when writing selection to pasteboard.
This shouldn't have an effect as selectedRange should be the
selected range from source frame, however this is safer.

  • platform/mac/PasteboardMac.mm: (WebCore::Pasteboard::writeSelection):
23:11 Changeset [20798] by hyatt

Fix mouseover/out failing layout tests.

Reviewed by aroben

  • page/EventHandler.cpp: (WebCore::EventHandler::handleMouseMoveEvent): (WebCore::EventHandler::updateMouseEventTargetNode): (WebCore::EventHandler::dispatchMouseEvent):
  • page/EventHandler.h:
22:50 Changeset [23242] by aroben

Merge in r20797.

22:49 Changeset [23241] by aroben

Merge in r20796.

22:46 Changeset [23240] by aroben

Reviewed by Anders.

<rdar://problem/5119804> Web Inspector isn't resizable
<rdar://problem/5119805> Can't move Web Inspector

  • WebInspector/WebInspector.cpp: (WebInspectorPrivate::WebInspectorPrivate): (WebInspector::WebInspector): Subclass the WebView so we can intercept its messages. (WebInspector::onDestroy): Undo the subclassing. (WebInspector::handleMessageSentToWebView): Added. (WebInspector::onLButtonDown): Added. (WebInspector::onLButtonUp): Added. (WebInspector::onMouseMove): Added. (WebInspectorWndProc): Added cases for mouse messages. (SubclassedWebViewWndProc): Added.
  • WebInspector/WebInspector.h:
22:04 Changeset [20797] by thatcher

Search comment nodes also.

21:51 Changeset [20796] by thatcher

A better Xpath query for the simple search case.

21:30 Changeset [20795] by oliver

2007-04-08 Oliver Hunt <oliver@apple.com>

Reviewed by Adam.

Fix for <rdar://problem/5113621> REGRESSION: Dragging PDF as image does not give any feedback

If we fail when attempting to create a drag image for a dragged
image, we fall back to the appropriate icon.

  • page/DragController.cpp: (WebCore::DragController::doImageDrag):
20:55 Changeset [23239] by aroben

Merge in r20793.

20:42 Changeset [23238] by aroben

Merge in r20792.

20:41 Changeset [23237] by aroben

Merge in r20791.

20:38 Changeset [23236] by aroben

Reviewed by Oliver.

Stubbed out Frame::dashboardRegionsChanged now that it's not
Mac-specific.

  • bridge/win/FrameWin.cpp: (WebCore::Frame::dashboardRegionsChanged):
20:32 Changeset [20794] by aroben

Reviewed by Oliver.

Bestowed the gift of -webkit-dashboard-region upon all platforms, since
there's nothing Mac-specific about it other than the name. This also
allowed me to get rid of FrameViewMac.mm.

Removed a lot of #if PLATFORM(MAC):

  • css/CSSComputedStyleDeclaration.cpp: (WebCore::): (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
  • css/CSSPrimitiveValue.cpp: (WebCore::CSSPrimitiveValue::CSSPrimitiveValue): (WebCore::CSSPrimitiveValue::cleanup): (WebCore::CSSPrimitiveValue::cssText):
  • css/CSSPrimitiveValue.h: (WebCore::CSSPrimitiveValue::getDashboardRegionValue): (WebCore::CSSPrimitiveValue::):
  • css/cssparser.cpp: (WebCore::CSSParser::parseValue): (WebCore::CSSParser::parseDashboardRegions):
  • css/cssparser.h:
  • css/cssstyleselector.cpp: (WebCore::CSSStyleSelector::applyProperty):
  • dom/Document.cpp: (WebCore::Document::Document):
  • dom/Document.h:
  • page/Frame.cpp: (WebCore::Frame::paint):
  • page/Frame.h:
  • page/FrameView.cpp: (WebCore::FrameView::layout): (WebCore::FrameView::updateDashboardRegions): Moved from FrameViewMac.mm.
  • page/FrameView.h:
  • page/qt/FrameQt.cpp: (WebCore::Frame::dashboardRegionsChanged): Stubbed out.
  • platform/gdk/FrameGdk.cpp: (WebCore::Frame::dashboardRegionsChanged): Ditto.
  • rendering/RenderLayer.cpp: (WebCore::RenderLayer::scrollToOffset): (WebCore::RenderLayer::setHasHorizontalScrollbar): (WebCore::RenderLayer::setHasVerticalScrollbar): (WebCore::RenderLayer::updateScrollInfoAfterLayout):
  • rendering/RenderObject.cpp: (WebCore::RenderObject::setStyle):
  • WebCore.xcodeproj/project.pbxproj: Removed FrameViewMac.mm.
  • bridge/mac/FrameViewMac.mm: Removed.
19:52 Changeset [20793] by thatcher

Rename our AppleScrollbar and AppleScrollArea classes and copy in the resize.png image.

17:51 Changeset [20792] by thatcher

Fixes a typo that was showing the id attribute twice in the tree.

17:50 Changeset [20791] by thatcher

Use Xpath for the plain text search case. This is faster than walking the DOM in JavaScript.

17:48 Changeset [20790] by bdash

2007-04-09 Mark Rowe <mrowe@apple.com>

Build fix.

  • WebInspector/WebInspector.m:
17:20 Changeset [23235] by aroben

Merge in r20789.

14:15 Changeset [20789] by thatcher

Implement document searching in JavaScript.

12:08 WikiStart edited by kevino@theolliviers.com
Making the page more general so it can fit more info. (diff)
12:02 WikiStart edited by kevino@theolliviers.com
Adding page about the Bakefile build system (diff)
11:57 Changeset [23234] by aroben

Build fix.

  • WebInspector/WebInspector.cpp:
04:32 BuildingQtOnLinux created by sil-webkit@kryogenix.org
04:26 WikiStart edited by sil-webkit@kryogenix.org
(diff)
03:15 Changeset [20788] by bdash

2007-04-08 Mark Rowe <mrowe@apple.com>

Qt build fix.

  • platform/qt/TemporaryLinkStubs.cpp:
02:45 Changeset [20787] by mjs

Not reviewed, experimental change.

  • shrink RegexpObjectImp by 4 bytes


Somewhat inexplicably, this seems to be a .33% speedup on JS iBench.


  • kjs/regexp_object.cpp: (KJS::RegExpObjectImpPrivate::RegExpObjectImpPrivate): (RegExpObjectImp::RegExpObjectImp): (RegExpObjectImp::performMatch): (RegExpObjectImp::arrayOfMatches): (RegExpObjectImp::getBackref): (RegExpObjectImp::getLastMatch): (RegExpObjectImp::getLastParen): (RegExpObjectImp::getLeftContext): (RegExpObjectImp::getRightContext): (RegExpObjectImp::getValueProperty): (RegExpObjectImp::putValueProperty):
  • kjs/regexp_object.h:
02:33 Changeset [20786] by mjs

Not reviewed, experimental change.


  • shrink ArrayInstance objects by 4 bytes


I did this by storing the capacity before the beginning of the storage array. It turns out
it is rarely needed and is by definition 0 when the storage array is null.

  • kjs/array_instance.h: (KJS::ArrayInstance::capacity):
  • kjs/array_object.cpp: (allocateStorage): (reallocateStorage): (ArrayInstance::ArrayInstance): (ArrayInstance::~ArrayInstance): (ArrayInstance::resizeStorage):
02:22 Changeset [20785] by mjs

Not reviewed, experimental change.

  • fix build issue with last change


  • kjs/function.h:
  • kjs/function.cpp: (KJS::ActivationImp::createArgumentsObject):
01:51 Changeset [23233] by aroben

Reviewed by Oliver.

<rdar://problem/4769828> Web Inspector

  • WebInspector/WebInspector.cpp: Renamed from WebInspector.m. Ported Mac code. Some parts are left commented out to aid later implementation.
  • WebInspector/WebInspector.h: Ditto.
01:48 Changeset [20784] by mjs

Not reviewed, experimental change.


  • discard the arguments List for an ActivationImp when the corresponding Context is destroyed (1.7% speedup)

Based an idea by Christopher E. Hyde <C.Hyde@parableuk.force9.co.uk>. His patch to do
this also had many other List changes and I found this much simpler subset of the changes
was actually a hair faster.


This optimization is valid because the arguments list is only kept around to
lazily make the arguments object. If it's not made by the time the function
exits, it never will be, since any function that captures the continuation will
have its own local arguments variable in scope.


Besides the 1.7% speed improvement, it shrinks List by 4 bytes
(which in turn shrinks ActivationImp by 4 bytes).


  • kjs/Context.cpp: (KJS::Context::~Context): Clear the activation's arguments list.
  • kjs/function.cpp: (KJS::ActivationImp::ActivationImp): Adjusted for list changes. (KJS::ActivationImp::mark): No need to mark, lists are always protected (this doesn't cause a ref-cycle for reasons stated above). (KJS::ActivationImp::createArgumentsObject): Clear arguments list.
  • kjs/function.h:
  • kjs/list.cpp: (KJS::List::List): No more needsMarking boolean (KJS::List::operator=): ditto
  • kjs/list.h: (KJS::List::List): ditto (KJS::List::reset): ditto (KJS::List::deref): ditto

04/07/07:

23:35 Changeset [23232] by aroben

Forked most of the WebInspector directory from
r20780 of branches/WebInspectorRefresh/WebKit/WebInspector.

13:25 Changeset [20783] by kevino

Initial copy for wx experimental branch.

13:23 Changeset [20782] by kevino

Creating wx experimental branch.

12:32 Changeset [20781] by ggaren

LayoutTests:

Reviewed by Beth Dakin.


Layout tests for one more case of <rdar://problem/5112273> REGRESSION(TOT):
Reproducible crash loading an old version of amazon.com as a web archive

  • fast/dom/null-document-xmlhttprequest-open-expected.txt: Added.
  • fast/dom/null-document-xmlhttprequest-open.html: Added.

WebCore:

Reviewed by Beth Dakin.


Fixed one more case of <rdar://problem/5112273> REGRESSION(TOT):
Reproducible crash loading an old version of amazon.com as a web archive

  • bindings/js/JSXMLHttpRequest.cpp: (KJS::JSXMLHttpRequestPrototypeFunction::callAsFunction):

04/06/07:

22:52 Changeset [23231] by oliver

2007-04-06 Oliver Hunt <oliver@apple.com>

Reviewed by Adam.

Fix for rdar://problem/5097227 Can't drag Flash-based
scrollbar on mtv.com


The problem was when creating a mouse move event for the
plugin we weren't passing on the mouse button state.


The opensource side of this patch adds logic that allows
us to distinguish between a MouseEvent with NoButton and
a MouseEvent with LeftButton, so we can then provide the
correct information to the plugin.

  • plugins/win/PluginViewWin.cpp: (WebCore::PluginViewWin::handleMouseEvent):


22:44 Changeset [20780] by oliver

2007-04-06 Oliver Hunt <oliver@apple.com>

Reviewed by Adam.

Fix MouseEvent so it's possible to distinguish between
a MouseMouseEvent with NoButton down, and a move with
LeftButton down. It would be nice if the DOM allowed
for NoButton to exist, but it doesn't so this is necessary.

  • dom/EventTargetNode.cpp: (WebCore::EventTargetNode::dispatchMouseEvent):
  • dom/MouseEvent.cpp: (WebCore::MouseEvent::MouseEvent): (WebCore::MouseEvent::initMouseEvent):
  • dom/MouseEvent.h: (WebCore::MouseEvent::noButton):
21:24 Changeset [20779] by bdash

2007-04-07 Mark Rowe <mrowe@apple.com>

Not reviewed. Update to match some configuration changes that have been active on build.webkit.org.

  • BuildSlaveSupport/build.webkit.org-config/webkit/status.py:
20:31 Changeset [20778] by kjk

Not reviewed - gdk build fix.

  • platform/gdk/MouseEventGdk.cpp:
20:08 Changeset [20777] by kjk

Reviewed by darin.

Coverity fix. Coverity says:
"Event var_deref_op: Variable "info_ptr" tracked as NULL was dereferenced."

  • platform/image-decoders/png/pngrutil.c: (png_handle_gAMA):
20:05 Changeset [20776] by kjk

Index: WebCore/ChangeLog
===================================================================
--- WebCore/ChangeLog (revision 20709)
+++ WebCore/ChangeLog (working copy)
@@ -1,3 +1,13 @@
+2007-04-04 Krzysztof Kowalczyk <kkowalczyk@gmail.com>
+
+ Reviewed by darin.
+
+ Coverity fix. Coverity says:
+ "Event var_deref_model: Variable "(this)->clientptr" tracked as NULL was passed to a function that dereferences it."
+
+ * platform/image-decoders/gif/GIFImageReader.cpp:
+ (GIFImageReader::read):
+

2007-04-04 Adele Peterson <adele@apple.com>


Reviewed by Oliver.

Index: WebCore/platform/image-decoders/gif/GIFImageReader.cpp
===================================================================
--- WebCore/platform/image-decoders/gif/GIFImageReader.cpp (revision 20709)
+++ WebCore/platform/image-decoders/gif/GIFImageReader.cpp (working copy)
@@ -760,7 +760,8 @@ bool GIFImageReader::read(const unsigned

if (query == GIFImageDecoder::GIFSizeQuery
haltAtFrame == images_decoded) {

The decoder needs to stop. Hand back the number of bytes we consumed from
buffer minus 9 (the amount we consumed to read the header).

  • clientptr->decodingHalted(len + 9);

+ if (clientptr)
+ clientptr->decodingHalted(len + 9);

GETN(9, gif_image_header);
return true;

}

20:02 Changeset [20775] by kjk

Index: JavaScriptCore/ChangeLog
===================================================================
--- JavaScriptCore/ChangeLog (revision 20709)
+++ JavaScriptCore/ChangeLog (working copy)
@@ -1,3 +1,14 @@
+2007-04-04 Krzysztof Kowalczyk <kkowalczyk@gmail.com>
+
+ Reviewed by darin.
+
+ Coverity fix. Coverity says:
+ "Event var_deref_model: Variable "sourceRanges" tracked as NULL was passed to a
+ function that dereferences it"
+
+ * kjs/string_object.cpp:
+ (KJS::replace):
+

2007-04-03 Kevin McCullough <kmccullough@apple.com>


Reviewed by Adam.

Index: JavaScriptCore/kjs/string_object.cpp
===================================================================
--- JavaScriptCore/kjs/string_object.cpp (revision 20709)
+++ JavaScriptCore/kjs/string_object.cpp (working copy)
@@ -387,7 +387,9 @@ static JSValue *replace(ExecState *exec,

if (lastIndex < source.size())

pushSourceRange(sourceRanges, sourceRangeCount, sourceRangeCapacity, UString::Range(lastIndex, source.size() - lastIndex));


  • UString result = source.spliceSubstringsWithSeparators(sourceRanges, sourceRangeCount, replacements, replacementCount);

+ UString result;
+ if (sourceRanges)
+ result = source.spliceSubstringsWithSeparators(sourceRanges, sourceRangeCount, replacements, replacementCount);

delete [] sourceRanges;
delete [] replacements;

18:53 Changeset [20774] by bdash

Versioning.

18:51 Changeset [20773] by bdash

Merge in r20764.

18:36 Changeset [20772] by bdash

New tag (part 2).

18:35 Changeset [20771] by bdash

New tag (part 1).

18:24 Changeset [20770] by bdash

Remove tag.

18:09 Changeset [20769] by bdash

New tag (part 2).

18:07 Changeset [20768] by bdash

New tag (part 1).

17:56 Changeset [20767] by hyatt

Fix more of the layout test failures caused by fixing the slider layout test failure (sigh). clear()
needs to null out the capturingMouseEventsNode in the case where a mousedown or move while captured
causes a navigation to another page.

  • page/EventHandler.cpp: (WebCore::EventHandler::clear): (WebCore::EventHandler::handleMouseReleaseEvent):
17:15 Changeset [20766] by hyatt

Fix failing slider layout test. Don't clear the subframe capture unless we really were capturing on a
subframe.

Reviewed by adele, darin

  • page/EventHandler.cpp: (WebCore::EventHandler::handleMouseReleaseEvent):
16:59 Changeset [20765] by thatcher

Build fix attempt.

16:56 Changeset [20764] by bdakin

Reviewed by Geoff and Darin.

Fix for <rdar://problem/4875433> WebView underlines are too thick
when scaled small

When we have a small scale factor, we should follow the line-
drawing code as if we were printing. Meaning, specifically, that we
should not round to device pixels and we should antialias.

  • platform/graphics/cg/GraphicsContextCG.cpp: (WebCore::GraphicsContext::drawLineForText):
16:12 Changeset [20763] by ggaren

LayoutTests:

Reviewed by Beth Dakin.


Layout tests for <rdar://problem/5112273> REGRESSION(TOT): Reproducible
crash loading an old version of amazon.com as a web archive

  • fast/dom/null-document-location-assign-crash-expected.txt: Added.
  • fast/dom/null-document-location-assign-crash.html: Added.
  • fast/dom/null-document-location-href-put-crash-expected.txt: Added.
  • fast/dom/null-document-location-href-put-crash.html: Added.
  • fast/dom/null-document-location-put-crash-expected.txt: Added.
  • fast/dom/null-document-location-put-crash.html: Added.
  • fast/dom/null-document-location-replace-crash-expected.txt: Added.
  • fast/dom/null-document-location-replace-crash.html: Added.
  • fast/dom/null-document-window-open-crash-expected.txt: Added.
  • fast/dom/null-document-window-open-crash.html: Added.

WebCore:

Reviewed by Beth Dakin.


Fixed <rdar://problem/5112273> REGRESSION(TOT): Reproducible crash loading
an old version of amazon.com as a web archive


The problem was JavaScript executing inside a frame with a NULL document.
It's probably a bug that the document was NULL, but we don't want a minor
bug to be a crasher, and we don't want the DOM to depend on the implementation
details of the JS bindings, so I added NULL checks.

  • bindings/js/kjs_window.cpp: Call FrameLoader::completeURL instead of Document::completeURL, since FrameLoader::completeURL is safe against a NULL document. (KJS::Window::put): (KJS::WindowFunc::callAsFunction): (KJS::Location::put): (KJS::LocationFunc::callAsFunction):
15:11 Changeset [20762] by aroben

Reviewed by Adele.

These two editing tests were using the wrong case for
dumpEditingCallbacks, which meant that they were falling into DRT's
invokeUndefinedMethodFromWebScript instead of actually turning on the
callback dumping.


This patch fixes the case of the call and updates the results.

  • editing/execCommand/4641880-1-expected.txt:
  • editing/execCommand/4641880-1.html:
  • editing/execCommand/4641880-2-expected.txt:
  • editing/execCommand/4641880-2.html:
14:52 Changeset [23230] by hyatt

Fix for bug 13274

14:37 Changeset [20761] by hyatt

Fix for bug 13274. Rework mouse events so that subframe capturing works again. Make sure
everything just comes down through the top FrameView even when capturing is in effect. Update
scrollbar handling logic so that scrollbars receive events correctly while capturing is in
effect. Eliminate the notion of widget capture. Fix mouse moves so that they only fire
on the innermost hit frame.

Reviewed by olliej

  • page/EventHandler.cpp: (WebCore::EventHandler::handleMouseDraggedEvent): (WebCore::subframeForTargetNode): (WebCore::EventHandler::handleMousePressEvent): (WebCore::EventHandler::handleMouseMoveEvent): (WebCore::EventHandler::handleMouseReleaseEvent):
  • page/EventHandler.h:
  • platform/PopupMenu.h: (WebCore::PopupMenu::scrollbarCapturingMouse): (WebCore::PopupMenu::setScrollbarCapturingMouse):
  • platform/ScrollBar.h: (WebCore::Scrollbar::handleMouseReleaseEvent):
  • platform/Widget.h: (WebCore::Widget::geometryChanged):
13:34 Changeset [23229] by bdash

2007-04-07 Mark Rowe <mrowe@apple.com>

Internal build fox after opensource r20753.

  • platform/win/PlatformMouseEventWin.cpp:
  • platform/win/TemporaryLinkStubs.cpp:
11:59 Changeset [20760] by justing

LayoutTests:

Reviewed by john


<rdar://problem/5115601>
REGRESSION: Crash deleting a selection that starts in an editable table cell

  • editing/deleting/5115601-expected.checksum: Added.
  • editing/deleting/5115601-expected.png: Added.
  • editing/deleting/5115601-expected.txt: Added.
  • editing/deleting/5115601.html: Added.

WebCore:

Reviewed by john

<rdar://problem/5115601>
REGRESSION: Crash deleting a selection that starts in an editable table cell


The selection starts at the start of an editable
root that's embedded in a non-editable ToDo (table).
Removing the selection removes all editable
VisiblePositions from the root. Then, the creation
of mergeDestination fails, and using it causes a crash.

  • editing/DeleteSelectionCommand.cpp: (WebCore::DeleteSelectionCommand::mergeParagraphs): Nil-check mergeDestination to avoid crashing and also insert a break in that case at m_upstreamStart, so that we can create a valid mergeDestination and perform the merge.
11:36 Changeset [20759] by ggaren

Rubber stamped by Adele Peterson.

  • kjs/ExecState.h: Removed obsolete forward/friend declaration of RuntimeMethodImp.
10:47 Changeset [20758] by kmccullo

Reviewed by.

  • Fixing a test failure.
  • http/tests/misc/iframe-invalid-source-crash-expected.txt:
09:55 Changeset [20757] by bdash

Versioning and ChangeLog markers.

09:31 Changeset [20756] by thatcher

Remove WebInspectorOutlineView from the project.

09:29 Changeset [20755] by thatcher

Reviewed by Mark Rowe.

Adds a build phase script that ensures WebKit's version dosen't end in a 4.
If our version ends in 4, some sites might think we are Netscape 4 in their
user agent checks.

  • Configurations/Version.xcconfig:
  • WebKit.xcodeproj/project.pbxproj:
08:03 Changeset [20754] by bdash

Versioning.

07:58 Changeset [20753] by bdash

2007-04-06 Mitz Pettel <mitz@webkit.org>

Reviewed by Oliver.

Eliminate PlatformMouseEvent::currentEvent.

No test possible (no change to functionality).

  • page/EventHandler.cpp: (WebCore::EventHandler::handleDrag):
  • platform/PlatformMouseEvent.h:
  • platform/gdk/TemporaryLinkStubs.cpp:
  • platform/mac/PlatformMouseEventMac.mm: (WebCore::PlatformMouseEvent::PlatformMouseEvent):
  • platform/qt/PlatformMouseEventQt.cpp:
  • platform/win/TemporaryLinkStubs.cpp:
07:56 Changeset [20752] by bdash

Fix typo in ChangeLog.

07:47 Changeset [20751] by bdash

New tag.

06:21 Changeset [20750] by yongjzha

2007-04-05 yongjzha <yongjun.zhang@nokia.com>

Reviewed by zbujtas@gmail.com
DESC: fix wrong meta tag detection.
http://bugs.webkit.org/show_bug.cgi?id=13290

WARNING: NO TEST CASES ADDED OR CHANGED

  • khtml/misc/decoder.cpp: (Decoder::decode):
06:17 Changeset [20749] by yongjzha

2007-04-05 yongjzha <yongjun.zhang@nokia.com>

Reviewed by zbujtas@gmail.com
DESC: fix wrong meta tag detection.
http://bugs.webkit.org/show_bug.cgi?id=13290

WARNING: NO TEST CASES ADDED OR CHANGED

  • khtml/misc/decoder.cpp: (Decoder::decode):
03:26 Changeset [20748] by mjs

Not reviewed, experimental change.


  • shrink PropertyMap by 8 bytes and therefore shrink CELL_SIZE to 40 (for 32-bit; similar shrinkage for 64-bit)

Inspired by similar changes by Christopher E. Hyde <C.Hyde@parableuk.force9.co.uk>
done in the kjs-tweaks branch of KDE's kjs. However, this version is somewhat
cleaner style-wise and avoids some of the negative speed impact (at least on gcc/x86)
of his version.


This is nearly a wash performance-wise, maybe a slight slowdown, but worth doing
to eventually reach cell size 32.


  • kjs/collector.cpp: (KJS::):
  • kjs/property_map.cpp: (KJS::PropertyMap::~PropertyMap): (KJS::PropertyMap::clear): (KJS::PropertyMap::get): (KJS::PropertyMap::getLocation): (KJS::PropertyMap::put): (KJS::PropertyMap::insert): (KJS::PropertyMap::expand): (KJS::PropertyMap::rehash): (KJS::PropertyMap::remove): (KJS::PropertyMap::mark): (KJS::PropertyMap::containsGettersOrSetters): (KJS::PropertyMap::getEnumerablePropertyNames): (KJS::PropertyMap::getSparseArrayPropertyNames): (KJS::PropertyMap::save): (KJS::PropertyMap::checkConsistency):
  • kjs/property_map.h: (KJS::PropertyMap::hasGetterSetterProperties): (KJS::PropertyMap::setHasGetterSetterProperties): (KJS::PropertyMap::): (KJS::PropertyMap::PropertyMap):
01:26 Changeset [20747] by mjs

Not reviewed, experimental change.


  • change blocks to 64k in size, and use various platform-specific calls to allocate at 64k-aligned addresses
  • kjs/collector.cpp: (KJS::allocateBlock): (KJS::freeBlock): (KJS::Collector::allocate): (KJS::Collector::collect):

04/05/07:

23:45 Changeset [20746] by oliver

2007-04-05 Oliver Hunt <oliver@apple.com>

Reviewed by Maciej.

WebCore:

Fix for rdar://problem/4849948 -- JSCanvasRenderingContext2D::drawImage
crashes when given invalid arguments.

JSCanvasRenderingContext2D frequently casts from JSValue* to JSObject*
and then checks isObject *after* the cast. JSObject::isObject is unsafe
if applied to a JSImmediate value (null, undefined, etc). This patch
corrects the logic in a number of places by performing the isObject check
before casting to JSObject.

  • bindings/js/JSCanvasRenderingContext2DCustom.cpp: (WebCore::JSCanvasRenderingContext2D::drawImage): (WebCore::JSCanvasRenderingContext2D::drawImageFromRect): (WebCore::JSCanvasRenderingContext2D::createPattern):

LayoutTests:

Layout tests for rdar://problem/4849948
Make sure we don't crash when passing invalid args to Canvas::drawImage

  • fast/canvas/drawImage-with-invalid-args-expected.checksum: Added.
  • fast/canvas/drawImage-with-invalid-args-expected.png: Added.
  • fast/canvas/drawImage-with-invalid-args-expected.txt: Added.
  • fast/canvas/drawImage-with-invalid-args.html: Added.
23:19 Changeset [20745] by thatcher

Add -webkit-dashboard-region to select and input elements to prevent dragging the window in those areas.

23:09 Changeset [20744] by aroben

Reviewed by Tim.

When navigating to a parent node via the inspector's popup menu, don't
blow away all the children in the list so that it's easy to get back
to them later.

  • WebInspector/webInspector/inspector.js: (function updateTreeOutline): Don't reset the popup if we're navigating to a node already in the popup.
22:25 Changeset [20743] by adele

LayoutTests:

Reviewed by Oliver.

Test for <rdar://problem/4965597> REGRESSION: mouseup doesn't fire for slider (causes it to always default to max)

  • fast/forms/slider-mouse-events-expected.txt: Added.
  • fast/forms/slider-mouse-events.html: Added.

WebCore:

Reviewed by Oliver.

Fix for <rdar://problem/4965597> REGRESSION: mouseup doesn't fire for slider (causes it to always default to max)

Test: fast/forms/slider-mouse-events.html

  • page/EventHandler.cpp: (WebCore::EventHandler::dispatchMouseEvent): Since the actual target node of the event can't be a shadow node, set the target node to the capturing node before adjusting it.
20:05 Changeset [20742] by andersca

LayoutTests:

Reviewed by Adam.

<rdar://problem/5083023>
REGRESSION: In Real Player (10.1.0), video continues to play after closing window

Add a test where a window containing a plugin is opened and then closed. The window is closed
without calling -[WebView close].


  • plugins/open-and-close-window-with-plugin-expected.txt: Added.
  • plugins/open-and-close-window-with-plugin.html: Added.
  • plugins/resources/open-and-close-window-with-plugin.html: Added.

WebKit:

Reviewed by Adam.

<rdar://problem/5083023>
REGRESSION: In Real Player (10.1.0), video continues to play after closing window


This broke in revision 18422 because now the plugin isn't stopped when the window is closed. Since the window is retained
by the plugin view for as long as it is running (so that removeTrackingRect works even though the window has been closed),
we would end up with a reference cycle (NSWindow -> WebView -> PluginView -> NSWindow) and stopping the plug-in when the window
was closed would break that cycle.


Applications that call -[WebView close] when closing aren't affected, but RealPlayer doesn't do this.


The bug that 18422 was supposed to fix was fixed by 19275, which is why it's safe to add back the check.


  • Plugins/WebBaseNetscapePluginView.mm: (-[WebBaseNetscapePluginView addWindowObservers]): (-[WebBaseNetscapePluginView removeWindowObservers]): (-[WebBaseNetscapePluginView windowWillClose:]):

WebKitTools:

Reviewed by Adam.

Add support for opening new windows in DumpRenderTree.


(+[LayoutTestController isSelectorExcludedFromWebScript:]):
(+[LayoutTestController webScriptNameForSelector:]):
(-[LayoutTestController setCallCloseOnWebViews:]):
(-[LayoutTestController setCanOpenWindows]):
Add two new methods callable from JavaScript. setCanOpenWindows controls whether a test
can open new windows, and setCallCloseOnWebViews controls whether -[WebView close] should be called on
web views that are about to be closed.


(runTest):
Make sure that only the main window is around when a test has finished running.


(-[DumpRenderTreeWindow initWithContentRect:styleMask:backing:defer:]):
(-[DumpRenderTreeWindow dealloc]):
Manage the set of windows.


  • DumpRenderTree/TestNetscapePlugIn.subproj/PluginObject.c:
  • DumpRenderTree/TestNetscapePlugIn.subproj/PluginObject.h:
  • DumpRenderTree/TestNetscapePlugIn.subproj/main.c: (NPP_Destroy): Add a "logDestroy" property which controls whether plugins should print when they are destroyed or not.


  • DumpRenderTree/UIDelegate.m: (-[UIDelegate webView:createWebViewWithRequest:]): Create new windows.


(-[UIDelegate webViewClose:]):
Close windows.

18:46 Changeset [20741] by andersca

Reviewed by Maciej.

Move WebView and NSWindow creation to a separate function in preparation of supporting opening new
windows in DRT.

  • DumpRenderTree/DumpRenderTree.m: (createWebView): (dumpRenderTree):
18:05 Changeset [20740] by kmccullo

LayoutTests:

Reviewed by Darin.

  • Now we add a console message when local resources are blocked.
  • http/tests/security/local-CSS-from-remote-expected.txt:
  • http/tests/security/local-JavaScript-from-remote-expected.txt:
  • http/tests/security/local-iFrame-from-remote-expected.txt:
  • http/tests/security/local-image-from-remote-expected.txt:

WebCore:

Reviewed by Darin.

  • Added reportLocalLoadFailed to FrameLoader to send an error to the console when calls to canLoad fail.
  • loader/Cache.cpp: (WebCore::Cache::requestResource):
  • loader/FrameLoader.cpp: (WebCore::FrameLoader::loadSubframe): (WebCore::FrameLoader::loadPlugin): (WebCore::FrameLoader::load): (WebCore::FrameLoader::reportLocalLoadFailed):
  • loader/FrameLoader.h:
  • loader/SubresourceLoader.cpp: (WebCore::SubresourceLoader::create):

WebKit:

Reviewed by Darin.

  • Moved registerURLSchemeAsLocal to the public API.
  • WebView/WebView.h:
  • WebView/WebView.mm: (+[WebView registerURLSchemeAsLocal:]):
  • WebView/WebViewPrivate.h:
17:42 Changeset [20739] by adele

Reviewed by Maciej.

Add text-align: -webkit-auto for form controls. Buttons already override this property to center their text.

  • css/html4.css:
15:52 Changeset [20738] by kjk

Reviewed by darin.

Coverity fix. Coverity says:
"Event check_after_deref: Pointer "dateString" dereferenced before NULL check"

  • kjs/date_object.cpp: (KJS::parseDate):
15:50 Changeset [20737] by kjk

Reviewed by darin.

Coverity fix. Coverity says:
"Event check_after_deref: Pointer "re" dereferenced before NULL check"

  • pcre/pcre_study.c: (pcre_study):
15:45 Changeset [20736] by kjk

Reviewed by darin.

Coverity fixes. Coverity says:
"Event leaked_storage: Returned without freeing storage "buffer""
and:
"Event leaked_storage: Returned without freeing storage "script""

  • kjs/testkjs.cpp: (doIt): (createStringWithContentsOfFile):
15:42 Changeset [20735] by kjk

Reviewed by rwlbuis.

Coverity fix. Coverity says:
"Event var_deref_model: Variable "page" tracked as NULL was passed to a function that dereferences it."

  • platform/Font.cpp: (WebCore::Font::glyphDataForCharacter):
15:38 Changeset [20734] by kjk

Reviewed by darin.

Coverity fix. Coverity says:
"Event var_deref_model: Variable "unicode" tracked as NULL was passed to a
function that dereferences it."

  • platform/DeprecatedString.cpp: (WebCore::DeprecatedString::DeprecatedString):
15:33 Changeset [20733] by kjk

Reviewed by darin.

Coverity fix: in single-threaded case currentThreadIsMainThread is always true
so the code in if (!currentThreadIsMainThread) cannot possibly be reached
and Coverity complains about dead code.

  • kjs/collector.cpp: (KJS::Collector::collect):
14:26 Changeset [20732] by adele

Reviewed by Hyatt.

Fix for <rdar://problem/5113593> REGRESSION: Search fields in RSS pages don't show ibeam cursor

  • css/html4.css: Set the cursor values explicitly for input, textarea (to auto), & select (to default).
14:21 Changeset [20731] by hyatt

Fix for <rdar://problem/5078866> tables should only reset text-align
in quirks mode.

Reviewed by beth

  • css/html4.css:
  • css/quirks.css:
13:40 Changeset [20730] by sfalken

New tag.

13:36 Changeset [20729] by adele

Fixing typo that's crashing.

  • html/HTMLAnchorElement.cpp: (WebCore::HTMLAnchorElement::defaultEventHandler): Use evt instead of null variable k.
13:30 Changeset [20728] by adele

Reviewed by Hyatt.

Fix for <rdar://problem/5021500> Cursor should stay as pointer when slider is being dragged

Don't set the selection ibeam cursor when there's a node that's capturing mouse events.

  • page/EventHandler.cpp: (WebCore::selectCursor): (WebCore::EventHandler::handleMouseMoveEvent):
12:55 Changeset [20727] by spadma

2007-04-04 ligman <joseph.ligman@nokia.com>

Reviewed by Sachin.
DESC: Setting status to KErrCancel when the request dispatcher does not define a loader causes a problem for the history stack, reverting to previous.
http://bugs.webkit.org/show_bug.cgi?id=13232

  • BrowserView/src/WebKitLoader.cpp: (CWebKitLoader::LoadPageL):
12:55 Changeset [20726] by spadma

2007-04-04 ligman <joseph.ligman@nokia.com>

Reviewed by Sachin.
DESC: Setting status to KErrCancel when the request dispatcher does not define a loader causes a problem for the history stack, reverting to previous.
http://bugs.webkit.org/show_bug.cgi?id=13232

  • BrowserView/src/WebKitLoader.cpp: (CWebKitLoader::LoadPageL):
12:33 Changeset [20725] by ggaren

Reviewed by Beth Dakin.

More clean-up while fixing <rdar://problem/5112273> REGRESSION(TOT):
Reproducible crash loading an old version of amazon.com as a web archive


Layout tests pass.


Removed more superfluous document NULL checks. (Node::document() never
returns NULL, and it asserts as much.)


Merged some duplicate editing code into a static inline function.


  • page/mac/WebCoreFrameBridge.mm: (updateRenderingForBindings): Removed superfluous static_cast.
11:41 Changeset [20724] by adele

Reviewed by Darin.

A little cleanup from my last checkin. Always check if an Event is really a MouseEvent or a KeyboardEvent
before casting it.

  • html/HTMLAnchorElement.cpp: (WebCore::HTMLAnchorElement::defaultEventHandler):
  • html/HTMLSelectElement.cpp: (WebCore::HTMLSelectElement::menuListDefaultEventHandler): (WebCore::HTMLSelectElement::listBoxDefaultEventHandler):
  • html/HTMLTextFieldInnerElement.cpp: (WebCore::HTMLSearchFieldResultsButtonElement::defaultEventHandler): (WebCore::HTMLSearchFieldCancelButtonElement::defaultEventHandler):
  • ksvg2/svg/SVGAElement.cpp: (WebCore::SVGAElement::defaultEventHandler):
  • page/ContextMenuController.cpp: (WebCore::ContextMenuController::handleContextMenuEvent):
  • rendering/RenderFrameSet.cpp: (WebCore::RenderFrameSet::userResize):
  • rendering/RenderSlider.cpp: (WebCore::HTMLSliderThumbElement::defaultEventHandler):
10:48 Changeset [20723] by ggaren

Reviewed by Beth Dakin.


Some clean-up while fixing <rdar://problem/5112273> REGRESSION(TOT):
Reproducible crash loading an old version of amazon.com as a web archive


Removed superfluous document NULL checks. (Node::document() never returns
NULL, and it asserts as much.)


Removed duplicate implementation of displayString.


Layout tests pass.

  • bindings/objc/DOMInternal.h:
  • bindings/objc/DOMInternal.mm:
  • html/HTMLGenericFormElement.cpp: (WebCore::HTMLGenericFormElement::supportsFocus):
  • html/HTMLPlugInElement.cpp: (WebCore::HTMLPlugInElement::createNPObject):
  • platform/ContextMenu.cpp: (WebCore::ContextMenu::checkOrEnableIfNeeded):
  • rendering/HitTestResult.cpp: (WebCore::displayString):
  • rendering/HitTestResult.h:
  • rendering/RenderLayer.cpp: (WebCore::RenderLayer::updateHoverActiveState):
09:35 Changeset [20722] by mjs

Not reviewed, experimental change.


  • remove the concept of oversize objects, now that there aren't any (for now only enforced with an assert).

This change is a .66% speedup on JS iBench for 32-bit platforms, probably much more
for 64-bit since it finally gives a reasonable cell size, but I did not test that.


  • kjs/collector.cpp: (KJS::): Use different cell size for 32-bit and 64-bit, now that there is no oversize allocation. (KJS::Collector::allocate): Remove oversize allocator. (KJS::Collector::markStackObjectsConservatively): Don't check oversize objects. (KJS::Collector::markMainThreadOnlyObjects): Ditto. (KJS::Collector::collect): Ditto.
08:24 Changeset [20721] by yongjzha

hongzhao, reviewed by yongjun.zhang@nokia.com

DESC: [S60]Animated images with DRM content won't be displayed in Browser in 3.2
Fix: Handle DRM image content during construct the content.
http://bugs.webkit.org/show_bug.cgi?id=13258

  • BrowserCore/Renderers/inc/AnimationDecoder.h:
  • BrowserCore/Renderers/inc/StaticImageDecoder.h:
  • BrowserCore/Renderers/src/StaticImageDecoder.cpp: (CRawData::ConstructL): (CRawData::DecodeDRMImageContentL): (CStaticImageDecoder::LoadNextImage):
03:20 Changeset [20720] by oliver

2007-04-05 Oliver Hunt <oliver@apple.com>

Reviewed by Adam.

WebCore:

Fix rdar://problem/5030934 -- landscape PDFs embedded as an image are cut off
also fixes scaling of pdf images

PDFDocumentImage was not accounting for page rotation in a number of places

  • platform/graphics/cg/PDFDocumentImage.cpp: (WebCore::PDFDocumentImage::size): we need to account for rotation of the pdf image effecting our bounds (WebCore::PDFDocumentImage::draw): When compensating for flipped coords we need to use the correct rect for the coordinate space. We can't pass size() to CGContextDrawPDFDocument as it returns the rotated bounds now -- this is also save the old FloatSize -> IntSize -> FloatSize conversions.

LayoutTests:

Testcase for landscape pdfs as image

rdar://problem/5030934 -- landscape PDFs embedded as an image are cut off

  • fast/images/pdf-as-image-landscape-expected.txt: Added.
  • fast/images/pdf-as-image-landscape.html: Added.
  • fast/images/resources/pdf_test_landscape.pdf: Added.
03:08 Changeset [20719] by mjs

Not reviewed - experimental work.

  • move most of Window's data members into a separate private object, to avoid needing to use the oversize allocator for it


It was the only remaining JSObject subclass to use the ocersize
allocator on 32-bit platforms, and having oversize objects around
makes garbage collection slower so this would hurt performance
with many tabs/windows open.


No significant effect on JS iBench.

  • bindings/js/kjs_events.cpp: (KJS::JSUnprotectedEventListener::JSUnprotectedEventListener): (KJS::JSUnprotectedEventListener::~JSUnprotectedEventListener): (KJS::JSEventListener::JSEventListener): (KJS::JSEventListener::~JSEventListener): (KJS::JSLazyEventListener::parseCode):
  • bindings/js/kjs_window.cpp: (KJS::WindowPrivate::WindowPrivate): (KJS::Window::Window): (KJS::Window::~Window): (KJS::Window::location): (KJS::Window::selection): (KJS::Window::locationbar): (KJS::Window::menubar): (KJS::Window::personalbar): (KJS::Window::statusbar): (KJS::Window::toolbar): (KJS::Window::scrollbars): (KJS::Window::mark): (KJS::Window::getValueProperty): (KJS::Window::findJSEventListener): (KJS::Window::findJSUnprotectedEventListener): (KJS::Window::clearHelperObjectProperties): (KJS::Window::clear): (KJS::Window::setCurrentEvent): (KJS::Window::setReturnValueSlot): (KJS::Window::clearAllTimeouts): (KJS::Window::installTimeout): (KJS::Window::pauseTimeouts): (KJS::Window::resumeTimeouts): (KJS::Window::clearTimeout): (KJS::Window::timerFired): (KJS::Window::disconnectFrame): (KJS::Window::jsEventListeners): (KJS::Window::jsHTMLEventListeners): (KJS::Window::jsUnprotectedEventListeners): (KJS::Window::jsUnprotectedHTMLEventListeners):
  • bindings/js/kjs_window.h:
03:03 Changeset [20718] by mjs

vn cp svn+ssh://mjs@svn.opensource.apple.com/svn/webkit/trunk/JavaScriptCore svn+ssh://mjs@svn.opensource.apple.com/svn/webkit/branches/js-collector-tweaks/JavaScriptCore
Enter passphrase for key '/Users/mjs/.ssh/id_rsa':
subversion/libsvn_repos/commit.c:392: (apr_err=160016)
svn: Path 'branches/js-collector-tweaks' not present

Note: See TracTimeline for information about the timeline view.