Timeline


and

07/04/07:

23:56 Changeset [24008] by aroben

Add --skipped-only option to run-webkit-tests

When this option is specified, only those tests listed in the Skipped
file are run.

Reviewed by Mark.

  • Scripts/run-webkit-tests:
23:42 Changeset [24007] by aroben

Clean up/alphabetize the run-webkit-tests help message

  • Scripts/run-webkit-tests:
23:24 Changeset [24006] by aroben

Enable a Leopard-specific Skipped list.

Reviewed by Mark.

  • Scripts/run-webkit-tests: Check for Leopard.
  • Scripts/webkitdirs.pm: Added isTiger/isLeopard.
23:12 Changeset [24005] by bdash

... and it was reviewed by Adam.

23:08 Changeset [24004] by bdash

2007-07-04 Matt Perry <mpComplete@gmail.com>

Fix for http://bugs.webkit.org/show_bug.cgi?id=13400
Bug 13400: REGRESSION (r20809-20814): No back entry created for navigations created by assigning to document.location
<rdar://problem/5153025>

Treat userGesture as always true for setLocation, forcing a back/forward
entry to be created.

  • bindings/js/JSHTMLDocumentCustom.cpp: (WebCore::JSHTMLDocument::setLocation):

2007-07-04 Matt Perry <mpComplete@gmail.com>

Test for http://bugs.webkit.org/show_bug.cgi?id=13400
Bug 13400: REGRESSION (r20809-20814): No back entry created for navigations created by assigning to document.location
<rdar://problem/5153025>

Test that assigning to document.location in various ways adds an
item to the back/forward list.

  • http/tests/navigation/document-location-click-expected.txt: Added.
  • http/tests/navigation/document-location-click-timeout-expected.txt: Added.
  • http/tests/navigation/document-location-click-timeout.html: Added.
  • http/tests/navigation/document-location-click.html: Added.
  • http/tests/navigation/document-location-mouseover-expected.txt: Added.
  • http/tests/navigation/document-location-mouseover.html: Added.
  • http/tests/navigation/document-location-onload-expected.txt: Added.
  • http/tests/navigation/document-location-onload.html: Added.
  • http/tests/navigation/resources/document-location.js: Added.
23:04 Changeset [24003] by aroben

Restore MouseEventWithHitTestResults::targetNode's old behavior

Reviewed by Mark.

Fixes fast/images/imagemap-case and fast/replace/image-map.

  • page/MouseEventWithHitTestResults.cpp:

(WebCore::MouseEventWithHitTestResults::targetNode): Use the inner
node, not the inner non-shared node.

22:21 Changeset [24002] by aroben

Mac, Qt, and Gdk build fixes.

  • page/EventHandler.h:
  • page/gdk/EventHandlerGdk.cpp:
  • page/mac/EventHandlerMac.mm:

(WebCore::EventHandler::passSubframeEventToSubframe):

  • page/qt/EventHandlerQt.cpp:
20:23 Changeset [24001] by aroben

Fix the Qt/Gdk builds.

  • page/gdk/EventHandlerGdk.cpp:
  • page/qt/EventHandlerQt.cpp:
20:00 Changeset [24000] by aroben

Move tooltip logic down into WebCore so that it can be shared cross-platform

WebCore:

Move tooltip logic down into WebCore so that it can be shared cross-platform

Reviewed by Sam.

  • page/Chrome.cpp: (WebCore::Chrome::setToolTip): Added.
  • page/Chrome.h:
  • page/ChromeClient.h:
  • page/EventHandler.cpp: (WebCore::EventHandler::mouseMoved): Call Chrome::setToolTip.
  • platform/graphics/svg/SVGImageEmptyClients.h:

Added stubs for Gdk:

  • platform/gdk/ChromeClientGdk.h:
  • platform/gdk/TemporaryLinkStubs.cpp: (ChromeClientGdk::setToolTip):

WebKit:

Move tooltip logic down into WebCore so that it can be shared cross-platform

Reviewed by Sam.

  • WebCoreSupport/WebChromeClient.h:
  • WebCoreSupport/WebChromeClient.mm: (WebChromeClient::setToolTip): Added.
  • WebView/WebHTMLView.mm: Removed _resetCachedWebPreferences. (-[WebHTMLView _updateMouseoverWithEvent:]): Removed tooltip code. (-[WebHTMLView initWithFrame:]): Removed call to _resetCachedWebPreferences. (-[WebHTMLView setDataSource:]): Ditto.
  • WebView/WebHTMLViewInternal.h: Removed showsURLsInToolTips ivar.
  • WebView/WebHTMLViewPrivate.h: Added declaration for _setTooltip so that WebChromeClient can call it.

WebKit/win:

Added a stub for WebChromeClient::setToolTip

Reviewed by Sam.

  • WebChromeClient.cpp:
  • WebChromeClient.h:

WebKitQt:

Added a stub for ChromeClientQt::setToolTip

Reviewed by Sam.

  • WebCoreSupport/ChromeClientQt.cpp: (WebCore::ChromeClientQt::setToolTip):
  • WebCoreSupport/ChromeClientQt.h:
20:00 Changeset [23999] by aroben

Add/initialize Settings::showsURLsInToolTips

WebCore:

Add Settings::showsURLsInToolTips

Reviewed by Sam.

  • WebCore.exp:
  • page/Settings.cpp: (WebCore::Settings::Settings):
  • page/Settings.h:

WebKit:

Initialize Settings::showsURLsInToolTips

Reviewed by Sam.

  • WebView/WebView.mm: (-[WebView _updateWebCoreSettingsFromPreferences:]):

WebKit/win:

Initialize Settings::showsURLsInToolTips

Reviewed by Sam.

  • WebView.cpp: (WebView::updateWebCoreSettingsFromPreferences):
20:00 Changeset [23998] by aroben

Move logic for calling mouseDidMoveOverElement into WebCore

WebCore:

Move logic for calling mouseDidMoveOverElement into WebCore

Reviewed by Sam.

  • page/EventHandler.cpp: (WebCore::EventHandler::mouseMoved): Added. Calls Chrome::mouseDidMoveOverElement. (WebCore::EventHandler::handleMouseMoveEvent): Now takes an optional HitTestResult* parameter which is used to communicate to the caller the node the mouse is over.
  • page/EventHandler.h:
  • page/mac/EventHandlerMac.mm: (WebCore::EventHandler::mouseMoved): Changed to call the overloaded mouseMoved(). (WebCore::EventHandler::passMouseMoveEventToSubframe): Pass hoveredNode through to the subframe so we can get the deepest node hovered, not just the node's parent frame.
  • page/win/EventHandlerWin.cpp: (WebCore::EventHandler::passMouseMoveEventToSubframe): Ditto.

WebKit:

Removed call to mouseDidMoveOverElement now that WebCore handles it

Reviewed by Sam.

  • WebView/WebHTMLView.mm: (-[WebHTMLView _updateMouseoverWithEvent:]):

WebKit/win:

Removed call to mouseDidMoveOverElement now that WebCore handles it

Reviewed by Sam.

  • WebView.cpp: (WebView::handleMouseEvent):
20:00 Changeset [23997] by aroben

Add Chrome::mouseDidMoveOverElement

WebCore:

Add Chrome::mouseDidMoveOverElement

This does the work of calling up to the ChromeClient (which will call
the UI delegate).

Reviewed by Sam.

  • page/Chrome.cpp: (WebCore::Chrome::mouseDidMoveOverElement): Added.
  • page/Chrome.h:
  • page/ChromeClient.h:
  • platform/graphics/svg/SVGImageEmptyClients.h: Updated for change to ChromeClient.
  • platform/gdk/ChromeClientGdk.h:
  • platform/gdk/TemporaryLinkStubs.cpp: (ChromeClientGdk::mouseDidMoveOverElement):

WebKit:

Add WebChromeClient::mouseDidMoveOverElement

This is not called yet.

Reviewed by Sam.

  • WebCoreSupport/WebChromeClient.h:
  • WebCoreSupport/WebChromeClient.mm:

WebKit/win:

Add WebChromeClient::mouseDidMoveOverElement

This is not called yet.

Reviewed by Sam.

  • WebChromeClient.cpp: (WebChromeClient::mouseDidMoveOverElement):
  • WebChromeClient.h:

WebKitQt:

Added a stub for ChromeClientQt::mouseDidMoveOverElement

Reviewed by Sam.

  • WebCoreSupport/ChromeClientQt.cpp: (WebCore::ChromeClientQt::mouseDidMoveOverElement):
  • WebCoreSupport/ChromeClientQt.h:
20:00 Changeset [23996] by aroben

Changed PlatformMouseEvent to store the modifier flags of the event

Reviewed by Sam.

  • platform/PlatformMouseEvent.h:

(WebCore::PlatformMouseEvent::PlatformMouseEvent):

  • platform/mac/PlatformMouseEventMac.mm:

(WebCore::PlatformMouseEvent::PlatformMouseEvent):

  • platform/win/PlatformMouseEventWin.cpp:

(WebCore::PlatformMouseEvent::PlatformMouseEvent):

19:59 Changeset [23995] by aroben

Add HitTestResult::setToNonShadowAncestor

Reviewed by Sam.

  • page/EventHandler.cpp:

(WebCore::EventHandler::hitTestResultAtPoint): Moved logic into
HitTestResult::setToNonShadowAncestor.

  • rendering/HitTestResult.cpp:

(WebCore::HitTestResult::setToNonShadowAncestor):

  • rendering/HitTestResult.h:
19:59 Changeset [23994] by aroben

Change MouseEventWithHitTestResults to hold onto a HitTestResult

Reviewed by Sam.

  • dom/Document.cpp:

(WebCore::Document::prepareMouseEvent):

  • page/MouseEventWithHitTestResults.cpp:

(WebCore::MouseEventWithHitTestResults::MouseEventWithHitTestResults):
(WebCore::MouseEventWithHitTestResults::targetNode):
(WebCore::MouseEventWithHitTestResults::localPoint):
(WebCore::MouseEventWithHitTestResults::scrollbar):

  • page/MouseEventWithHitTestResults.h:

(WebCore::MouseEventWithHitTestResults::event):
(WebCore::MouseEventWithHitTestResults::hitTestResult):

19:52 JS Core Garbage Collector edited by cwzwarich@uwaterloo.ca
(diff)
19:52 Changeset [23993] by darin
  • take out infinity tests from the test for bug 5292262 (see below) for now since they give different results on PowerPC and Intel and are not an important part of the intent of this test anyway; the bug was about normal numbers, not edge cases like infinity

If we want to test the infinity behavior, we should make a separate test later.

  • fast/objc/longlongTest-expected.txt: Removed results from infinity tests.
  • fast/objc/longlongTest.html: Removed infinity tests.
19:44 JS Core Garbage Collector edited by cwzwarich@uwaterloo.ca
(diff)
19:43 JS Core Garbage Collector edited by cwzwarich@uwaterloo.ca
(diff)
19:43 JS Core Garbage Collector edited by cwzwarich@uwaterloo.ca
(diff)
18:16 Changeset [23992] by pewtermoose

Not reviewed, gdk build fix.

  • platform/gdk/FrameGdk.cpp:
15:54 Changeset [23991] by antti

LayoutTests:

Reviewed by John.


Test for Repro crash due to infinite recursion in HTMLParser::handleError @ youos.com
<rdar://problem/5237811>

  • fast/table/incomplete-table-in-fragment-hang-expected.txt: Added.
  • fast/table/incomplete-table-in-fragment-hang.html: Added.

WebCore:

Reviewed by John.


Fix Repro crash due to infinite recursion in HTMLParser::handleError @ youos.com
<rdar://problem/5237811>


It is possible to add table parts (thead etc) without table ancestor to a document fragment. If a new table element
was added to such a part, as in


div.innerHTML = '<tbody><table>';


the parser error handling code would try to pop the previous table as normal. However since
the table does not actually exist nothing would happen and parser would go to infinite recursion.


Solution here is to pop table parts one by one when handling the error inside a fragment instead of trying to pop
the table straight away (as it might not exist).

  • html/HTMLParser.cpp: (WebCore::HTMLParser::handleError):
14:57 Changeset [23990] by kevino

Fix transparent image support on Windows, and likely GTK too.

14:33 Changeset [23989] by staikos

Patch from Qing Zhao to fix combobox rendering

14:23 Changeset [23988] by staikos

Compile

13:04 Changeset [23987] by weinig

LayoutTests:

Reviewed by Mitz.

Test for http://bugs.webkit.org/show_bug.cgi?id=14504
REGRESSION (r23573): Amazon Book Excerpt can not be viewed in recent nightly

  • fast/dom/Window/window-property-shadowing-expected.txt: Added.
  • fast/dom/Window/window-property-shadowing.html: Added.

WebCore:

Reviewed by Mitz.

Patch for http://bugs.webkit.org/show_bug.cgi?id=14504
REGRESSION (r23573): Amazon Book Excerpt can not be viewed in recent nightly

  • Made it possible (again) to shadow window properties with local variable names.

Test: fast/dom/Window/window-property-shadowing.html

  • bindings/js/JSDOMWindowCustom.cpp: (WebCore::JSDOMWindow::customPut):
  • bindings/js/kjs_window.cpp: (KJS::Window::put):
  • bindings/scripts/CodeGeneratorJS.pm:
  • page/DOMWindow.idl:
11:37 Changeset [23986] by aliceli1

Reviewed by Adam.

Fixed <rdar://problem/5225119> support smart pasting on Windows

  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:

Added new files

  • editing/SmartReplace.cpp: Added. (WebCore::isCharacterSmartReplaceExempt):

Added non-CF implementation placeholder

  • editing/SmartReplace.h: Added.
  • editing/SmartReplaceCF.cpp: Added. (WebCore::getSmartSet): (WebCore::isCharacterSmartReplaceExempt):

Added new implementation

  • bridge/win/FrameWin.cpp:
  • page/Frame.h:
  • page/mac/FrameMac.mm:

Removed old declaration and implementation

  • editing/ReplaceSelectionCommand.cpp: (WebCore::ReplaceSelectionCommand::doApply):

Changed to call the new function instead of old

  • page/mac/WebCoreFrameBridge.h:
  • page/mac/WebCoreFrameBridge.mm:

Removed old declaration and implementation

(-[WebCoreFrameBridge smartInsertForString:replacingRange:beforeString:afterString:]):

Changed to call the new function instead of old

  • platform/win/PasteboardWin.cpp: (WebCore::Pasteboard::Pasteboard):

Register new clipboard format

(WebCore::Pasteboard::writeSelection):

Set data for smartpaste format on clipboard

(WebCore::Pasteboard::canSmartReplace):

Added non-stub implementation

11:33 Changeset [23985] by thatcher

Reenable some code for 64-bit now that <rdar://problem/5311640> and <rdar://problem/5311690> are resolved.

08:15 Changeset [23984] by staikos

Patch from Qing Zhao: Similar to the PlatformScrollbar fixes, adjust the
painter to make the styler draw all subcontrols, and in this case the focus
rect, in the proper location

03:56 Changeset [23983] by bdash

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

Reviewed by Maciej.

No test possible because DumpRenderTree cannot query the current cursor.

  • page/EventHandler.cpp: (WebCore::EventHandler::selectCursor): Changed into a member function and added that if the last mouse down event could not have started a selection, then the cursor should not change to an I-beam unconditionally. (WebCore::EventHandler::handleMouseMoveEvent):
  • page/EventHandler.h:
03:52 Changeset [23982] by bdash

2007-07-04 Holger Hans Peter Freyther <zecke@selfish.org>

Reviewed by Rob Buis.

A little progress in tracking dependencies.

  • WebCore.pro: Add DEPENDPATH for the Gdk port.
00:13 Changeset [23981] by bdash

Versioning.

00:13 Changeset [23980] by bdash

Build fix.

00:10 Changeset [23979] by bdash

New tag.

07/03/07:

20:02 Changeset [23978] by darin
  • StringsNotToBeLocalized.txt: Updated for recent changes.
18:07 Changeset [23977] by thatcher

Reviewed by Darin.

Remove HIWebView in 64-bit.

Also disable a few calls that are now gone in 64-bit and filed these bugs:

<rdar://problem/5311653> WebKit needs to adopt HIGetMousePosition where we used GetGlobalMouse before
<rdar://problem/5311648> WebKit needs to move off of CopyEvent in WebBaseNetscapePluginView
<rdar://problem/5311640> WebKit needs a new solution for HISearchWindowShow on 64-bit

  • Carbon/CarbonUtils.m:
  • Carbon/CarbonWindowAdapter.m:
  • Carbon/CarbonWindowContentView.m:
  • Carbon/CarbonWindowFrame.m:
  • Carbon/HIViewAdapter.m: (SetViewNeedsDisplay):
  • Carbon/HIWebView.m: (Draw): (SyncFrame):
  • Configurations/WebKit.xcconfig:
  • Plugins/WebBaseNetscapePluginView.mm: (+[WebBaseNetscapePluginView getCarbonEvent:]): (TSMEventHandler):
  • WebKit.LP64.exp: Added.
  • WebView/WebView.mm: (-[WebView _searchWithSpotlightFromMenu:]):
18:04 Changeset [23976] by thatcher

Disable the strict aliasing warning until <rdar://problem/5311093> is fixed.

18:02 Changeset [23975] by thatcher

64-bit build fix.

17:58 Changeset [23974] by aroben

Fixed update-webkit-localizable-strings to work with new extract-localizable-strings

Got rid of extract-webkit-localizable-strings because it was trying to
do update-webkit-localizable-strings' job.

Rubberstamped by Darin.

  • Scripts/extract-webkit-localizable-strings: Removed.
  • Scripts/update-webkit-localizable-strings: Renamed from

extract-localizable-strings.

17:56 Changeset [23973] by thatcher

Reviewed by Darin.

Remove HIWebView in 64-bit.

Also disable a few calls that are now gone in 64-bit and filed these bugs:

<rdar://problem/5311653> WebKit needs to adopt HIGetMousePosition where we used GetGlobalMouse before
<rdar://problem/5311648> WebKit needs to move off of CopyEvent in WebBaseNetscapePluginView
<rdar://problem/5311640> WebKit needs a new solution for HISearchWindowShow on 64-bit

  • Carbon/CarbonUtils.m:
  • Carbon/CarbonWindowAdapter.m:
  • Carbon/CarbonWindowContentView.m:
  • Carbon/CarbonWindowFrame.m:
  • Carbon/HIViewAdapter.m: (SetViewNeedsDisplay):
  • Carbon/HIWebView.m: (Draw): (SyncFrame):
  • Configurations/WebKit.xcconfig:
  • Plugins/WebBaseNetscapePluginView.mm: (+[WebBaseNetscapePluginView getCarbonEvent:]): (TSMEventHandler):
  • WebKit.LP64.exp: Added.
  • WebView/WebView.mm: (-[WebView _searchWithSpotlightFromMenu:]):
17:40 Changeset [23972] by aroben

Merge the Windows and Mac localized strings and exceptions files

WebKit:

Merge the Windows and Mac localized strings and exceptions files

Reviewed by Darin and Anders.

  • English.lproj/Localizable.strings: Added Windows strings.
  • StringsNotToBeLocalized.txt: Renamed from WebKit/English.lproj/StringsNotToBeLocalized.txt.

WebKit/win:

Merge the Windows and Mac localized strings and exceptions files

Reviewed by Darin and Anders.

  • English.lproj/Localizable.strings: Added Mac strings.
  • English.lproj/StringsNotToBeLocalized.txt: Removed.

WebKitTools:

Modify scripts to keep Mac/Windows localized strings in sync

extract-webkit-localizable-strings now handles extracting strings from
both the Mac and Windows WebKit ports and updating their respective
Localizable.strings files. extract-localizable-strings is now really a
piece of plumbing rather than a top-level tool.

Reviewed by Darin and Anders.

  • Scripts/extract-localizable-strings: Changed to handle multiple directories.
  • Scripts/extract-webkit-localizable-strings: Added.
17:29 Changeset [23971] by adele

Removed printf I accidently left in.

  • Misc/WebNSURLExtras.m: (mapHostNames):
17:06 Changeset [23970] by thatcher

Merge r23946 to fix 64-bit build.

17:04 Changeset [23969] by darin

LayoutTests:

Reviewed by Tim Hatcher.

  • tests for <rdar://problem/5221297> Font family name in the cssText for a DOMCSSStyleDeclaration needs quotes
  • editing/style/font-family-with-space-expected.txt: Added.
  • editing/style/font-family-with-space.html: Added.
  • fast/inspector/style-expected.txt: Updated expected results to expect "Lucida Grande" in quote marks.

WebCore:

Reviewed by Tim Hatcher.

  • fix <rdar://problem/5221297> Font family name in the cssText for a DOMCSSStyleDeclaration needs quotes

Test: editing/style/font-family-with-space.html

  • css/FontFamilyValue.cpp: (WebCore::isValidCSSIdentifier): Added. Implements the same rule that the CSS lexer does. (WebCore::quoteStringIfNeeded): Changed to call isValidCSSIdentifier instead of just checking for a leading "#" character.
  • editing/markup.cpp: (WebCore::escapeTextForMarkup): Changed to take a String parameter for better efficiency. (WebCore::renderedText): Changed to return a String for better efficiency. (WebCore::addNamespace): Updated to pass String to escapeTextForMarkup. (WebCore::startMarkup): Updated to pass String to escapeTextForMarkup. Added missing call to escapeTextForMarkup in the special case for the style property. (WebCore::createMarkup): Changed from single quotes to double quotes and also added missing call to escapeTextForMarkup in two special cases for the style property.
16:56 Changeset [23968] by thatcher

64-bit build fix.

16:54 Changeset [23967] by adele

Updating comment

16:46 Changeset [23966] by thatcher

Disable the strict aliasing warning, not strict aliasing.

16:21 Changeset [23965] by thatcher

Turn off strict aliasing until <rdar://problem/5311093> is fixed.

16:19 Changeset [23964] by weinig

Reviewed by Darin.

Twelfth round of fixes for implicit 64-32 bit conversion errors.
<rdar://problem/5292262>

  • Add casts and accompanying FIXMEs to avoid remaining compiler errors.
  • WebCore.xcodeproj/project.pbxproj:
  • loader/FrameLoader.cpp: (WebCore::FrameLoader::opened): (WebCore::FrameLoader::sendRemainingDelegateMessages):
  • loader/FrameLoader.h:
  • loader/ResourceLoader.cpp: (WebCore::ResourceLoader::didReceiveData):
  • platform/network/mac/ResourceHandleMac.mm: (-[WebCoreResourceHandleAsDelegate connection:didReceiveData:lengthReceived:]): (-[WebCoreResourceHandleAsDelegate connection:willStopBufferingData:]):
  • platform/network/mac/ResourceResponseMac.mm: (WebCore::ResourceResponse::nsURLResponse):
16:16 Changeset [23963] by adele

LayoutTests:

Reviewed by Darin.

Test for: <rdar://problem/5292988> domain names shouldn't contain ignorable characters

  • fast/encoding/idn-security-expected.txt: Added.
  • fast/encoding/idn-security.html: Added.
  • win/Skipped: Blocked by <rdar://problem/5301954>.

WebKit:

Reviewed by Darin.

Fix for: <rdar://problem/5292988> domain names shouldn't contain ignorable characters

  • Misc/WebNSURLExtras.m: (isLookalikeCharacter): Renamed. Also excludes any non-printable character, any character considered as whitespace that isn't already converted to a space by ICU, any ignorable character, and any character excluded in Mozilla's blacklist: http://kb.mozillazine.org/Network.IDN.blacklist_chars (allCharactersInIDNScriptWhiteList):

WebKitTools:

Reviewed by Darin.

Extended DumpRenderTree to test encoding and decoding host names.

  • DumpRenderTree/DumpRenderTree.m: (+[LayoutTestController isSelectorExcludedFromWebScript:]): Added cases for encodeHostName and decodeHostName. (+[LayoutTestController webScriptNameForSelector:]): ditto. (-[LayoutTestController decodeHostName:]): Added. (-[LayoutTestController encodeHostName:]): Added.
16:03 Changeset [23962] by kevino

Add some more functionality to the basic sample.

15:51 Changeset [23961] by weinig

Reviewed by Darin.

Eleventh round of fixes for implicit 64-32 bit conversion errors.
<rdar://problem/5292262>

Add functions to test long long and unsigned long long.

  • DumpRenderTree/DumpRenderTree.m: (+[LayoutTestController isSelectorExcludedFromWebScript:]): (+[LayoutTestController webScriptNameForSelector:]): (-[LayoutTestController objCLongLongRoundTrip:]): (-[LayoutTestController objCUnsignedLongLongRoundTrip:]):
15:37 Changeset [23960] by weinig

JavaScriptCore:

Reviewed by Darin.

Eleventh round of fixes for implicit 64-32 bit conversion errors.
<rdar://problem/5292262>

  • Fixes a real bug where where we were setting long long and unsigned long long values to a long field.
  • bindings/objc/objc_utility.mm: (KJS::Bindings::convertValueToObjcValue):

LayoutTests:

Reviewed by Darin.

Eleventh round of fixes for implicit 64-32 bit conversion errors.
<rdar://problem/5292262>

  • fast/objc: Added.
  • fast/objc/longlongTest-expected.txt: Added.
  • fast/objc/longlongTest.html: Added.
15:11 Changeset [23959] by thatcher

Merge r23894.

15:04 Changeset [23958] by thatcher

Turn off -Wshorten-64-to-32 until <rdar://problems/5292100&5292113&5292262> are fixed.

15:02 Changeset [23957] by darin

Reviewed by Maciej.

  • fix <rdar://problem/5310848> WebDataSource lifetime problem -- may be cause of the leaks seen on the buildbot
  • WebView/WebDataSource.mm: (-[WebDataSourcePrivate dealloc]): Added a call to the new detachDataSource function. (-[WebDataSourcePrivate finalize]): Ditto.
  • WebView/WebDocumentLoaderMac.h: Added detachDataSource function to be used when the WebDataSource is deallocated. Added retain/releaseDataSource helper functions to be used to retain and release the data source object. Replaced the m_hasEverBeenDetached boolean with a more primitive and hence easier to understand m_isDataSourceRetained boolean.
  • WebView/WebDocumentLoaderMac.mm: (WebDocumentLoaderMac::WebDocumentLoaderMac): Initialize m_isDataSourceRetained to false. (WebDocumentLoaderMac::setDataSource): Call retainDataSource instead of calling HardRetain on the dataSource parameter. Also updated a comment. (WebDocumentLoaderMac::attachToFrame): Call retainDataSource unconditionally rather than trying to use m_hasEverBeenDetached to decide if a retain is needed. Also got rid of an assertion that m_loadingResources is empty -- not important any more. (WebDocumentLoaderMac::detachFromFrame): Call releaseDataSource instead of using HardRelease, but only if m_loadingResources is empty. If it's non-empty, then we'll do the releaseDataSource later in decreaseLoadCount. (WebDocumentLoaderMac::increaseLoadCount): Call retainDataSource unconditionally rather than calling HardRetain only if the old set of resources was empty. (WebDocumentLoaderMac::decreaseLoadCount): Call releaseDataSource if m_loadingResources is empty and we're not attached to a frame. If we are attached to a frame, then we'll do the releaseDataSource later in detachFromFrame. (WebDocumentLoaderMac::retainDataSource): Added. Calls CFRetain, but only if the data source is not already retained (according to the boolean). (WebDocumentLoaderMac::releaseDataSource): Added. Calls CFRelease, but only if the data source is currently retained (according to the boolean). (WebDocumentLoaderMac::detachDataSource): Added. Sets m_dataSource to nil. Since this is only called from WebDataSource's dealloc and finalize methods, it won't ever be called when the m_isDataSourceRetained boolean is true.
15:01 Changeset [23956] by andersca

Reviewed by Adam.

<rdar://problem/5093862>
Nothing shown in plugin area when trying to play content using the DivX plugin


Defer calling SetWindow for the DivX plugin, just like we do with the WMP plugin.


  • plugins/win/PluginViewWin.cpp: (WebCore::PluginViewWin::determineQuirks):
14:35 Changeset [23955] by weinig

Reviewed by Brady Eidson.

Tenth round of fixes for implicit 64-32 bit conversion errors.
<rdar://problem/5292262>

  • Add explicit casts.
  • kjs/dtoa.cpp: (Bigint::):
14:21 Changeset [23954] by darin
  • forgot to check in one file in the fix for <rdar://problem/5307880> some classes need finalize methods because of non-trivial work done in dealloc methods
  • WebView/WebView.mm: (-[WebViewPrivate finalize]): Delete identifierMap so it doesn't leak.
14:17 Changeset [23953] by weinig

Reviewed by Brady Eidson.

Ninth round of fixes for implicit 64-32 bit conversion errors.
<rdar://problem/5292262>

  • Fix function signature to use unsigned long instead of unsigned long long.
  • loader/ProgressTracker.cpp: (WebCore::ProgressTracker::completeProgress):
  • loader/ProgressTracker.h:
14:11 Changeset [23952] by thatcher

New tag.

13:46 Changeset [23951] by weinig

Reviewed by Oliver.

Eighth round of fixes for implicit 64-32 bit conversion errors.
<rdar://problem/5292262>

  • Convert SVG implementation files to use floats instead of doubles to match the spec/IDLs.
  • bindings/scripts/CodeGeneratorJS.pm:
  • ksvg2/svg/SVGAngle.cpp:
  • ksvg2/svg/SVGAnimatedTemplate.h:
  • ksvg2/svg/SVGAnimationElement.cpp: (WebCore::SVGAnimationElement::getEndTime): (WebCore::SVGAnimationElement::getStartTime): (WebCore::SVGAnimationElement::getCurrentTime): (WebCore::SVGAnimationElement::getSimpleDuration):
  • ksvg2/svg/SVGAnimationElement.h:
  • ksvg2/svg/SVGFitToViewBox.cpp: (WebCore::SVGFitToViewBox::parseViewBox):
  • ksvg2/svg/SVGLength.cpp: (WebCore::SVGLength::setValueAsString):
  • ksvg2/svg/SVGLinearGradientElement.cpp: (WebCore::SVGLinearGradientElement::buildGradient):
  • ksvg2/svg/SVGMatrix.idl:
  • ksvg2/svg/SVGNumber.idl:
  • ksvg2/svg/SVGParserUtilities.cpp: (WebCore::SVGPathParser::parseSVG): (WebCore::SVGPathParser::calculateArc): (WebCore::SVGPathParser::svgLineToHorizontal): (WebCore::SVGPathParser::svgLineToVertical): (WebCore::SVGPathParser::svgCurveToCubicSmooth): (WebCore::SVGPathParser::svgCurveToQuadratic): (WebCore::SVGPathParser::svgCurveToQuadraticSmooth): (WebCore::SVGPathParser::svgArcTo):
  • ksvg2/svg/SVGParserUtilities.h:
  • ksvg2/svg/SVGPathElement.cpp: (WebCore::SVGPathElement::SVGPathElement): (WebCore::SVGPathElement::getTotalLength): (WebCore::SVGPathElement::getPointAtLength): (WebCore::SVGPathElement::getPathSegAtLength): (WebCore::SVGPathElement::createSVGPathSegMovetoAbs): (WebCore::SVGPathElement::createSVGPathSegMovetoRel): (WebCore::SVGPathElement::createSVGPathSegLinetoAbs): (WebCore::SVGPathElement::createSVGPathSegLinetoRel): (WebCore::SVGPathElement::createSVGPathSegCurvetoCubicAbs): (WebCore::SVGPathElement::createSVGPathSegCurvetoCubicRel): (WebCore::SVGPathElement::createSVGPathSegCurvetoQuadraticAbs): (WebCore::SVGPathElement::createSVGPathSegCurvetoQuadraticRel): (WebCore::SVGPathElement::createSVGPathSegArcAbs): (WebCore::SVGPathElement::createSVGPathSegArcRel): (WebCore::SVGPathElement::createSVGPathSegLinetoHorizontalAbs): (WebCore::SVGPathElement::createSVGPathSegLinetoHorizontalRel): (WebCore::SVGPathElement::createSVGPathSegLinetoVerticalAbs): (WebCore::SVGPathElement::createSVGPathSegLinetoVerticalRel): (WebCore::SVGPathElement::createSVGPathSegCurvetoCubicSmoothAbs): (WebCore::SVGPathElement::createSVGPathSegCurvetoCubicSmoothRel): (WebCore::SVGPathElement::createSVGPathSegCurvetoQuadraticSmoothAbs): (WebCore::SVGPathElement::createSVGPathSegCurvetoQuadraticSmoothRel): (WebCore::SVGPathElement::svgMoveTo): (WebCore::SVGPathElement::svgLineTo): (WebCore::SVGPathElement::svgLineToHorizontal): (WebCore::SVGPathElement::svgLineToVertical): (WebCore::SVGPathElement::svgCurveToCubic): (WebCore::SVGPathElement::svgCurveToCubicSmooth): (WebCore::SVGPathElement::svgCurveToQuadratic): (WebCore::SVGPathElement::svgCurveToQuadraticSmooth): (WebCore::SVGPathElement::svgArcTo): (WebCore::SVGPathElement::parseMappedAttribute):
  • ksvg2/svg/SVGPathElement.h:
  • ksvg2/svg/SVGPathSegArc.cpp: (WebCore::SVGPathSegArcAbs::SVGPathSegArcAbs): (WebCore::SVGPathSegArcAbs::setX): (WebCore::SVGPathSegArcAbs::x): (WebCore::SVGPathSegArcAbs::setY): (WebCore::SVGPathSegArcAbs::y): (WebCore::SVGPathSegArcAbs::setR1): (WebCore::SVGPathSegArcAbs::r1): (WebCore::SVGPathSegArcAbs::setR2): (WebCore::SVGPathSegArcAbs::r2): (WebCore::SVGPathSegArcAbs::setAngle): (WebCore::SVGPathSegArcAbs::angle): (WebCore::SVGPathSegArcRel::SVGPathSegArcRel): (WebCore::SVGPathSegArcRel::setX): (WebCore::SVGPathSegArcRel::x): (WebCore::SVGPathSegArcRel::setY): (WebCore::SVGPathSegArcRel::y): (WebCore::SVGPathSegArcRel::setR1): (WebCore::SVGPathSegArcRel::r1): (WebCore::SVGPathSegArcRel::setR2): (WebCore::SVGPathSegArcRel::r2): (WebCore::SVGPathSegArcRel::setAngle): (WebCore::SVGPathSegArcRel::angle):
  • ksvg2/svg/SVGPathSegArc.h:
  • ksvg2/svg/SVGPathSegCurvetoCubic.cpp: (WebCore::SVGPathSegCurvetoCubicAbs::SVGPathSegCurvetoCubicAbs): (WebCore::SVGPathSegCurvetoCubicAbs::setX): (WebCore::SVGPathSegCurvetoCubicAbs::x): (WebCore::SVGPathSegCurvetoCubicAbs::setY): (WebCore::SVGPathSegCurvetoCubicAbs::y): (WebCore::SVGPathSegCurvetoCubicAbs::setX1): (WebCore::SVGPathSegCurvetoCubicAbs::x1): (WebCore::SVGPathSegCurvetoCubicAbs::setY1): (WebCore::SVGPathSegCurvetoCubicAbs::y1): (WebCore::SVGPathSegCurvetoCubicAbs::setX2): (WebCore::SVGPathSegCurvetoCubicAbs::x2): (WebCore::SVGPathSegCurvetoCubicAbs::setY2): (WebCore::SVGPathSegCurvetoCubicAbs::y2): (WebCore::SVGPathSegCurvetoCubicRel::SVGPathSegCurvetoCubicRel): (WebCore::SVGPathSegCurvetoCubicRel::setX): (WebCore::SVGPathSegCurvetoCubicRel::x): (WebCore::SVGPathSegCurvetoCubicRel::setY): (WebCore::SVGPathSegCurvetoCubicRel::y): (WebCore::SVGPathSegCurvetoCubicRel::setX1): (WebCore::SVGPathSegCurvetoCubicRel::x1): (WebCore::SVGPathSegCurvetoCubicRel::setY1): (WebCore::SVGPathSegCurvetoCubicRel::y1): (WebCore::SVGPathSegCurvetoCubicRel::setX2): (WebCore::SVGPathSegCurvetoCubicRel::x2): (WebCore::SVGPathSegCurvetoCubicRel::setY2): (WebCore::SVGPathSegCurvetoCubicRel::y2):
  • ksvg2/svg/SVGPathSegCurvetoCubic.h:
  • ksvg2/svg/SVGPathSegCurvetoCubicSmooth.cpp: (WebCore::SVGPathSegCurvetoCubicSmoothAbs::SVGPathSegCurvetoCubicSmoothAbs): (WebCore::SVGPathSegCurvetoCubicSmoothAbs::setX): (WebCore::SVGPathSegCurvetoCubicSmoothAbs::x): (WebCore::SVGPathSegCurvetoCubicSmoothAbs::setY): (WebCore::SVGPathSegCurvetoCubicSmoothAbs::y): (WebCore::SVGPathSegCurvetoCubicSmoothAbs::setX2): (WebCore::SVGPathSegCurvetoCubicSmoothAbs::x2): (WebCore::SVGPathSegCurvetoCubicSmoothAbs::setY2): (WebCore::SVGPathSegCurvetoCubicSmoothAbs::y2): (WebCore::SVGPathSegCurvetoCubicSmoothRel::SVGPathSegCurvetoCubicSmoothRel): (WebCore::SVGPathSegCurvetoCubicSmoothRel::setX): (WebCore::SVGPathSegCurvetoCubicSmoothRel::x): (WebCore::SVGPathSegCurvetoCubicSmoothRel::setY): (WebCore::SVGPathSegCurvetoCubicSmoothRel::y): (WebCore::SVGPathSegCurvetoCubicSmoothRel::setX2): (WebCore::SVGPathSegCurvetoCubicSmoothRel::x2): (WebCore::SVGPathSegCurvetoCubicSmoothRel::setY2): (WebCore::SVGPathSegCurvetoCubicSmoothRel::y2):
  • ksvg2/svg/SVGPathSegCurvetoCubicSmooth.h:
  • ksvg2/svg/SVGPathSegCurvetoQuadratic.cpp: (WebCore::SVGPathSegCurvetoQuadraticAbs::SVGPathSegCurvetoQuadraticAbs): (WebCore::SVGPathSegCurvetoQuadraticAbs::setX): (WebCore::SVGPathSegCurvetoQuadraticAbs::x): (WebCore::SVGPathSegCurvetoQuadraticAbs::setY): (WebCore::SVGPathSegCurvetoQuadraticAbs::y): (WebCore::SVGPathSegCurvetoQuadraticAbs::setX1): (WebCore::SVGPathSegCurvetoQuadraticAbs::x1): (WebCore::SVGPathSegCurvetoQuadraticAbs::setY1): (WebCore::SVGPathSegCurvetoQuadraticAbs::y1): (WebCore::SVGPathSegCurvetoQuadraticRel::SVGPathSegCurvetoQuadraticRel): (WebCore::SVGPathSegCurvetoQuadraticRel::setX): (WebCore::SVGPathSegCurvetoQuadraticRel::x): (WebCore::SVGPathSegCurvetoQuadraticRel::setY): (WebCore::SVGPathSegCurvetoQuadraticRel::y): (WebCore::SVGPathSegCurvetoQuadraticRel::setX1): (WebCore::SVGPathSegCurvetoQuadraticRel::x1): (WebCore::SVGPathSegCurvetoQuadraticRel::setY1): (WebCore::SVGPathSegCurvetoQuadraticRel::y1):
  • ksvg2/svg/SVGPathSegCurvetoQuadratic.h: (WebCore::SVGPathSegCurvetoQuadraticRel::toString):
  • ksvg2/svg/SVGPathSegCurvetoQuadraticSmooth.cpp: (WebCore::SVGPathSegCurvetoQuadraticSmoothAbs::SVGPathSegCurvetoQuadraticSmoothAbs): (WebCore::SVGPathSegCurvetoQuadraticSmoothAbs::setX): (WebCore::SVGPathSegCurvetoQuadraticSmoothAbs::x): (WebCore::SVGPathSegCurvetoQuadraticSmoothAbs::setY): (WebCore::SVGPathSegCurvetoQuadraticSmoothAbs::y): (WebCore::SVGPathSegCurvetoQuadraticSmoothRel::SVGPathSegCurvetoQuadraticSmoothRel): (WebCore::SVGPathSegCurvetoQuadraticSmoothRel::setX): (WebCore::SVGPathSegCurvetoQuadraticSmoothRel::x): (WebCore::SVGPathSegCurvetoQuadraticSmoothRel::setY): (WebCore::SVGPathSegCurvetoQuadraticSmoothRel::y):
  • ksvg2/svg/SVGPathSegCurvetoQuadraticSmooth.h:
  • ksvg2/svg/SVGPathSegLineto.cpp: (WebCore::SVGPathSegLinetoAbs::SVGPathSegLinetoAbs): (WebCore::SVGPathSegLinetoAbs::setX): (WebCore::SVGPathSegLinetoAbs::x): (WebCore::SVGPathSegLinetoAbs::setY): (WebCore::SVGPathSegLinetoAbs::y): (WebCore::SVGPathSegLinetoRel::SVGPathSegLinetoRel): (WebCore::SVGPathSegLinetoRel::setX): (WebCore::SVGPathSegLinetoRel::x): (WebCore::SVGPathSegLinetoRel::setY): (WebCore::SVGPathSegLinetoRel::y):
  • ksvg2/svg/SVGPathSegLineto.h:
  • ksvg2/svg/SVGPathSegLinetoHorizontal.cpp: (WebCore::SVGPathSegLinetoHorizontalAbs::SVGPathSegLinetoHorizontalAbs): (WebCore::SVGPathSegLinetoHorizontalAbs::setX): (WebCore::SVGPathSegLinetoHorizontalAbs::x): (WebCore::SVGPathSegLinetoHorizontalRel::SVGPathSegLinetoHorizontalRel): (WebCore::SVGPathSegLinetoHorizontalRel::setX): (WebCore::SVGPathSegLinetoHorizontalRel::x):
  • ksvg2/svg/SVGPathSegLinetoHorizontal.h:
  • ksvg2/svg/SVGPathSegLinetoVertical.cpp: (WebCore::SVGPathSegLinetoVerticalAbs::SVGPathSegLinetoVerticalAbs): (WebCore::SVGPathSegLinetoVerticalAbs::setY): (WebCore::SVGPathSegLinetoVerticalAbs::y): (WebCore::SVGPathSegLinetoVerticalRel::SVGPathSegLinetoVerticalRel): (WebCore::SVGPathSegLinetoVerticalRel::setY): (WebCore::SVGPathSegLinetoVerticalRel::y):
  • ksvg2/svg/SVGPathSegLinetoVertical.h:
  • ksvg2/svg/SVGPathSegList.cpp: (WebCore::SVGPathSegList::getPathSegAtLength):
  • ksvg2/svg/SVGPathSegList.h:
  • ksvg2/svg/SVGPathSegMoveto.cpp: (WebCore::SVGPathSegMovetoAbs::SVGPathSegMovetoAbs): (WebCore::SVGPathSegMovetoAbs::setX): (WebCore::SVGPathSegMovetoAbs::x): (WebCore::SVGPathSegMovetoAbs::setY): (WebCore::SVGPathSegMovetoAbs::y): (WebCore::SVGPathSegMovetoRel::SVGPathSegMovetoRel): (WebCore::SVGPathSegMovetoRel::setX): (WebCore::SVGPathSegMovetoRel::x): (WebCore::SVGPathSegMovetoRel::setY): (WebCore::SVGPathSegMovetoRel::y):
  • ksvg2/svg/SVGPathSegMoveto.h:
  • ksvg2/svg/SVGPolyElement.cpp: (WebCore::SVGPolyElement::svgPolyTo):
  • ksvg2/svg/SVGRadialGradientElement.cpp: (WebCore::SVGRadialGradientElement::buildGradient):
  • ksvg2/svg/SVGSVGElement.cpp: (WebCore::SVGSVGElement::viewport): (WebCore::SVGSVGElement::getCurrentTime):
  • ksvg2/svg/SVGStopElement.cpp: (WebCore::SVGStopElement::SVGStopElement): (WebCore::SVGStopElement::parseMappedAttribute):
  • ksvg2/svg/SVGStopElement.h:
  • ksvg2/svg/SVGTransform.cpp: (SVGTransform::translate): (SVGTransform::scale):
  • ksvg2/svg/SVGTransformDistance.cpp: (WebCore::SVGTransformDistance::addToSVGTransform): (WebCore::SVGTransformDistance::distance):
  • ksvg2/svg/SVGTransformable.cpp: (WebCore::SVGTransformable::parseTransformAttribute):
13:15 Changeset [23950] by andersca

LayoutTests:

Reviewed by Darin.

<rdar://problem/5289718>
http://bugs.webkit.org/show_bug.cgi?id=14437
CrashTracer: [REGRESSION] 76 crashes in Safari at com.apple.WebCore: WebCore::Frame::settings const + 6 (14437)


Add test from Alexey Proskuryakov.


  • plugins/plugin-remove-subframe-expected.txt: Added.
  • plugins/plugin-remove-subframe.html: Added.

WebCore:

Reviewed by Darin.

<rdar://problem/5289718>
http://bugs.webkit.org/show_bug.cgi?id=14437
CrashTracer: [REGRESSION] 76 crashes in Safari at com.apple.WebCore: WebCore::Frame::settings const + 6 (14437)


Based on a patch from Maxime Britto.


  • page/mac/WebCoreFrameBridge.mm: (-[WebCoreFrameBridge stringByEvaluatingJavaScriptFromString:forceUserGesture:]): If the script caused the frame to go away, return nil. This can only happen if a plugin in a subframe destroys its frame.

(-[WebCoreFrameBridge aeDescByEvaluatingJavaScriptFromString:]):
ASSERT that this is only called on the main frame.

WebKit:

Reviewed by Darin.

  • WebView/WebView.mm: (-[WebView stringByEvaluatingJavaScriptFromString:]): ASSERT that the value returned isn't nil. It can't be nil when invoked on the main frame.
12:22 Changeset [23949] by sullivan

Written by Darin, reviewed by me


  • fixed <rdar://problem/5249730> REGRESSION (Leopard, around 9A464): Safari opens the same local documents more than once due to canonicalization change
  • loader/mac/LoaderNSURLExtras.m: (canonicalURL): pass URL through KURL so we get KURL's version of canonicalization as well as NSURLProtocol's version of canonicalization
12:14 Changeset [23948] by weinig

LayoutTests:

Reviewed by Darin.

Seventh round of fixes for implicit 64-32 bit conversion errors.
<rdar://problem/5292262>

  • Change from double -> float caused some slight changes.
  • svg/W3C-SVG-1.1/animate-elem-33-t-expected.txt:
  • svg/W3C-SVG-1.1/animate-elem-37-t-expected.txt:
  • svg/W3C-SVG-1.1/animate-elem-39-t-expected.txt:
  • svg/W3C-SVG-1.1/animate-elem-80-t-expected.txt:
  • svg/W3C-SVG-1.1/animate-elem-81-t-expected.txt:
  • svg/W3C-SVG-1.1/animate-elem-82-t-expected.txt:
  • svg/W3C-SVG-1.1/animate-elem-83-t-expected.txt:
  • svg/W3C-SVG-1.1/coords-units-02-b-expected.txt:
  • svg/W3C-SVG-1.1/painting-render-01-b-expected.txt:
  • svg/W3C-SVG-1.1/script-handle-02-b-expected.txt:
  • svg/W3C-SVG-1.1/script-handle-03-b-expected.txt:
  • svg/W3C-SVG-1.1/script-handle-04-b-expected.txt:
  • svg/W3C-SVG-1.1/shapes-circle-02-t-expected.txt:
  • svg/W3C-SVG-1.1/shapes-ellipse-02-t-expected.txt:
  • svg/W3C-SVG-1.1/text-align-01-b-expected.txt:
  • svg/W3C-SVG-1.1/text-align-05-b-expected.txt:
  • svg/W3C-SVG-1.1/types-basicDOM-01-b-expected.txt:

WebCore:

Reviewed by Darin.

Seventh round of fixes for implicit 64-32 bit conversion errors.
<rdar://problem/5292262>

  • Adds more narrowPrecision functions to FloatPoint, FloatSize and FloatRect.
  • Changes over more implicit conversions to use new functions.
  • bindings/js/kjs_window.cpp: (KJS::WindowFunc::callAsFunction):
  • platform/graphics/FloatPoint.cpp: (WebCore::FloatPoint::matrixTransform): (WebCore::FloatPoint::narrowPrecision):
  • platform/graphics/FloatPoint.h:
  • platform/graphics/FloatRect.cpp: (WebCore::FloatRect::narrowPrecision):
  • platform/graphics/FloatRect.h:
  • platform/graphics/FloatSize.cpp: (WebCore::FloatSize::narrowPrecision):
  • platform/graphics/FloatSize.h:
  • platform/graphics/Path.cpp: (WebCore::Path::createRoundedRectangle): (WebCore::Path::createRectangle): (WebCore::Path::createEllipse):
  • platform/graphics/mac/ColorMac.mm: (WebCore::nsColor):
  • platform/graphics/mac/IconMac.mm: (WebCore::Icon::paint):
  • platform/graphics/svg/cg/CgSupport.cpp: (WebCore::applyStrokeStyleToContext):
  • platform/graphics/svg/cg/SVGPaintServerGradientCg.cpp: (WebCore::CGShadingRefForRadialGradient): (WebCore::SVGPaintServerGradient::updateQuartzGradientStopsCache): (WebCore::SVGPaintServerGradient::handleBoundingBoxModeAndGradientTransformation):
  • platform/graphics/svg/cg/SVGResourceMaskerCg.mm: (WebCore::applyLuminanceToAlphaFilter): (WebCore::applyExpandAlphatoGrayscaleFilter): (WebCore::transformImageIntoGrayscaleMask):
  • platform/mac/WebCoreTextRenderer.mm: (WebCoreDrawTextAtPoint):
  • rendering/RenderPath.cpp: (WebCore::RenderPath::mapAbsolutePointToLocal):
  • rendering/RenderSVGContainer.cpp: (WebCore::RenderSVGContainer::calcViewport):
  • rendering/RenderSVGImage.cpp: (WebCore::RenderSVGImage::nodeAtPoint):
  • rendering/RenderSVGText.cpp: (WebCore::RenderSVGText::relativeBBox):
10:55 Changeset [23947] by andersca

Reviewed by Adam.

<rdar://problem/5261523>
Crash playing MP11 on cnbc.com


The WMP Netscape plugin still creates a window even when windowless mode is turned on. Work around this by
always removing the "windowlessvideo" parameter before passing it to the plugin.
According to http://msdn2.microsoft.com/en-us/library/bb249373.aspx, "The windowlessVideo property is not
supported for Netscape Navigator. Setting a value for this property in Navigator may yield unexpected results."


  • plugins/win/PluginViewWin.cpp: (WebCore::PluginViewWndProc): (WebCore::PluginViewWin::paint): (WebCore::PluginViewWin::invalidateRect): (WebCore::PluginViewWin::determineQuirks): (WebCore::PluginViewWin::setParameters): (WebCore::PluginViewWin::PluginViewWin): (WebCore::PluginViewWin::init):
  • plugins/win/PluginViewWin.h: (WebCore::):
09:21 Changeset [23946] by bdash

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

Unreviewed 64-bit build fixes.

  • WebCoreSupport/WebInspectorClient.mm: Let the compiler know that WebFrameView is a subclass of NSView.
  • WebView/WebDocumentInternal.h: Remove our preprocessor macro once we're done with it.
  • WebView/WebHTMLView.mm: (-[WebHTMLView markAllMatchesForText:caseSensitive:limit:]): Fix argument types.
08:29 Changeset [23945] by staikos

Patch from Qing Zhao to fix sunken state improperly set.

06:42 Changeset [23944] by antti

LayoutTests:

Reviewed by Maciej.


Test for REGRESSION: misplaced selection ring remains after link is no longer focused.
<rdar://problem/5205580>

  • fast/repaint/focus-layers-expected.checksum: Added.
  • fast/repaint/focus-layers-expected.png: Added.
  • fast/repaint/focus-layers-expected.txt: Added.
  • fast/repaint/focus-layers.html: Added.

WebCore:

Reviewed by Maciej.


REGRESSION: misplaced selection ring remains after link is no longer focused.
<rdar://problem/5205580>


Fix placement of selection ring when part of the ring is in a different layer.

  • rendering/RenderFlow.cpp: (WebCore::RenderFlow::addFocusRingRects): Get coordinates right when moving to a different layer.
  • rendering/RenderObject.cpp: (WebCore::RenderObject::setStyle): Don't reset state variables when not necessary. When repaint() was called at the end of setSyle() it would get repaint rects wrong in some cases.
06:31 Changeset [23943] by antti

Reviewed by Maciej.

Blind fix for CrashTracer: [USER] 25 crashes in Safari at com.apple.WebCore: WebCore::Frame::document const + 6
<rdar://problem/5263939>


No one has managed to reproduce this but it looks like null check is needed here. There are plausible ways
m_frame could be null for a live FrameView object.

  • page/FrameView.cpp: (WebCore::FrameView::needsLayout):
05:58 Changeset [23942] by rwlbuis

Correcting the pixel test result that was supposed to go in during r23849.

07/02/07:

22:52 Changeset [23941] by aroben

Update the Windows Skipped list.

  • win/Skipped:
18:36 Changeset [23940] by aroben

Update results after r23938.

  • fast/inline-block/14498-positionForCoordinates-expected.txt:
  • fast/table/click-near-anonymous-table-expected.txt:
  • svg/custom/pointer-events-image-expected.txt:
  • svg/custom/pointer-events-path-expected.txt:
  • svg/custom/text-hit-test-expected.txt:
17:53 Changeset [23939] by oliver

Reviewed by Darin.

Fix for <rdar://problem/5098378> single-pixel image optimization needs to be rewritten to not depend on floating point bitmap
Tested by fast/replaced/image-solid-color-with-alpha.html

Switch from float to byte based bitmap when pulling the color from 1x1 pixel images so
that we can use the single pixel image optimisation in WebKit/win.

  • platform/graphics/cg/ImageCG.cpp: (WebCore::BitmapImage::checkForSolidColor):
16:54 Changeset [23938] by aroben

Fix Bug 14498: RenderContainer::positionForCoordinates contains an order of operations error

WebCore:

Fix Bug 14498: RenderContainer::positionForCoordinates contains an order of operations error
http://bugs.webkit.org/show_bug.cgi?id=14498

There were two bugs:
1) xPos/yPos were flipped
2) + binds tighter than ?:, so the order of operations was incorrect

Reviewed by Darin.

Test: fast/inline-block/14498-positionForCoordinates.html

  • rendering/RenderContainer.cpp: (WebCore::RenderContainer::positionForCoordinates):

LayoutTests:

Test for Bug 14498: RenderContainer::positionForCoordinates contains an order of operations error
http://bugs.webkit.org/show_bug.cgi?id=14498

Reviewed by Darin.

  • fast/inline-block/14498-positionForCoordinates-expected.txt: Added.
  • fast/inline-block/14498-positionForCoordinates.html: Added.
16:30 Changeset [23937] by darin

Reviewed by Kevin Decker and Tim Hatcher.

  • fix <rdar://problem/5307880> some classes need finalize methods because of non-trivial work done in dealloc methods
  • DefaultDelegates/WebScriptDebugServer.m: (-[WebScriptDebugServer dealloc]): Added a comment about how this probably won't work under GC.
  • WebInspector/WebNodeHighlight.m: (-[WebNodeHighlight dealloc]): Ditto.
  • WebView/WebDataSource.mm: (+[WebDataSourcePrivate initialize]): Added. Makes finalize run on main thread. (-[WebDataSourcePrivate finalize]): Added. Calls deref on the document loader.
  • WebView/WebHTMLView.mm: (+[WebHTMLViewPrivate initialize]): Added. Makes finalize run on main thread. (-[WebHTMLViewPrivate finalize]): Added. Calls deref on promisedDragTIFFDataSource.
  • WebKit.xcodeproj/project.pbxproj: Let Xcode be Xcode.
16:29 Changeset [23936] by darin

Reviewed by Kevin Decker and Tim Hatcher.

  • fix <rdar://problem/5307906> some classes need finalize methods because of non-trivial work done in dealloc methods
  • bindings/objc/DOMRGBColor.mm: (+[DOMRGBColor initialize]): Added. Tells finalizer to run on main thread, which is needed because we are sharing a CFDictionary here with no locking.
  • bridge/mac/WebCoreAXObject.mm: (+[WebCoreAXObject initialize]): Added. Tells finalizer to run on main thread. (-[WebCoreAXObject finalize]): Added. Calls detach.
  • WebCore.xcodeproj/project.pbxproj: Let Xcode do what it wants to do.
16:20 Changeset [23935] by weinig

Reviewed by Darin.

Sixth round of fixes for implicit 64-32 bit conversion errors.
<rdar://problem/5292262>

Use new narrowPrecisionToFloat() and narrowPrecisionToCGFloat() where
appropriate.

  • html/CanvasRenderingContext2D.cpp: (WebCore::CanvasRenderingContext2D::setShadow): (WebCore::CanvasRenderingContext2D::applyShadow):
  • html/CanvasStyle.cpp: (WebCore::CanvasStyle::applyStrokeColor): (WebCore::CanvasStyle::applyFillColor):
  • ksvg2/svg/SVGAngle.cpp:
  • ksvg2/svg/SVGAnimationElement.cpp: (WebCore::SVGAnimationElement::parseKeyNumbers): (WebCore::parseKeySplines): (WebCore::SVGAnimationElement::handleTimerEvent): (WebCore::SVGAnimationElement::updateAnimatedValueForElapsedSeconds):
  • ksvg2/svg/SVGPatternElement.cpp: (WebCore::SVGPatternElement::buildPattern):
  • ksvg2/svg/SVGRadialGradientElement.cpp: (WebCore::SVGRadialGradientElement::buildGradient):
  • platform/graphics/cg/AffineTransformCG.cpp: (WebCore::AffineTransform::AffineTransform): (WebCore::AffineTransform::setMatrix): (WebCore::AffineTransform::map): (WebCore::AffineTransform::setA): (WebCore::AffineTransform::setB): (WebCore::AffineTransform::setC): (WebCore::AffineTransform::setD): (WebCore::AffineTransform::setE): (WebCore::AffineTransform::setF): (WebCore::AffineTransform::scale): (WebCore::AffineTransform::rotate): (WebCore::AffineTransform::translate): (WebCore::AffineTransform::shear):
16:05 Changeset [23934] by kevino

Enable RTTI and exceptions for now, fix a linking issue with libjpeg on Win, and improve support for building with Python versions other than 2.5.

15:14 Changeset [23933] by sullivan
  • page/mac/WebCoreFrameBridge.mm: (-[WebCoreFrameBridge getAllResourceDatas:andResponses:]): added a comment
13:47 Changeset [23932] by weinig

Rubberstamped by Darin.

Rename FloatConversionUtilities.h to FloatConversion.h.
Fix Win32 build.

  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • platform/DeprecatedString.cpp:
  • platform/FloatConversion.h: Copied from platform/FloatConversionUtilities.h.
  • platform/FloatConversionUtilities.h: Removed.
  • platform/StringImpl.cpp:
13:41 Changeset [23931] by weinig

JavaScriptCore:

Reviewed by Kevin McCullough.

Fourth round of fixes for implicit 64-32 bit conversion errors.
<rdar://problem/5292262>

Add custom piDouble and piFloat constants to use instead of M_PI.

  • kjs/math_object.cpp: (MathObjectImp::getValueProperty):
  • wtf/MathExtras.h: (wtf_atan2):

WebCore:

Reviewed by Darin.

Fifth round of fixes for implicit 64-32 bit conversion errors.
<rdar://problem/5292262>

Add toFloat() method to string classes and use it where appropriate.

  • WebCore.xcodeproj/project.pbxproj:
  • css/cssparser.cpp: (WebCore::CSSParser::lex):
  • ksvg2/svg/SVGAngle.cpp: (WebCore::SVGAngle::setValueAsString):
  • platform/AtomicString.h: (WebCore::AtomicString::toFloat):
  • platform/DeprecatedString.cpp: (WebCore::DeprecatedString::toFloat):
  • platform/DeprecatedString.h:
  • platform/FloatConversionUtilities.h: Added. (WebCore::narrowPrecisionToFloat): (WebCore::narrowPrecisionToCGFloat):
  • platform/PlatformString.h:
  • platform/String.cpp: (WebCore::String::toFloat):
  • platform/StringImpl.cpp: (WebCore::StringImpl::toFloat):
  • platform/StringImpl.h:
11:44 Changeset [23930] by weinig

JavaScriptCore:

Reviewed by Kevin McCullough.

Third round of fixes for implicit 64-32 bit conversion errors.
<rdar://problem/5292262>

Add custom piDouble and piFloat constants to use instead of M_PI.

  • kjs/math_object.cpp: (MathObjectImp::getValueProperty):
  • wtf/MathExtras.h: (wtf_atan2):

WebCore:

Reviewed by Kevin McCullough.

Third round of fixes for implicit 64-32 bit conversion errors.
<rdar://problem/5292262>

Use new piDouble and piFloat constants instead of M_PI.

  • html/CanvasRenderingContext2D.cpp: (WebCore::CanvasRenderingContext2D::rotate):
  • ksvg2/svg/SVGParserUtilities.cpp: (WebCore::SVGPathParser::calculateArc):
  • platform/graphics/Path.cpp: (WebCore::pathLengthApplierFunction): (WebCore::Path::createEllipse):
  • platform/graphics/cg/GraphicsContextCG.cpp: (WebCore::GraphicsContext::drawEllipse): (WebCore::GraphicsContext::strokeArc):
  • platform/graphics/cg/PDFDocumentImage.cpp: (WebCore::PDFDocumentImage::setCurrentPage):
  • platform/graphics/svg/filters/cg/SVGFEHelpersCg.h:
  • rendering/RenderPath.cpp: (WebCore::drawMarkerWithData):
11:12 BuildingGdk edited by alp@atoker.com
Update deps and tasks (diff)
08:52 Changeset [23929] by brmorris

brad, rs'd by sachin.

DESC: merge r23928 to trunk: noise suppression - typo in version.mk
causing a scanlog error ..

  • group/version.mk: typo in RELEASABLES phase.
08:50 Changeset [23928] by brmorris

brad, rs'd by sachin.

DESC: noise suppression - typo in version.mk causing a scanlog error ..

  • group/version.mk: typo in RELEASABLES phase.
07:08 Changeset [23927] by bdash

2007-07-02 Mitz Pettel <mitz@webkit.org>

Reviewed by Darin.

  • quality/reduction.html:
00:42 Changeset [23926] by oliver

Reviewed by Justin.

Fix for

<rdar://problem/5290113> WebKit does not correctly handle replacement ranges from the IM in -[WebHTMLView insertText:]
http://bugs.webkit.org/show_bug.cgi?id=13664

We replicate the logic of -[WebHTMLView setMarkedText:selectedRange:] to handle the Input Method
feeding us a replacement string through insertText: so we can handle IMs that use insertText to
replace text.

  • WebView/WebHTMLView.mm: (-[WebHTMLView insertText:]):

07/01/07:

22:48 Changeset [23925] by aroben

Clarify/fix {Shadow,BorderImage}ParseContext's memory management

Prefast emitted warnings that drew my attention to
{Shadow,BorderImage}ParseContext::failed(). It turned out that these
methods were actually correct, but rather confusing. "failed" really
meant "abort and clean up" rather than "did you fail?", which was
unclear. However, once I figured that out, the "and clean up" part was
still a bit confusing, because all failed() did was to set a flag that
would later cause the ParseContext's members to be deleted in the
destructor. To clear this up, I've gotten rid of the failed() method
altogether. It always returned false, so I've replaced all calls to
it with the value false.

I also noticed that the lifetime management of the ParseContexts'
members was in all cases confusing, and in some cases wrong. The
m_border{Top,Right,Bottom,Left} members of BorderImageParseContext
were leaked whenever a border-image property was successfully parsed.
I fixed that by holding these members in OwnPtrs. The
CSSPrimitiveValue members of {Shadow,BorderImage}ParseContext, which
inherit from Shared, were being explicitly deleted, which is not a
safe way to manage the lifetime of objects that inherit from Shared.
To fix this, I put those members inside RefPtrs. These two changes
allowed me to remove the destructors entirely.

Reviewed by Darin.

All regression tests pass.

  • css/cssparser.cpp:

(WebCore::ShadowParseContext::commitValue): Use .release() to avoid
ref-count churn.
(WebCore::ShadowParseContext::commitLength): Use a RefPtr for the new value to
avoid a leak.
(WebCore::CSSParser::parseShadow): Use 'false' instead of
'context.failed()', and use .release() to avoid ref-count churn.
(WebCore::BorderImageParseContext::commitWidth): Updated to use
OwnPtr.
(WebCore::CSSParser::parseBorderImage): Use 'false' instead of
'context.failed'.

22:18 Changeset [23924] by oliver

Reviewed by Alexey.

Fix for <rdar://problem/5306210> Some events are still passed to WebCore despite being handled by the IM
http://bugs.webkit.org/show_bug.cgi?id=14457

We have to assume that the IM will consume all events, so we remove the dependency
on -[WebHTMLView hasMarkedText].

  • WebView/WebHTMLView.mm: (-[WebHTMLView _interceptEditingKeyEvent:shouldSaveCommand:]):
21:13 Changeset [23923] by andersca

Reviewed by John Sullivan.

<rdar://problem/5297146>
Crash in Mail at WebCore::Frame::setUserStyleSheetLocation (reproducible w/ particular message)


  • loader/Cache.cpp: (WebCore::Cache::requestResource): Only insert the resource in the LRU list if the cache is enabled.


(WebCore::Cache::insertInLRUList):
(WebCore::Cache::resourceAccessed):
Assert that the resource is in the cache.

19:26 Changeset [23922] by darin
  • css/tokenizer.flex: Rolled out the fix for 14453. The layout test wasn't passing. We'll try again.
17:51 Changeset [23921] by kevino

Restore the Windows build after libpng/libjpeg and Python extension changes.

17:44 Changeset [23920] by aroben

Fix a crash in ~PluginViewWin()

This crash was introduced in r23827.

Reviewed by Anders.

Fixes dom/html/level2/html/HTMLAnchorElement01.html

  • plugins/win/PluginViewWin.cpp:

(WebCore::PluginViewWin::~PluginViewWin): Allow m_plugin to be null.

16:47 Changeset [23919] by darin

LayoutTests:

Reviewed by Darin.

Regression test for:
http://bugs.webkit.org/show_bug.cgi?id=14453
REGRESSION: www.nzherald.co.nz almost all the formating is gone

  • css2.1/hex-color-regression-expected.checksum: Added.
  • css2.1/hex-color-regression-expected.png: Added.
  • css2.1/hex-color-regression-expected.txt: Added.
  • css2.1/hex-color-regression.html: Added.

WebCore:

Reviewed by Darin.

http://bugs.webkit.org/show_bug.cgi?id=14453
REGRESSION: www.nzherald.co.nz almost all the formating is gone


  • css/tokenizer.flex: Allow hex colors with 2, 4, or 5 hex digits.
16:22 Changeset [23918] by darin

Fixed a no-SVG test failure by removing a node that was affecting the test results differently
depending on whether SVG support was compiled in or not.

  • fast/xpath/namespace-vs-predicate.xhtml: Remove the r_00 node at the end of the test.
16:01 Changeset [23917] by aroben

Fix some paths to make http tests work again on Windows

Rubberstamped by Sam.

  • Scripts/run-webkit-tests:
10:38 Changeset [23916] by weinig

LayoutTests:

Reviewed by Oliver.

Third round of implicit 64-32 bit conversion errors fixes.
<rdar://problem/5292262>

getFloatValue() used to return a double and now returns a float for a small
loss of precision.

  • fast/css/getFloatValueForUnit-expected.checksum:
  • fast/css/getFloatValueForUnit-expected.png:
  • fast/css/getFloatValueForUnit-expected.txt:
  • fast/css/getFloatValueForUnit.html:

WebCore:

Reviewed by Oliver.

Third round of implicit 64-32 bit conversion errors fixes.
<rdar://problem/5292262>

  • Use new CSSPrimitiveValue::getDoubleValue() and CSSPrimitiveValue::getIntValue() methods instead of CSSPrimitiveValue::getFloatValue() where appropriate.
  • css/CSSPrimitiveValue.cpp: (WebCore::CSSPrimitiveValue::computeLengthInt): (WebCore::CSSPrimitiveValue::computeLengthIntForLength): (WebCore::CSSPrimitiveValue::computeLengthShort): (WebCore::CSSPrimitiveValue::computeLengthFloat): (WebCore::CSSPrimitiveValue::computeLengthDouble): (WebCore::CSSPrimitiveValue::getDoubleValue):
  • css/CSSPrimitiveValue.h: (WebCore::CSSPrimitiveValue::getDoubleValue): (WebCore::CSSPrimitiveValue::getFloatValue): (WebCore::CSSPrimitiveValue::getIntValue):
  • css/Counter.h: (WebCore::Counter::listStyleNumber):
  • css/MediaQueryEvaluator.cpp: (WebCore::parseAspectRatio):
  • css/cssparser.cpp: (WebCore::BorderImageParseContext::commitBorderImage):
  • css/cssstyleselector.cpp: (WebCore::convertToLength): (WebCore::applyCounterList): (WebCore::CSSStyleSelector::applyProperty): (WebCore::CSSStyleSelector::mapBackgroundSize): (WebCore::CSSStyleSelector::mapBackgroundXPosition): (WebCore::CSSStyleSelector::mapBackgroundYPosition):
  • html/HTMLTableElement.cpp: (WebCore::HTMLTableElement::parseMappedAttribute):
  • ksvg2/css/SVGCSSStyleSelector.cpp: (WebCore::CSSStyleSelector::applySVGProperty):
  • ksvg2/misc/KCanvasRenderingStyle.cpp: (WebCore::KSVGPainterFactory::cssPrimitiveToLength): (WebCore::KSVGPainterFactory::dashArrayFromRenderingStyle):
10:23 Changeset [23915] by darin

Fixed a no-SVG test failure by moving a test that requires SVG into the svg directory.

  • fast/dom/svg-element-attribute-js-null-expected.txt: Removed.
  • fast/dom/svg-element-attribute-js-null.xhtml: Removed.
  • svg/dom/svg-element-attribute-js-null-expected.txt: Copied from fast/dom/svg-element-attribute-js-null-expected.txt.
  • svg/dom/svg-element-attribute-js-null.xhtml: Copied from fast/dom/svg-element-attribute-js-null.xhtml.
10:05 Changeset [23914] by darin

Added a missing file for the test for <rdar://problem/5303567> REGRESSION: XMLHttpRequest.responseXML

  • fast/loader/resources/plist.app: Added. Just some random XML file I found somewhere; seems to make the test succeed instead of failing every time!
08:52 Changeset [23913] by bdash

Roll out r23911 as it introduced two layout test failures.

07:26 Changeset [23912] by bdash

2007-07-01 Pamela Greene <pamg.bugs@gmail.com>

Reviewed by Darin.

Fix for <http://bugs.webkit.org/show_bug.cgi?id=14320>
Bug 14320: <canvas> gradient stops at identical offsets are applied in the wrong order
<rdar://problem/5290084>

Use std::stable_sort() instead of qsort() to sort gradient stops.
Adjust the comparison function accordingly.

  • html/CanvasGradient.cpp: (WebCore::compareStops): (WebCore::CanvasGradient::findStop):

2007-07-01 Pamela Greene <pamg.bugs@gmail.com>

Reviewed by Darin.

Tests for <http://bugs.webkit.org/show_bug.cgi?id=14320>
Bug 14320: <canvas> gradient stops at identical offsets are applied in the wrong order
<rdar://problem/5290084>

Add tests for various combinations of stops, including multiple stops at
the same offsets, sorted and unsorted. Update results accordingly.

  • fast/canvas/fillrect_gradient-expected.checksum:
  • fast/canvas/fillrect_gradient-expected.png:
  • fast/canvas/fillrect_gradient-expected.txt:
  • fast/canvas/fillrect_gradient.html:
07:20 Changeset [23911] by bdash

2007-07-01 MorganL <morganl.webkit@yahoo.com>

Reviewed by Darin.

Fix for http://bugs.webkit.org/show_bug.cgi?id=14448
HTMLObjectElement::data should return an absolute URL

  • html/HTMLObjectElement.cpp: (WebCore::HTMLObjectElement::isImageType): (WebCore::HTMLObjectElement::data):

2007-07-01 MorganL <morganl.webkit@yahoo.com>

Reviewed by Darin.

Tests for http://bugs.webkit.org/show_bug.cgi?id=14448
HTMLObjectElement::data should return an absolute URL

  • fast/dom/object-data-absurl-expected.txt: Added.
  • fast/dom/object-data-absurl.html: Added.
07:17 Changeset [23910] by bdash

2007-07-01 Holger Hans Peter Freyther <zecke@selfish.org>

Reviewed by Darin.

m_usesPageCache was not initialized. As the b/f cache is only
implemented in the Mac port and WebView.mm is taking care of calling
Settings::setUsesPageCache I decided to make it false by default.

  • page/Settings.cpp: (WebCore::Settings::Settings): m_usesPageCache was not initialized
07:16 Changeset [23909] by bdash

2007-07-01 Holger Hans Peter Freyther <zecke@selfish.org>

Reviewed by Darin.

Inherited- and NonInheritedFlags is a bit field. But for comparsion
the other part of the union _iflags/_niflags is used for comparions.
This will compare 5 uninitialized bits of _iflags and 22 of _niflags.
Make sure the unused bits have a specified value.

  • ksvg2/css/SVGRenderStyle.h: (WebCore::SVGRenderStyle::setBitDefaults): Make sure the unused bits have a value as well.
07:14 Changeset [23908] by bdash

2007-07-01 Mitz Pettel <mitz@webkit.org>

Reviewed by Darin.

  • coding/lgpl-license.html:

06/30/07:

21:53 Changeset [23907] by aroben

Compile WebCore with /W4 on Windows

Some more warnings were disabled globally, including assignment within
a conditional, unused variable, and various warnings related to
inability to instantiate opaque structs.

In addition, the "unreachable code" warning was turned off for
CSSGrammar.cpp and XPathGrammar.cpp.

Reviewed by Oliver.

  • WebCore.vcproj/WebCore.vcproj:
21:53 Changeset [23906] by aroben

Give CString an equality operator to fix a bug in HTMLFormElement::formData

WebCore:

Give CString an equality operator to fix a bug in HTMLFormElement::formData

The bug was spotted by MSVC /W4. The problem was that we were comparing
a CString to a char* using ==, but CString had no equality operator.
The result was that the CString was being cast to a const char* and a
pointer comparison was being done, which would (essentially) always
return false.

There are two parts to the fix: get rid of CString's const char*
casting operator, and add an equality operator. Previous uses of the
casting operator have been changed to use CString::data().

Test: http/misc/isindex-formdata.html

Reviewed by Oliver.

  • dom/XMLTokenizer.cpp: (WebCore::parseXMLDocumentFragment):
  • html/HTMLDocument.cpp: (WebCore::HTMLDocument::determineParseMode):
  • html/HTMLFormElement.cpp: (WebCore::HTMLFormElement::formData):
  • loader/TextResourceDecoder.cpp: (WebCore::TextResourceDecoder::checkForCSSCharset):
  • platform/CString.cpp: (WebCore::operator==):
  • platform/CString.h:
  • platform/KURL.cpp: (WebCore::encodeRelativeString):
  • platform/StringImpl.cpp: (WebCore::StringImpl::toDouble):
  • platform/network/cf/FormDataStreamCFNet.cpp: (WebCore::setHTTPBody):
  • platform/network/mac/FormDataStreamMac.mm: (WebCore::setHTTPBody):
  • platform/win/ClipboardUtilitiesWin.cpp: (WebCore::markupToCF_HTML):
  • plugins/win/PluginPackageWin.cpp: (WebCore::splitString):
  • plugins/win/PluginStreamWin.cpp: (WebCore::PluginStreamWin::startStream): (WebCore::PluginStreamWin::destroyStream): (WebCore::PluginStreamWin::sendJavaScriptStream): (WebCore::PluginStreamWin::didFinishLoading):
  • plugins/win/PluginViewWin.cpp: (WebCore::PluginViewWin::start): (WebCore::createUTF8String): (WebCore::PluginViewWin::userAgent):
  • xml/XSLStyleSheet.cpp: (WebCore::XSLStyleSheet::locateStylesheetSubResource):
  • xml/XSLTProcessor.cpp: (WebCore::xsltParamArrayFromParameterMap):

LayoutTests:

New test that makes sure we handle putting isindex into form data correctly.

Reviewed by Oliver.

  • http/tests/misc/isindex-formdata-expected.txt: Added.
  • http/tests/misc/isindex-formdata.html: Added.
21:53 Changeset [23905] by aroben

Initialize two variables that MSVC /W4 isn't smart enough to realize always get initialized

Reviewed by John.

  • editing/Editor.cpp:

(WebCore::Editor::advanceToNextMisspelling):

  • html/HTMLParser.cpp:
21:53 Changeset [23904] by aroben

Fix some possibly unitialized variables found by MSVC /W4

Reviewed by John.

  • rendering/bidi.cpp:

(WebCore::RenderBlock::layoutInlineChildren):

21:52 Changeset [23903] by aroben

Remove bogus cast found by MSVC /W4

Reviewed by John and Oliver.

  • ksvg2/css/SVGCSSParser.cpp:

(WebCore::CSSParser::parseSVGValue):

21:52 Changeset [23902] by aroben

Remove unused local functions uncovered by MSVC /W4

Reviewed by John and Oliver.

  • platform/win/SearchPopupMenuWin.cpp:
  • rendering/RenderText.cpp:
21:52 Changeset [23901] by aroben

Don't take the address of temporary values to appease MSVC /W4

Reviewed by Oliver.

No regression test possible.

  • platform/win/PopupMenuWin.cpp:

(WebCore::PopupMenu::invalidateItem):
(WebCore::PopupMenu::valueChanged):
(WebCore::PopupWndProc):

  • platform/win/ScrollViewWin.cpp:

(WebCore::ScrollView::ScrollViewPrivate::scrollBackingStore):

  • platform/win/UniscribeController.cpp:

(WebCore::UniscribeController::shapeAndPlaceItem):

  • platform/win/WidgetWin.cpp:

(WebCore::Widget::invalidateRect):

21:52 Changeset [23900] by aroben

Make an int -> UINT conversion explicit that MSVC /W4 complains about

Reviewed by John and Oliver.

No regression test possible.

  • platform/win/SoundWin.cpp:
21:51 Changeset [23899] by aroben

Remove unreachable code uncovered by MSVC /W4

Reviewed by Oliver.

No regression test possible.

  • html/CanvasRenderingContext2D.cpp:

(WebCore::CanvasRenderingContext2D::createPattern):

  • html/HTMLAnchorElement.cpp:

(WebCore::HTMLAnchorElement::isLiveLink):

  • html/HTMLElement.cpp:

(WebCore::HTMLElement::contentEditable):

  • platform/DeprecatedString.cpp:

(WebCore::allocateHandle):
(WebCore::freeHandle):

  • plugins/win/npapi.cpp:

(pluginViewForInstance):

  • rendering/RenderImage.cpp:

(WebCore::RenderImage::isWidthSpecified):
(WebCore::RenderImage::isHeightSpecified):

  • rendering/RenderTheme.cpp:

(WebCore::RenderTheme::isControlStyled):

11:08 Changeset [23898] by sfalken

Build fix.

09:29 Changeset [23897] by sullivan

WebCore:

Reviewed by Oliver Hunt.


  • WebCore support for accessing the set of rectangles that encompass the selected text


  • page/Frame.h:
  • page/Frame.cpp: (WebCore::Frame::selectionTextRects): new function, fills in a passed Vector with the line box rects that represent the selected range
  • rendering/RenderText.cpp: (WebCore::RenderText::addLineBoxRects): fixed off-by-one bug involving use of the confusing function InlineTextBox::end()
  • WebCore.exp: exported symbol for this new function

WebKit:

Reviewed by Oliver Hunt.

  • WebKit support for accessing the set of rectangles that encompass the selected text
  • WebView/WebDocumentPrivate.h: added -selectionTextRects to WebDocumentSelection protocol; tweaked comments
  • WebView/WebHTMLView.mm: (-[WebHTMLView _selectionDraggingRect]): use selectionRect instead of selectionImageRect since they're the same and maybe we can get rid of selectionImageRect someday (-[WebHTMLView selectionTextRects]): added implementation of new protocol method, which calls through to WebCore


  • WebView/WebPDFView.mm: (-[WebPDFView selectionTextRects]): added simple implementation of new protocol method, which just returns the single selection rect. PDFKit doesn't support obtaining multiple rects to describe a multi-line selection. (-[WebPDFView selectionImageForcingWhiteText:]): use selectionRect instead of selectionImageRect since they're the same and maybe we can get rid of selectionImageRect someday


  • Misc/WebSearchableTextView.m: (-[WebSearchableTextView selectionTextRects]): added no-op implementation of new protocol method to this obsolete class
Note: See TracTimeline for information about the timeline view.