Timeline



Aug 15, 2007:

10:17 PM BuildingOnWindows edited by kevino@theolliviers.com
Added note about copying dlls to get tests running. (diff)
9:34 PM Changeset in webkit [25105] by mjs
  • 2 edits in trunk/WebCore/platform/graphics

2007-08-15 Maciej Stachowiak <mjs@apple.com>

Reviewed by Geoff.

<rdar://problem/5389696> leak of 32-byte NSData object (and more?) in WebIconDatabase code path with each refresh of http://www.apple.com


  • platform/graphics/BitmapImage.h: Use RetainPtr for m_nsImage and m_tiffRep
  • platform/graphics/mac/ImageMac.mm: (WebCore::BitmapImage::initPlatformData): No need to do anything now (WebCore::BitmapImage::invalidatePlatformData): Simplify (WebCore::BitmapImage::getTIFFRepresentation): Use RetainPtr to avoid leaks (WebCore::BitmapImage::getNSImage): Use RetainPtr to avoid leaks
8:56 PM Changeset in webkit [25104] by mjs
  • 1 edit in trunk/WebCore/ChangeLog

Reviewed by Geoff.

<rdar://problem/5389696> leak of 32-byte NSData object (and more?) in WebIconDatabase code path with each refresh of http://www.apple.com


  • platform/graphics/BitmapImage.h: Use RetainPtr for m_nsImage and m_tiffRep
  • platform/graphics/mac/ImageMac.mm: (WebCore::BitmapImage::initPlatformData): No need to do anything now (WebCore::BitmapImage::invalidatePlatformData): Simplify (WebCore::BitmapImage::getTIFFRepresentation): Use RetainPtr to avoid leaks (WebCore::BitmapImage::getNSImage): Use RetainPtr to avoid leaks
8:10 PM Changeset in webkit [25103] by darin
  • 7 edits in trunk/WebCore

Reviewed by Anders.

  • fix <rdar://problem/5094895> REGRESSION (r19094): JavaScript timers don't work inside showModalDialog; caret also doesn't blink
  • platform/Timer.h: Added fireTimersInNestedEventLoop.
  • platform/Timer.cpp: (WebCore::TimerBase::fireTimers): Added code to exit if the timersReadyToFire is cleared. This indicates that someone fired the timers in the nested event loop, so we should not fire any more timers ourselves. (WebCore::TimerBase::fireTimersInNestedEventLoop): Added. Sets timersReadyToFire to 0 so we won't return early and do nothing if the shared timer first. Then calls updateSharedTimer() so the shared timer will get scheduled as needed based on any pending timers.
  • page/Chrome.cpp: (WebCore::Chrome::runModal): Call fireTimersInNestedEventLoop before calling runModal on the client.
  • manual-tests/modal-dialog.html: Added a test that uses a timeout.
  • manual-tests/show-modal-dialog-test.html: Fixed a typo.
4:27 PM Changeset in webkit [25102] by thatcher
  • 12 edits in trunk/WebKit

Reviewed by Darin.

<rdar://problem/5410937> HIWebView in SimpleCarbonWeb doesn't seem to be getting adequate invalidation when window is resized

HIWebViewCreate now just returns a HIViewRef created with HICocoaViewCreate. This eliminates lots of old code and
makes HIWebView a better citizen starting with Leopard. The old code paths are still needed for Tiger, so now
most of the files in the WebKit/Carbon directory are #ifdef BUILDING_ON_TIGER.

The Tiger code is unchanged and dosen't exhibit the invalidation problem when the window resizes.

  • Carbon/CarbonUtils.m: (WebInitForCarbon): #ifdef BUILDING_ON_TIGER portions of this code that is not needed on Leopard.
  • Carbon/CarbonWindowAdapter.h: #ifdef BUILDING_ON_TIGER
  • Carbon/CarbonWindowAdapter.m: Ditto.
  • Carbon/CarbonWindowContentView.h: Ditto.
  • Carbon/CarbonWindowContentView.m: Ditto.
  • Carbon/CarbonWindowFrame.h: Ditto.
  • Carbon/CarbonWindowFrame.m: Ditto.
  • Carbon/HIViewAdapter.h: Ditto.
  • Carbon/HIViewAdapter.m: Ditto.
  • Carbon/HIWebView.h: Consolidate two #ifdef OBJC blocks into one.
  • Carbon/HIWebView.m: Implement Leopard specific HIWebViewCreate, HIWebViewCreateWithClass and HIWebViewGetWebView. (HIWebViewCreate): Call HIWebViewCreateWithClass passing [WebView class]. (HIWebViewCreateWithClass): Call HICocoaViewCreate with an instance of the class passed in. (HIWebViewGetWebView): Call HICocoaViewGetView.
2:29 PM Changeset in webkit [25101] by justing
  • 3 edits
    4 adds in trunk

LayoutTests:

Reviewed by Darin.


http://bugs.webkit.org/show_bug.cgi?id=14971
REGRESSION: cannot select reporter's e-mail in bugzilla


  • editing/selection/14971-expected.checksum: Added.
  • editing/selection/14971-expected.png: Added.
  • editing/selection/14971-expected.txt: Added.
  • editing/selection/14971.html: Added.

WebCore:

Reviewed by Darin.


http://bugs.webkit.org/show_bug.cgi?id=14971
REGRESSION: cannot select reporter's e-mail in bugzilla

  • page/EventHandler.cpp: (WebCore::EventHandler::canMouseDragExtendSelect): Allow drag-selecting inside a -webkit-user-select:ignore region.
1:47 PM Changeset in webkit [25100] by darin
  • 1 edit in trunk/WebCore/WebCore.vcproj/WebCore.make

Clear a stray executable bit.

1:10 PM Changeset in webkit [25099] by bdakin
  • 1 edit
    2 adds in trunk/LayoutTests

Test for new support of empty style sheets.

  • fast/css/emptyStyleTag-expected.txt: Added.
  • fast/css/emptyStyleTag.html: Added.
1:04 PM Changeset in webkit [25098] by bdakin
  • 27 edits in trunk/WebCore

Reviewed by Hyatt.

Rolling back in. I made a silly mistake in XMLTokenizer that caused
this patch to crash SVG tests. It's fixed now!

Refactor of change for <rdar://problem/5404899> REGRESSION: Mail
crash in WebCore::FontFallbackList::fontDataAt() after dragging
image into text multiple times

The original fix that I made last night prevents the pending style
sheet count from being incremented until the element is in the
document. This fix prevents the style sheet from loading at all
until it is in the document.

Here is the fix.

  • dom/StyleElement.cpp: (WebCore::StyleElement::insertedIntoDocument): Call process. (WebCore::StyleElement::removedFromDocument): This can be reverted to its original state before my patch last night. (WebCore::StyleElement::process): childrenChanged is now called process. Return early if your not in the document. (WebCore::StyleElement::createSheet): Revert change from last night. The inDocument check is now in caller childrenChanged.
  • dom/StyleElement.h: insertedIntoDocument() must now accept an element in addition to a document.

This is an optimization to prevent calling updateStyleSelector()
too frequently.

  • dom/XMLTokenizer.cpp: (WebCore::XMLTokenizer::startElementNs):
  • html/HTMLStyleElement.cpp: (WebCore::HTMLStyleElement::HTMLStyleElement): (WebCore::HTMLStyleElement::finishedParsing): (WebCore::HTMLStyleElement::insertedIntoDocument): (WebCore::HTMLStyleElement::childrenChanged): (WebCore::HTMLStyleElement::sheetLoaded):
  • html/HTMLStyleElement.h:
  • ksvg2/svg/SVGStyleElement.cpp: (WebCore::SVGStyleElement::SVGStyleElement): (WebCore::SVGStyleElement::finishedParsing): (WebCore::SVGStyleElement::insertedIntoDocument): (WebCore::SVGStyleElement::childrenChanged): (WebCore::SVGStyleElement::sheetLoaded):
  • ksvg2/svg/SVGStyleElement.h: (WebCore::SVGStyleElement::setCreatedByParser):

This is a name change. Document::stylesheetLoaded()
is now Document::removePendingSheet()

  • dom/Document.cpp: (WebCore::Document::removePendingSheet):
  • dom/Document.h:
  • dom/ProcessingInstruction.cpp: (WebCore::ProcessingInstruction::sheetLoaded):
  • html/HTMLLinkElement.cpp: (WebCore::HTMLLinkElement::~HTMLLinkElement): (WebCore::HTMLLinkElement::setDisabledState): (WebCore::HTMLLinkElement::process): (WebCore::HTMLLinkElement::sheetLoaded):
  • page/Frame.cpp: (WebCore::UserStyleSheetLoader::~UserStyleSheetLoader): (WebCore::UserStyleSheetLoader::setCSSStyleSheet):

This is another name change. closeRenderer() is now
finishedParsing()

  • dom/Node.h: (WebCore::Node::finishedParsing):
  • dom/XMLTokenizer.cpp: (WebCore::XMLTokenizer::endElementNs): (WebCore::):
  • html/HTMLAppletElement.cpp: (WebCore::HTMLAppletElement::finishedParsing):
  • html/HTMLAppletElement.h:
  • html/HTMLGenericFormElement.cpp: (WebCore::HTMLFormControlElementWithState::finishedParsing):
  • html/HTMLGenericFormElement.h:
  • html/HTMLObjectElement.cpp: (WebCore::HTMLObjectElement::finishedParsing):
  • html/HTMLObjectElement.h:
  • html/HTMLParser.cpp: (WebCore::HTMLParser::insertNode): (WebCore::HTMLParser::popOneBlockCommon):
  • html/HTMLScriptElement.cpp: (WebCore::HTMLScriptElement::finishedParsing):
  • html/HTMLScriptElement.h: (WebCore::HTMLStyleElement::setCreatedByParser):
  • ksvg2/svg/SVGAnimationElement.cpp: (WebCore::SVGAnimationElement::finishedParsing):
  • ksvg2/svg/SVGAnimationElement.h:
  • ksvg2/svg/SVGElement.cpp: (WebCore::SVGElement::finishedParsing):
  • ksvg2/svg/SVGElement.h:
11:45 AM Changeset in webkit [25097] by thatcher
  • 2 edits in trunk/WebKitTools

Look for the new Xcode 3 preference key (PBXApplicationwideBuildSettings) for the global build locations.
The value of PBXApplicationwideBuildSettings is a dictionary, so we have to pull the SYMROOT out of it.

Also pass xcodebuild OBJROOT with the same value as SYMROOT if we fallback to the default WebKitBuild,
this prevents making "build" directories in each project folder.

  • Scripts/webkitdirs.pm:
11:41 AM Changeset in webkit [25096] by darin
  • 2 edits in trunk

Add trailing newlines.

11:37 AM Changeset in webkit [25095] by darin
  • 2 adds in trunk

Add a copy of the ICU license to the copy of ICU headers that's there for
building on Mac OS X 10.4, for clarity. We might want to move these icu
directories inside a "mac/tiger" subdirectory at some point to make sure
people don't get confused about why these are here.

8:06 AM Changeset in webkit [25094] by harrison
  • 2 edits in trunk/WebCore

Reviewed by Antti Koivisto.

<rdar://problem/5411803> Bumpercar crashes when loading a partial URL (FrameLoader::receivedMainResourceError())

  • loader/MainResourceLoader.cpp: (WebCore::MainResourceLoader::receivedError): Nil check for the FrameLoader.
7:11 AM Changeset in webkit [25093] by spadma
  • 3 edits in S60/branches/3.1m/WebKit

2007-08-13 yadavall <sriram.yadavalli@nokia.com>

Reviewed by Sachin (sachin.padma@nokia.com).
DESC: Fast display mode must be turned OFF for widgets
http://bugs.webkit.org/show_bug.cgi?id=14966

  • BrowserView/src/WebKitControl.cpp: (CWebKitControl::CreateWidgetExtensionL):
  • BrowserView/src/webkitbridge.cpp: (CWebKitBridge::CreateChildFrameNamed):
7:07 AM Changeset in webkit [25092] by spadma
  • 3 edits in S60/branches/3.1m/WebKit

2007-08-03 asong

Reviewed by sachin.
DESC: [S60]: Title area displayed in Security Confirmation querries even though there is no title TSWID: ELTA-75H9ZB
http://bugs.webkit.org/show_bug.cgi?id=14870

  • BrowserView/src/FormDataLoginStore.cpp: Add KEmtpyTitle Literal

(CFormDataLoginStore::SaveDialogL): Pass the new literal to DialogConfirm method

  • BrowserView/src/HttpLoaderEventToUiListener.cpp:Add KEmtpyTitle Literal

(CHttpLoaderEventToUiListener::AboutToLoadPage): Pass the new literal to DialogConfirm method
(CHttpLoaderEventToUiListener::GetUserAuthenticationDataL): Pass the new literal to DialogConfirm method

  • ResourceLoader/src/AboutTransaction.cpp: (CAboutTransaction::DoSubmitL):
7:06 AM Changeset in webkit [25091] by spadma
  • 3 edits in S60/trunk/WebKit

asong, reviewed by sachin

DESC: [S60]: Title area displayed in Security Confirmation querries even though there is no title TSWID: ELTA-75H9ZB
http://bugs.webkit.org/show_bug.cgi?id=14870

  • BrowserView/src/FormDataLoginStore.cpp: Add KEmtpyTitle Literal

(CFormDataLoginStore::SaveDialogL): Pass the new literal to DialogConfirm method

  • BrowserView/src/HttpLoaderEventToUiListener.cpp: Add KEmtpyTitle Literal

(CHttpLoaderEventToUiListener::AboutToLoadPage): Pass the new literal to DialogConfirm me
(CHttpLoaderEventToUiListener::GetUserAuthenticationDataL): Pass the new literal to DialogConfirm me

  • ChangeLog: Using _L(" ") as an argument to DialogConfirm was incorrect. _L is deprecated and _LIT should be used instead. _L does not contain length information necessary to determine whether or not the descriptor passed in as a title is empty or not.
12:48 AM Changeset in webkit [25090] by bdash
  • 28 edits
    2 deletes in trunk

Roll out r25082 and the associated tests in r25083 as it introduced crashes in the SVG layout tests.

Aug 14, 2007:

7:50 PM Changeset in webkit [25089] by kmccullo
  • 2 edits in trunk/LayoutTests

Reviewed by Adam.

  • Updated Skipped list to reflect recent fixes.
  • platform/win/Skipped:
7:04 PM Changeset in webkit [25088] by sfalken
  • 5 edits
    1 add in trunk

<rdar://problem/5411482> Windows user agent language always returns "en"

Reviewed by Oliver.

6:23 PM Changeset in webkit [25087] by weinig
  • 4 edits
    2 adds in trunk

LayoutTests:

Reviewed by Geoff and Oliver.

Add test for <rdar://problem/5267870>
Mangleme: Reproducible assertion failure in -[WebCoreFrameBridge installInFrame:]

  • http/tests/misc/embedCrasher-expected.txt: Added.
  • http/tests/misc/embedCrasher.html: Added.

WebCore:

Reviewed by Geoff and Oliver.

Fix for <rdar://problem/5267870>
Mangleme: Reproducible assertion failure in -[WebCoreFrameBridge installInFrame:]

  • Change embed/plugin code path to detach the frame on willRemove instead of detach. This matches what frame and iframe do.

Test: http/tests/misc/embedCrasher.html

  • html/HTMLPlugInElement.cpp: (WebCore::HTMLPlugInElement::willRemove):
  • html/HTMLPlugInElement.h:
6:17 PM Changeset in webkit [25086] by adele
  • 9 edits
    2 adds in trunk

LayoutTests:

Reviewed by Maciej.

Test for <rdar://problem/5370059> REGRESSION: Cannot type into edit fields on a form (sccsheriff.org)

  • editing/selection/user-select-text-inside-user-select-ignore-expected.txt: Added.
  • editing/selection/user-select-text-inside-user-select-ignore.html: Added.
  • fast/css/computed-style-expected.txt: Updated now that we've eliminated the auto value.
  • fast/css/computed-style-without-renderer-expected.txt: ditto.

WebCore:

Reviewed by Maciej.

Fix for <rdar://problem/5370059> REGRESSION: Cannot type into edit fields on a form (sccsheriff.org)

This change makes -webkit-user-select an inherited css property. For "user-select: none" we were already
acting like it was an inheritable property, where we let user-select:text on the children override its parent's user-select:none.
By making user-select really inherited (instead of inherited for some values), we eliminate the need for crawling up the tree to see
if an ancestor has user-select ignore set.

  • page/EventHandler.cpp: (WebCore::EventHandler::canMouseDownStartSelect): Now that user-select is inherited, you don't need to walk up the render tree looking for ancestors with user-select:ignore set.
  • css/CSSStyleSelector.cpp: Eliminate SELECT_AUTO. (WebCore::CSSStyleSelector::adjustRenderStyle): (WebCore::CSSStyleSelector::applyProperty):
  • css/CSSComputedStyleDeclaration.cpp: (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
  • rendering/RenderStyle.h: (WebCore::): Eliminate SELECT_AUTO. Make userSelect inherited. (WebCore::RenderStyle::userSelect): (WebCore::RenderStyle::setUserSelect): (WebCore::RenderStyle::initialUserSelect):
  • rendering/RenderStyle.cpp: (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData): (WebCore::StyleRareNonInheritedData::operator==): (WebCore::StyleRareInheritedData::StyleRareInheritedData): (WebCore::StyleRareInheritedData::operator==): (WebCore::RenderStyle::diff):
6:07 PM Changeset in webkit [25085] by andrew
  • 15 edits in trunk

JavaScriptCore:

Reviewed by Darin.


http://bugs.webkit.org/show_bug.cgi?id=14967 part 1 - Eliminate most implicit
conversions of wtf::Vector<T> to T* by explicitly calling .data()

  • API/JSCallbackConstructor.cpp: (KJS::JSCallbackConstructor::construct):
  • API/JSCallbackFunction.cpp: (KJS::JSCallbackFunction::callAsFunction):
  • API/JSCallbackObject.cpp: (KJS::JSCallbackObject::construct): (KJS::JSCallbackObject::callAsFunction):
  • bindings/c/c_instance.cpp: (KJS::Bindings::CInstance::invokeMethod): (KJS::Bindings::CInstance::invokeDefaultMethod):
  • kjs/number_object.cpp: (integer_part_noexp): (char_sequence):
  • kjs/ustring.cpp: (KJS::UString::UTF8String):

WebCore:

Reviewed by Darin.


http://bugs.webkit.org/show_bug.cgi?id=14967 part 1 - Eliminate most implicit
conversions of wtf::Vector<T> to T* by explicitly calling .data()

  • html/HTMLSelectElement.cpp: (WebCore::HTMLSelectElement::saveState):
  • platform/KURL.cpp: (WebCore::KURL::KURL): (WebCore::KURL::init): (WebCore::KURL::decode_string): (WebCore::KURL::parse): (WebCore::KURL::encode_string):
  • platform/cf/KURLCFNet.cpp: (WebCore::KURL::KURL):
  • platform/mac/KURLMac.mm: (WebCore::KURL::KURL):
  • rendering/RenderFrameSet.cpp: (WebCore::RenderFrameSet::layOutAxis):

win:

Reviewed by Darin.


http://bugs.webkit.org/show_bug.cgi?id=14967 part 1 - Eliminate most implicit
conversions of wtf::Vector<T> to T* by explicitly calling .data()

  • WebView.cpp: (getCompositionString):
5:23 PM Changeset in webkit [25084] by darin
  • 2 edits in trunk/WebCore

Reviewed by Darin, Hyatt.

  • fix <rdar://problem/5407795> -apple-line-clamp should never display less than one line
  • rendering/RenderFlexibleBox.cpp:(WebCore::RenderFlexibleBox::layoutVerticalBox): Use max to make sure it never computes a minimum of less than one line.
4:46 PM Changeset in webkit [25083] by bdakin
  • 1 edit
    2 adds in trunk/LayoutTests

Test for new support of empty style sheets.

  • fast/css/emptyStyleTag-expected.txt: Added.
  • fast/css/emptyStyleTag.html: Added.
4:30 PM Changeset in webkit [25082] by bdakin
  • 27 edits in trunk/WebCore

Reviewed by Hyatt.

Refactor of change for <rdar://problem/5404899> REGRESSION: Mail
crash in WebCore::FontFallbackList::fontDataAt() after dragging
image into text multiple times

The original fix that I made last night prevents the pending style
sheet count from being incremented until the element is in the
document. This fix prevents the style sheet from loading at all
until it is in the document.

Here is the fix.

  • dom/StyleElement.cpp: (WebCore::StyleElement::insertedIntoDocument): Call process. (WebCore::StyleElement::removedFromDocument): This can be reverted to its original state before my patch last night. (WebCore::StyleElement::process): childrenChanged is now called process. Return early if your not in the document. (WebCore::StyleElement::createSheet): Revert change from last night. The inDocument check is now in caller childrenChanged.
  • dom/StyleElement.h: insertedIntoDocument() must now accept an element in addition to a document.

This is an optimization to prevent calling updateStyleSelector()
too frequently.

  • dom/XMLTokenizer.cpp: (WebCore::XMLTokenizer::startElementNs):
  • html/HTMLStyleElement.cpp: (WebCore::HTMLStyleElement::HTMLStyleElement): (WebCore::HTMLStyleElement::finishedParsing): (WebCore::HTMLStyleElement::insertedIntoDocument): (WebCore::HTMLStyleElement::childrenChanged): (WebCore::HTMLStyleElement::sheetLoaded):
  • html/HTMLStyleElement.h:
  • ksvg2/svg/SVGStyleElement.cpp: (WebCore::SVGStyleElement::SVGStyleElement): (WebCore::SVGStyleElement::finishedParsing): (WebCore::SVGStyleElement::insertedIntoDocument): (WebCore::SVGStyleElement::childrenChanged): (WebCore::SVGStyleElement::sheetLoaded):
  • ksvg2/svg/SVGStyleElement.h: (WebCore::SVGStyleElement::setCreatedByParser):

This is a name change. Document::stylesheetLoaded()
is now Document::removePendingSheet()

  • dom/Document.cpp: (WebCore::Document::removePendingSheet):
  • dom/Document.h:
  • dom/ProcessingInstruction.cpp: (WebCore::ProcessingInstruction::sheetLoaded):
  • html/HTMLLinkElement.cpp: (WebCore::HTMLLinkElement::~HTMLLinkElement): (WebCore::HTMLLinkElement::setDisabledState): (WebCore::HTMLLinkElement::process): (WebCore::HTMLLinkElement::sheetLoaded):
  • page/Frame.cpp: (WebCore::UserStyleSheetLoader::~UserStyleSheetLoader): (WebCore::UserStyleSheetLoader::setCSSStyleSheet):

This is another name change. closeRenderer() is now
finishedParsing()

  • dom/Node.h: (WebCore::Node::finishedParsing):
  • dom/XMLTokenizer.cpp: (WebCore::XMLTokenizer::endElementNs): (WebCore::):
  • html/HTMLAppletElement.cpp: (WebCore::HTMLAppletElement::finishedParsing):
  • html/HTMLAppletElement.h:
  • html/HTMLGenericFormElement.cpp: (WebCore::HTMLFormControlElementWithState::finishedParsing):
  • html/HTMLGenericFormElement.h:
  • html/HTMLObjectElement.cpp: (WebCore::HTMLObjectElement::finishedParsing):
  • html/HTMLObjectElement.h:
  • html/HTMLParser.cpp: (WebCore::HTMLParser::insertNode): (WebCore::HTMLParser::popOneBlockCommon):
  • html/HTMLScriptElement.cpp: (WebCore::HTMLScriptElement::finishedParsing):
  • html/HTMLScriptElement.h: (WebCore::HTMLStyleElement::setCreatedByParser):
  • ksvg2/svg/SVGAnimationElement.cpp: (WebCore::SVGAnimationElement::finishedParsing):
  • ksvg2/svg/SVGAnimationElement.h:
  • ksvg2/svg/SVGElement.cpp: (WebCore::SVGElement::finishedParsing):
  • ksvg2/svg/SVGElement.h:
4:08 PM Changeset in webkit [25081] by beidson
  • 13 edits
    2 adds in trunk

WebCore:

Reviewed by Darin, John, Maciej, Oliver, and Tim

<rdar://problem/5394708> - Crash on launch with corrupt icon database

The main part of the fix is to not disable SQLite's default level of protection - to leave the sync options at their normal,
mostly safe levels.

But in case lightning strikes at the exact right moment and someone ends up with a corrupt database, add some support code to
detect that condition and recover from it.

This is mainly accomplished by exposing the "PRAGMA integrity_check;" facilities of sqlite through IconDatabase SPI as well as
running that integrity check if a journal file is detected at launch (a strong indication that the last quit was not clean).
There's also a method exposed to allow clients to tell the icon database "I suspect something bad happened, please check integrity"

  • loader/icon/IconDatabase.cpp: (WebCore::IconDatabase::checkIntegrityBeforeOpening): Allow clients to suggest an integrity check (WebCore::IconDatabase::open): Add a check to see if the journal file for the database exists. If it does, run the integrity check. Also run the check if a client has suggested it to be necessary. If the integrity-check fails, we sadly have to destroy the database and recreate from scratch. Also - quite importantly - do not adjust the default sync preferences for the SQLDatabase. They were an optimization that might have been valid at one time but no longer affects any benchmarks we care about. (WebCore::IconDatabase::checkIntegrity): Perform the SQLite integrity_check pragma
  • loader/icon/IconDatabase.h:
  • loader/icon/IconDatabaseNone.cpp: (WebCore::IconDatabase::checkIntegrity): Keep IconDatabaseNone users building (WebCore::IconDatabase::checkIntegrityBeforeOpening): Ditto
  • loader/icon/SQLDatabase.cpp: (WebCore::SQLDatabase::open): Make a copy of the path string so we don't accidentally mutate anyone else's string on ::close()
  • platform/FileSystem.h: Added. Begin a long-needed platform file system abstraction
  • platform/mac/FileSystemMac.mm: Added. (WebCore::fileExists): Check if a file exists (WebCore::deleteFile): Delete a file
  • platform/gdk/TemporaryLinkStubs.cpp: (WebCore::fileExists): (WebCore::deleteFile):
  • platform/qt/TemporaryLinkStubs.cpp: (WebCore::fileExists): (WebCore::deleteFile):
  • platform/win/TemporaryLinkStubs.cpp: (WebCore::fileExists): (WebCore::deleteFile):
  • WebCore.exp:
  • WebCore.xcodeproj/project.pbxproj:

WebKit:

Reviewed by Darin, John, Maciej, Oliver, and Tim

<rdar://problem/5394708> - Crash on launch with corrupt icon database

Expose some new SPI to help recover from this case should it happen again

  • Misc/WebIconDatabase.mm: (-[WebIconDatabase init]): Use the new _databaseDirectory to determine where to open the database on disk (+[WebIconDatabase _checkIntegrityBeforeOpening]): Tell the icon database to check integrity when it opens (-[WebIconDatabase _databaseDirectory]): Moved the database-directory-determining logic here as it's now used in two places
  • Misc/WebIconDatabasePrivate.h: Added _checkIntegrityBeforeOpening SPI for clients to give hints about when the integrity check should run
4:00 PM Changeset in webkit [25080] by honeycutt
  • 2 edits in trunk/WebCore

2007-08-14 Jon Honeycutt <jhoneycutt@apple.com>

Reviewed by Steve.

Build fix for Windows.

  • html/HTMLFormElement.cpp:
3:37 PM Changeset in webkit [25079] by staikos
  • 2 edits in trunk/WebCore

One-line obvious fix for context menus: don't connect the signal once for each
action, only once for the menu.

3:19 PM Changeset in webkit [25078] by darin
  • 2 edits in trunk/JavaScriptCore

Reviewed by Sam.

  • fix <rdar://problem/5410570> Global initializer introduced by use of std::numeric_limits in r24919
  • kjs/ustring.cpp: (KJS::overflowIndicator): Turned into a function. (KJS::maxUChars): Ditto. (KJS::allocChars): Use the functions. (KJS::reallocChars): Ditto. (KJS::UString::expandedSize): Ditto.
3:10 PM Changeset in webkit [25077] by ggaren
  • 2 edits in trunk/WebKitTools

Reviewed by Kevin Mccullough.


Removed special case that didn't belong. (It would allow a global
initializer to sneak into production builds, which would cause a
system-wide performance regression on Mac OS X.)

  • Scripts/check-for-global-initializers:
3:05 PM Changeset in webkit [25076] by justing
  • 5 edits
    4 adds in trunk

LayoutTests:

Reviewed by Tim.


<rdar://problem/5408255> REGRESSION: In Mail, clicking the containing element's UI closebox doesn't delete element

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

WebCore:

Reviewed by Tim.

<rdar://problem/5408255> REGRESSION: In Mail, clicking the containing element's UI closebox doesn't delete element

  • editing/DeleteButtonController.cpp: (WebCore::DeleteButtonController::show): Use -webkit-user-select:ignore for the deletion UI.

WebKitTools:

Reviewed by Tim.


<rdar://problem/5408255> REGRESSION: In Mail, clicking the containing element's UI closebox doesn't delete element

  • DumpRenderTree/EditingDelegate.m: (-[EditingDelegate webView:shouldShowDeleteInterfaceForElement:]): Added, return YES only for elements with the class needsDeletionUI.
2:24 PM Changeset in webkit [25075] by aroben
  • 3 edits in trunk/WebKit/win

Store user defaults in a non-mutable CFDictionaryRef

Also renamed WebPreferences' static members:

m_standardPreferences -> s_standardPreferences
m_standardUserDefaults -> s_defaultSettings

Reviewed by Darin and John.

  • WebPreferences.cpp: (WebPreferences::getInstanceForIdentifier): (WebPreferences::initializeUserDefaults): Construct the dictionary as a local CFMutableDictionaryRef, then assign it to the non-mutable static member. (WebPreferences::valueForKey): (WebPreferences::removeDefaultsIfNeeded): (WebPreferences::standardPreferences):
  • WebPreferences.h:
2:24 PM Changeset in webkit [25074] by aroben
  • 4 edits in trunk/WebKit/win

Fix <rdar://problem/5214504> No way to change WebPreferences defaults (all preferences get written to disk)

We now only write to disk values that have been explicitly set, and
never write any default values.

This is not enough, however, as anyone who has used WebKit prior to
this change will have the default values sitting in their preferences
plist on disk. To remedy this, we perform a one-time removal of any
key-value pairs that match a pair in the defaults dictionary.

Reviewed by Steve, John, Ada, and Darin.

  • WebPreferenceKeysPrivate.h: Added new key to ensure we only remove the defaults once.
  • WebPreferences.cpp: (WebPreferences::initializeDefaultSettings): Renamed from initialize, and made sure we only set up the defaults dictionary once. Now that the defaults dictionary is never modified after creation, we don't need to check whether the keys are already present. (WebPreferences::setStringValue): Don't modify the defaults dictionary. (WebPreferences::setIntegerValue): Ditto. (WebPreferences::setBoolValue): Ditto. (WebPreferences::save): Write out the user's preferences, not the defaults. (WebPreferences::load):
    • Removed gotos and early declarations now that we're using RetainPtr everywhere.
    • Initialize m_privatePrefs with an empty dictionary if we didn't read in a plist.
    • Call migrateDefaultSettingsFromSafari3Beta after loading.

(WebPreferences::migrateDefaultSettingsFromSafari3Beta): Added.
(WebPreferences::removeValuesMatchingDefaultSettings): Added.
(WebPreferences::initWithIdentifier): Don't initialize m_privatePrefs
-- load() does this now.

  • WebPreferences.h: Updated/added declarations.
2:24 PM Changeset in webkit [25073] by aroben
  • 3 edits in trunk/WebKit/win

Use RetainPtr to store WebPreferences::m_privatePrefs

Reviewed by Darin.

  • WebPreferences.cpp: (WebPreferences::setStringValue): (WebPreferences::setIntegerValue): (WebPreferences::setBoolValue): (WebPreferences::initWithIdentifier):
  • WebPreferences.h:
1:20 PM Changeset in webkit [25072] by adele
  • 1 edit
    3 adds in trunk/LayoutTests

Reviewed by Brady.

Test for http://bugs.webkit.org/show_bug.cgi?id=14746
<rdar://problem/5401041> REGRESSION: Form state not saved for forms that submit via HTTPS even if they do not contain a password field

  • http/tests/navigation/resources/restore-form-state-https-1.html: Added.
  • http/tests/navigation/restore-form-state-https-expected.txt: Added.
  • http/tests/navigation/restore-form-state-https.html: Added.
12:18 PM Changeset in webkit [25071] by antti
  • 7 edits
    2 adds in trunk

LayoutTests:

Reviewed by Darin.


Add test for <rdar://problem/5143183>
Air Mail postmark shows up wrong in Firefox due to use of CSS background-position-x/y


Also update a few tests to expect background-position instead of background-position-x/y

  • fast/css/background-position-serialize-expected.txt: Added.
  • fast/css/background-position-serialize.html: Added.
  • fast/css/computed-style-expected.txt:
  • fast/css/computed-style-without-renderer-expected.txt:
  • fast/css/remove-shorthand-expected.txt:

WebCore:

Reviewed by Darin.


Fix <rdar://problem/5143183>
Air Mail postmark shows up wrong in Firefox due to use of CSS background-position-x/y


Safari was using non-standard background-position-x/y properties when serializing style, both normal
and computed. As a result Safari generated CSS would not render correctly in Firefox.


Use standard background-position property instead.

  • css/CSSComputedStyleDeclaration.cpp: (WebCore::):
  • css/CSSMutableStyleDeclaration.cpp: (WebCore::CSSMutableStyleDeclaration::cssText):
11:07 AM Changeset in webkit [25070] by ddkilzer
  • 2 edits in trunk/WebKitTools

WebKitTools:

Reviewed by Darin.

  • Scripts/svn-create-patch: Use 'tail -n +3' instead of 'tail +3'.
10:36 AM Changeset in webkit [25069] by weinig
  • 2 edits in trunk/WebCore

Reviewed by Brady and Dr. Harrison.

Fix typo. 'whitespace' property is spelled 'white-space'.

  • page/inspector/inspector.css:

Aug 13, 2007:

10:41 PM Changeset in webkit [25068] by bdakin
  • 4 edits in trunk/WebCore

Reviewed by Maciej.

Fix for <rdar://problem/5404899> REGRESSION: Mail crash in
WebCore::FontFallbackList::fontDataAt() after dragging image into
text multiple times

We were crashing because style information was not up-to-date. This
patch fixes the problem in two ways:

Style information was not up to date at the time of the crash
because the document thought there was still a pending style sheet.
The pending style sheet counter was incremented when a call to
cloneNode from Mail cloned a style node with an imported style
sheet. Because Mail disables the cache, the style sheet did not
load immediately for the cloned node, and we do not check again to
see if it has loaded in time to decrement the pending style sheet
counter before the crash point. The fix here is only to increment
the pending style sheet counter for elements that are already in
the document.

  • dom/StyleElement.cpp: (WebCore::StyleElement::insertedIntoDocument): If we have a CSS style sheet that is currently loading, increment the pending style sheet counter. This should keep the counter accurate in the case where a style node is cloned and then immediately inserted into the document. (WebCore::StyleElement::removedFromDocument): If we have a CSS style sheet that is currently loading, decrement the pending style sheet count. This is required to keep the correct balance, given the change above. (WebCore::StyleElement::createSheet): Only addPendingSheet() and checkLoaded() if we are in the document.

Here is Darin's original fix. It seems worth keeping this fix too.
Font style information should not cause a crash if there are still
pending style sheets. This is good belt-and-suspenders in case
there is another way to run into this bug with a wacky timing
issue.

  • css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::styleForElement): Update the font.
10:39 PM Changeset in webkit [25067] by ap
  • 2 edits in trunk/WebCore

Reviewed by Darin.

http://bugs.webkit.org/show_bug.cgi?id=14635
rdar://problem/5340188
Uploading file with non-ASCII character in path fails

File upload cannot be tested in DumpRenderTree.

  • html/HTMLFormElement.cpp: (WebCore::pathGetFilename): A cross-platform helper that extracts a file name from a path. (WebCore::HTMLFormElement::formData): Use the above helper instead of code that doesn't work on Windows.
10:24 PM Changeset in webkit [25066] by ap
  • 3 edits
    2 adds in trunk

http://bugs.webkit.org/show_bug.cgi?id=14951
REGRESSION: page interpreted as UTF-8 because of stray <?xml> after <head>

Test: fast/encoding/misplaced-xml-declaration.html

  • loader/TextResourceDecoder.cpp: (WebCore::TextResourceDecoder::checkForHeadCharset): Only honor XML declaration at the very beginning of the file.
7:04 PM Changeset in webkit [25065] by oliver
  • 2 edits in trunk/WebCore

rs=sam

Correct accidentally modified code.

  • platform/mac/FontDataMac.mm: (WebCore::FontData::platformInit):
6:52 PM Changeset in webkit [25064] by adele
  • 5 edits in trunk/WebCore

Reviewed by Brady.

Fix for http://bugs.webkit.org/show_bug.cgi?id=14746
<rdar://problem/5401041> REGRESSION: Form state not saved for forms that submit via HTTPS even if they do not contain a password field

  • loader/FrameLoader.cpp: (WebCore::FrameLoader::saveDocumentState): Restore our old behavior that will save form state for secure forms. This will also match Firefox behavior.
  • dom/Document.cpp: Removed secureFormAdded(), secureFormRemoved(), hasSecureForm() which are no longer used.
  • dom/Document.h:
  • html/HTMLFormElement.cpp: (WebCore::HTMLFormElement::attach): (WebCore::HTMLFormElement::parseMappedAttribute):
6:44 PM Changeset in webkit [25063] by oliver
  • 2 edits in trunk/WebCore

Reviewed by Maciej.

<rdar://problem/5386183> REGRESSION (9A504-9A508): Underline of inline hole is too thin
on Japanese DotMac page


Hack the line metrics for the Hiragino font families so that they always allow space for
the marked text underline.


  • platform/mac/FontDataMac.mm: (WebCore::FontData::platformInit):
5:19 PM Changeset in webkit [25062] by weinig
  • 3 edits in trunk/LayoutTests

Reviewed by Kevin McCullough.

Another attempt at getting these to pass reliably.

  • http/tests/security/dataURL/xss-DENIED-to-data-url-in-foriegn-domain-subframe-location-change.html:
  • http/tests/security/dataURL/xss-DENIED-to-data-url-in-foriegn-domain-subframe.html:
5:13 PM Changeset in webkit [25061] by hyatt
  • 2 edits in trunk/WebCore

Reviewed by aroben


<rdar://problem/5400446> messed up content on calendar.yahoo.com and my.yahoo.com

Fix some more bad assumptions about <html> being the first child of the document now that we
properly support HTML5's model (where a comment node preceding <html> will in fact be its sibling).

  • html/HTMLParser.cpp: (WebCore::HTMLParser::handleError): (WebCore::HTMLParser::createHead):
3:41 PM Changeset in webkit [25060] by weinig
  • 5 edits in trunk/LayoutTests

Reviewed by Geoff.

Ensure that these tests don't fail intermittently.

  • http/tests/security/dataURL/resources/foreign-domain-data-url-accessor-opened-frame.html:
  • http/tests/security/dataURL/xss-DENIED-from-data-url-in-foriegn-domain-window-open-expected.txt:
  • http/tests/security/dataURL/xss-DENIED-to-data-url-in-foriegn-domain-subframe-location-change.html:
  • http/tests/security/dataURL/xss-DENIED-to-data-url-in-foriegn-domain-subframe.html:
2:24 PM Changeset in webkit [25059] by sfalken
  • 1 copy in tags/Safari-523.1b

New tag.

2:24 PM Changeset in webkit [25058] by sfalken
  • 1 edit in trunk/WebKit/win/WebKit.vcproj/VERSION

Bump version for submit

12:14 PM Changeset in webkit [25057] by justing
  • 8 edits
    4 adds in trunk

LayoutTests:

Reviewed by Darin.


<rdar://problem/5333725> -webkit-user-select: none makes selection difficult

  • editing/selection/5333725-expected.checksum: Added.
  • editing/selection/5333725-expected.png: Added.
  • editing/selection/5333725-expected.txt: Added.
  • editing/selection/5333725.html: Added.


Added a workaround for a bug where -webkit-user-select:none
has no effect on the body if placed on the html element:

  • editing/selection/select-all-user-select-none.html:

WebCore:

Reviewed by Darin.


<rdar://problem/5333725> -webkit-user-select: none makes selection difficult


Let users create selections if they mouse down in a -webkit-user-select:none
region, just (continue to) disallow selection endpoints in those regions, and
don't paint those regions as selected if they are fully enclosed by a selection.
For example, in xxyyyxx where x is -webkit-user-select:none, a user can mouse down
between the first two xs and drag across yyy to the second two xs to create a
selection xxyyyxx.


  • editing/SelectionController.cpp: (WebCore::SelectionController::selectAll): Allow selectAll inside a root that has -webkit-user-select:none, because it may contain content that is selectable (VisiblePosition and Selection creation will keep Selection endpoints out of -webkit-user-select:none regions).
  • page/EventHandler.cpp: (WebCore::EventHandler::selectClosestWordFromMouseEvent): Use canMouseDownStartSelect instead of the ambiguously named shouldSelect(). (WebCore::EventHandler::handleMousePressEventTripleClick): Ditto. (WebCore::EventHandler::handleMousePressEventSingleClick): Ditto. (WebCore::EventHandler::updateSelectionForMouseDrag): Use canMouseDragExtendSelect. (WebCore::EventHandler::selectCursor): Paint an ibeam in -webkit-user-select:none regions, because you can click in those regions to create a selection. (WebCore::EventHandler::canMouseDownStartSelect): Now fires the selectStart event, and returns true in -webkit-user-select: none regions. (WebCore::EventHandler::canMouseDragExtendSelect): This is identical to canMouseDownStartSelect because of 12823, even though it seems strange that we would fire the selectStart event here.
  • page/EventHandler.h:
  • rendering/RenderObject.cpp: (WebCore::RenderObject::draggableNode): Only -webkit-user-select:ignore regions will prevent selection creation.
  • rendering/RenderObject.h:
12:02 PM Changeset in webkit [25056] by andersca
  • 5 edits in trunk

LayoutTests:

Reviewed by Maciej.

<rdar://problem/5360748>
REGRESSION (r21002-r21003): Flash widget sniffer doesn't work (affects iWeb)


Update test case to handle the case where the node list is accessed after
the document has finished loading.


  • fast/dom/NodeList/invalidate-node-lists-when-parsing-expected.txt:
  • fast/dom/NodeList/invalidate-node-lists-when-parsing.html:

WebCore:

Reviewed by Maciej.

<rdar://problem/5360748>
REGRESSION (r21002-r21003): Flash widget sniffer doesn't work (affects iWeb)

Don't check whether the document is being parsed or not, because the node list
could be accessed after the document has finished parsing.


  • dom/Node.cpp: (WebCore::Node::registerNodeList):
11:02 AM Changeset in webkit [25055] by weinig
  • 2 edits in trunk/WebKitTools

Reviewed by Adam Roben.

Use the cygwin specific Apache config file under cygwin.

  • Scripts/run-webkit-httpd:
5:06 AM Changeset in webkit [25054] by lars
  • 2 edits in trunk/WebCore

no need to update regions that are not visible on the webpage.

Aug 12, 2007:

10:37 PM Changeset in webkit [25053] by bdash
  • 1 copy in releases/Apple/Tiger/Security Update 2007-007/WebKit

Tag for WebKit for Security Update 2007-007 (WebKit-419.3).

10:37 PM Changeset in webkit [25052] by bdash
  • 1 copy in releases/Apple/Tiger/Security Update 2007-007/WebCore

Tag for WebCore for Security Update 2007-007 (WebCore-418.23).

10:37 PM Changeset in webkit [25051] by bdash
  • 1 copy in releases/Apple/Tiger/Security Update 2007-007/JavaScriptGlue

Tag for JavaScriptGlue for Security Update 2007-007 (unchanged from 10.4.10).

10:37 PM Changeset in webkit [25050] by bdash
  • 1 copy in releases/Apple/Tiger/Security Update 2007-007/JavaScriptCore

Tag for JavaScriptCore for Security Update 2007-007 (JavaScriptCore-418.6.1).

10:36 PM Changeset in webkit [25049] by bdash
  • 1 add in releases/Apple/Tiger/Security Update 2007-007

New release tag.

10:36 PM Changeset in webkit [25048] by bdash
  • 1 copy in releases/Apple/Tiger/Security Update 2007-006/WebKit

Tag for WebKit for Security Update 2007-006 (WebKit-419.2.1).

10:35 PM Changeset in webkit [25047] by bdash
  • 1 copy in releases/Apple/Tiger/Security Update 2007-006/WebCore

Tag for WebCore for Security Update 2007-006 (WebCore-418.22.2).

10:35 PM Changeset in webkit [25046] by bdash
  • 1 copy in releases/Apple/Tiger/Security Update 2007-006/JavaScriptGlue

Tag for JavaScriptGlue for Security Update 2007-006 (unchanged from 10.4.10).

10:35 PM Changeset in webkit [25045] by bdash
  • 1 copy in releases/Apple/Tiger/Security Update 2007-006/JavaScriptCore

Tag for JavaScriptCore for Security Update 2007-006 (unchanged from 10.4.10).

10:35 PM Changeset in webkit [25044] by bdash
  • 1 add in releases/Apple/Tiger/Security Update 2007-006

New release tag.

10:34 PM Changeset in webkit [25043] by bdash
  • 1 copy in releases/Apple/Tiger/Mac OS X Update 10.4.10/WebKit

Tag for WebKit for Mac OS X Update 10.4.10 (WebKit-419.2).

10:34 PM Changeset in webkit [25042] by bdash
  • 1 copy in releases/Apple/Tiger/Mac OS X Update 10.4.10/WebCore

Tag for WebCore for Mac OS X Update 10.4.10 (WebCore-418.22).

10:34 PM Changeset in webkit [25041] by bdash
  • 1 copy in releases/Apple/Tiger/Mac OS X Update 10.4.10/JavaScriptGlue

Tag for JavaScriptGlue for Mac OS X Update 10.4.10 (unchanged from 10.4.9).

10:33 PM Changeset in webkit [25040] by bdash
  • 1 copy in releases/Apple/Tiger/Mac OS X Update 10.4.10/JavaScriptCore

Tag for JavaScriptCore for Mac OS X Update 10.4.10 (JavaScriptCore-418.5).

10:33 PM Changeset in webkit [25039] by bdash
  • 1 add in releases/Apple/Tiger/Mac OS X Update 10.4.10

New release tag.

10:33 PM Changeset in webkit [25038] by bdash
  • 1 copy in releases/Apple/Tiger/Mac OS X Update 10.4.9/WebKit

Tag for WebKit for Mac OS X Update 10.4.9 (WebKit-419).

10:32 PM Changeset in webkit [25037] by bdash
  • 1 copy in releases/Apple/Tiger/Mac OS X Update 10.4.9/WebCore

Tag for WebCore for Mac OS X Update 10.4.9 (unchanged from 10.4.8).

10:32 PM Changeset in webkit [25036] by bdash
  • 1 copy in releases/Apple/Tiger/Mac OS X Update 10.4.9/JavaScriptGlue

Tag for JavaScriptGlue for Mac OS X Update 10.4.9 (unchanged from 10.4.8).

10:32 PM Changeset in webkit [25035] by bdash
  • 1 copy in releases/Apple/Tiger/Mac OS X Update 10.4.9/JavaScriptCore

Tag for JavaScriptCore for Mac OS X Update 10.4.9 (unchanged from 10.4.8).

10:32 PM Changeset in webkit [25034] by bdash
  • 1 add in releases/Apple/Tiger/Mac OS X Update 10.4.9

New release tag.

10:31 PM Changeset in webkit [25033] by bdash
  • 1 copy in releases/Apple/Tiger/Security Update 2007-002/WebKit

Tag for WebKit for Security Update 2007-002 (WebKit-418.9.1).

10:31 PM Changeset in webkit [25032] by bdash
  • 1 copy in releases/Apple/Tiger/Security Update 2007-002/WebCore

Tag for WebCore for Security Update 2007-002 (unchanged from 10.4.8).

10:31 PM Changeset in webkit [25031] by bdash
  • 1 copy in releases/Apple/Tiger/Security Update 2007-002/JavaScriptGlue

Tag for JavaScriptGlue for Security Update 2007-002 (unchanged from 10.4.8).

10:31 PM Changeset in webkit [25030] by bdash
  • 1 copy in releases/Apple/Tiger/Security Update 2007-002/JavaScriptCore

Tag for JavaScriptCore for Security Update 2007-002 (unchanged from 10.4.8).

10:30 PM Changeset in webkit [25029] by bdash
  • 1 add in releases/Apple/Tiger/Security Update 2007-002

New release tag.

8:25 PM Changeset in webkit [25028] by mjs
  • 4 edits
    28 adds in trunk

LayoutTests:

Reviewed by Darin and Sam.


  • test cases for <rdar://problem/5395213> cross-domain access to individual components of location object should be denied.
  • http/tests/security/cross-frame-access-location-expected.txt: This test's results changed, there are more debug messages due to access being legitimately denied.


The remainder are new tests and support:

  • http/tests/security/resources/xss-DENIED-assign-location-hash-attacker.html: Added.
  • http/tests/security/resources/xss-DENIED-assign-location-host-attacker.html: Added.
  • http/tests/security/resources/xss-DENIED-assign-location-host-failure.html: Added.
  • http/tests/security/resources/xss-DENIED-assign-location-hostname-attacker.html: Added.
  • http/tests/security/resources/xss-DENIED-assign-location-hostname-failure.html: Added.
  • http/tests/security/resources/xss-DENIED-assign-location-nonstandardProperty-attacker.html: Added.
  • http/tests/security/resources/xss-DENIED-assign-location-pathname-attacker.html: Added.
  • http/tests/security/resources/xss-DENIED-assign-location-pathname-failure.html: Added.
  • http/tests/security/resources/xss-DENIED-assign-location-protocol-attacker.html: Added.
  • http/tests/security/resources/xss-DENIED-assign-location-protocol-failure.html: Added.
  • http/tests/security/resources/xss-DENIED-assign-location-reload-attacker.html: Added.
  • http/tests/security/resources/xss-DENIED-assign-location-search-attacker.html: Added.
  • http/tests/security/xss-DENIED-assign-location-hash-expected.txt: Added.
  • http/tests/security/xss-DENIED-assign-location-hash.html: Added.
  • http/tests/security/xss-DENIED-assign-location-host-expected.txt: Added.
  • http/tests/security/xss-DENIED-assign-location-host.html: Added.
  • http/tests/security/xss-DENIED-assign-location-hostname-expected.txt: Added.
  • http/tests/security/xss-DENIED-assign-location-hostname.html: Added.
  • http/tests/security/xss-DENIED-assign-location-nonstandardProperty-expected.txt: Added.
  • http/tests/security/xss-DENIED-assign-location-nonstandardProperty.html: Added.
  • http/tests/security/xss-DENIED-assign-location-pathname-expected.txt: Added.
  • http/tests/security/xss-DENIED-assign-location-pathname.html: Added.
  • http/tests/security/xss-DENIED-assign-location-protocol-expected.txt: Added.
  • http/tests/security/xss-DENIED-assign-location-protocol.html: Added.
  • http/tests/security/xss-DENIED-assign-location-reload-expected.txt: Added.
  • http/tests/security/xss-DENIED-assign-location-reload.html: Added.
  • http/tests/security/xss-DENIED-assign-location-search-expected.txt: Added.
  • http/tests/security/xss-DENIED-assign-location-search.html: Added.

WebCore:

Reviewed by Darin and Sam.


<rdar://problem/5395213> cross-domain access to individual components of location object should be denied.

  • bindings/js/kjs_window.cpp: (KJS::Location::put): Add the appropriate cross-domain access checks.
8:06 PM Changeset in webkit [25027] by darin
  • 4 edits in trunk/WebCore

Reviewed by John Sullivan.

  • fix <rdar://problem/5403724> REGRESSION: text inputs are not scrolled to make inline input visible (14912)
  • editing/Editor.h: Made setIgnoreMarkedTextSelectionChange no longer inline. It now has a side effect of revealing the selection when you set it to false. Added private revealSelectionAfterEditingOperation helper.
  • editing/Editor.cpp: (WebCore::Editor::deleteRange): Calls revealSelectionAfterEditingOperation instead of calling m_frame->revealSelection directly. (WebCore::Editor::replaceSelectionWithFragment): Ditto. (WebCore::Editor::insertOrderedList): Ditto. (WebCore::Editor::insertUnorderedList): Ditto. (WebCore::Editor::increaseSelectionListLevel): Ditto. (WebCore::Editor::increaseSelectionListLevelOrdered): Ditto. (WebCore::Editor::increaseSelectionListLevelUnordered): Ditto. (WebCore::Editor::decreaseSelectionListLevel): Ditto. (WebCore::Editor::insertLineBreak): Ditto. (WebCore::Editor::insertParagraphSeparator): Ditto. (WebCore::Editor::replaceMarkedText): Ditto. (WebCore::Editor::revealSelectionAfterEditingOperation): Added. Calls revealSelection, unless we are in the ignoreMarkedTextSelectionChange state. If we are in that state, we're in the middle of a composite editing operation and we shouldn't try to scroll to reveal the selection until the operation is done. (WebCore::Editor::setIgnoreMarkedTextSelectionChange): Made no longer inline. If changing the state from true to false, then calls revealSelectionAfterEditingOperation.
  • WebCore.exp: Add new entry point for no-longer-inline setter function.
7:42 PM Changeset in webkit [25026] by darin
  • 11 edits
    3 adds in trunk

JavaScriptCore:

Reviewed by Maciej.

Test: fast/js/regexp-non-capturing-groups.html

  • kjs/string_object.cpp: (KJS::replace): Add missing code to handle undefined backreferences; before we'd get the empty string instead of a JavaScript "undefined" value. (KJS::StringProtoFunc::callAsFunction): Implemented backreference support for split.
  • pcre/pcre_exec.c: (match): Made backreferences to undefined groups match the empty string instead of always failing. Only in JAVASCRIPT mode.
  • tests/mozilla/expected.html: Add a new expected test success, since this fixed one test result.

LayoutTests:

Reviewed by Maciej.

  • fast/js/regexp-non-capturing-groups-expected.txt: Added.
  • fast/js/regexp-non-capturing-groups.html: Added.
  • fast/js/resources/regexp-non-capturing-groups.js: Added.
  • fast/js/resources/js-test-pre.js: Updated to add a special case for array results, since there are some array results in the test. Also cut down on the verbosity of failures when the type of the actual result is the same as the type of the expected result. And get rid of the special case function just for NaN.
  • fast/js/regexp-unicode-overflow.html: Let the make-js-test-wrappers script regenerate this file (it removed one of the trailing newlines).
  • fast/js/kde/encode_decode_uri-expected.txt: This test now passes. I'm not sure why it was failing before.
  • fast/js/char-at-expected.txt: Removed all the periods at the end of NaN test PASS messages; they are now consistent with all the other tests.
  • fast/js/date-parse-comments-test-expected.txt: Ditto.
  • fast/js/date-parse-test-expected.txt: Ditto.
7:41 PM Changeset in webkit [25025] by ggaren
  • 8 edits in trunk/WebCore

Reviewed by Maciej Stachowiak, Dave Hyatt.


Changed the dead resource LRU-SP algorithm to measure an object's
total size, not just its encoded size. This will allow us to make
better decisions about what data to evict when the cache is small. For
example, the PLT can now run with a 16MB cache without fully evicting
any resources.


(Previously, we had assumed that decoded size would be an OK estimate
of encoded size, but that is not true of GIF, whose decoded size can be
orders of magnitude greater than its encoded size.)


Subtly, destroying a resource's decoded data now increases its recency
by moving it to the head of a smaller LRU list. This is slightly odd,
but, since all resources get the same treatment, it shouldn't hurt
the eviction algorithm.

  • history/PageCache.cpp: (WebCore::PageCache::releaseAutoreleasedPagesNow): Make sure that a dead resource eviction doesn't happen until we've released all of our dead pages. Otherwise, the cache will make terrible decisions about what to evict because all of our dead resources will seem live.
  • loader/Cache.cpp: (WebCore::Cache::Cache): (WebCore::Cache::pruneLiveResources): (WebCore::Cache::pruneDeadResources): Removed call to removeFromLiveDecodedResourcesList because this happens automatically now as a part of the process of changing the resource's decoded size. (WebCore::Cache::lruListFor): * The key change. * Compute the appropriate LRU list based on total size, not encoded size. (WebCore::Cache::dumpLRULists): Added debug logging function to help visualize the cache.
  • loader/Cache.h: (WebCore::Cache::setDeadResourcePruneEnabled): (WebCore::Cache::deadResourcePruneEnabled):
  • loader/CachedImage.cpp: Moved decoded size tracking code from here up into the base class. Currently, only CachedImage has a use for that functionality, but other subclasses might need it in the future, and the base class is already responsible for similar code related to encoded size tracking. (WebCore::CachedImage::decodedSizeChanged):
  • loader/CachedImage.h:
  • loader/CachedResource.cpp: (WebCore::CachedResource::CachedResource): (WebCore::CachedResource::setDecodedSize): Move us in the LRU-SP list just like setEncodedSize does, since decoded size counts now, too. (WebCore::CachedResource::setEncodedSize): Changed slightly to match the style of setDecodedSize.
  • loader/CachedResource.h: (WebCore::CachedResource::decodedSize):
12:20 PM Changeset in webkit [25024] by ap
  • 2 edits in trunk/WebKit

Reviewed by Darin.

http://bugs.webkit.org/show_bug.cgi?id=4648
Shockwave unable to load GZip'd text resources when server sends Content-Length header

  • Plugins/WebBaseNetscapePluginStream.mm: (-[WebBaseNetscapePluginStream startStreamWithResponse:]): Don't trust -[NSURLResponse expectedContentLength] if Content-Encoding is not identity.
4:31 AM Changeset in webkit [25023] by aroben
  • 2 edits in trunk/WebKitTools

Generate results for new tests in a more logical location

New platform-specific tests always have their results generated right
next to the test. New cross-platform tests will have their results
generated a) in the cross-platform directory, if they are text-only,
or b) in the least-specific platform directory, if they are render
tree dumps.

Reviewed by Lars.

  • Scripts/run-webkit-tests:
4:31 AM Changeset in webkit [25022] by aroben
  • 2 edits in trunk/WebKitTools

Print the actual directory where new results are generated.

Before, we were printing an unpredictable, context-specific substring
of the directory.

Reviewed by Lars.

  • Scripts/run-webkit-tests:
4:31 AM Changeset in webkit [25021] by aroben
  • 2 edits in trunk/WebKitTools

Factor some common code into a stripExtension() subroutine.

Reviewed by Lars.

  • Scripts/run-webkit-tests: Also removed some debugging output.
3:08 AM Changeset in webkit [25020] by antti
  • 1 edit in trunk/LayoutTests/ChangeLog

Correct wrong URL in ChangeLog entry

3:05 AM Changeset in webkit [25019] by antti
  • 1 edit
    2 adds in trunk/LayoutTests

Reviewed by Darin.


Add test for http://bugs.webkit.org/attachment.cgi?id=15818&action=edit which
Mitz fixed in r24973.


I had a fix for <rdar://problem/5267021>
REGRESSION: Loading Slashdot Firehose is 9X slower on Safari 3.0 than Safari 2.0
which turned out to be a dublicate.


At least we can use the layout test I did.

  • http/tests/local/style-access-before-stylesheet-loaded-expected.txt: Added.
  • http/tests/local/style-access-before-stylesheet-loaded.html: Added.
2:18 AM Changeset in webkit [25018] by aroben
  • 2 edits in trunk/WebKit/win

Fix <rdar://problem/5278790> Hole for find-on-page match in subframe isn't clipped by frame bounds

Reviewed by Maciej.

  • WebView.cpp: (WebView::rectsForTextMatches): Ported fix from r23586.
2:18 AM Changeset in webkit [25017] by aroben
  • 2 edits in trunk/WebKit/win

Prevent an ASSERT on launch by initializing AtomicString in WebKitGraphics

Reviewed by Maciej.

  • WebKitGraphics.cpp: (makeFont):

Aug 11, 2007:

1:55 PM Changeset in webkit [25016] by pewtermoose
  • 1 delete in trunk/LayoutTests/mac

Forgot to remove this directory

1:37 PM Changeset in webkit [25015] by pewtermoose
  • 3 edits
    3 moves
    2 adds in trunk

LayoutTests:

Reviewed over and over and over by Adam Roben.

Bug 14740: Hierarchical layout tests and platform organization
http://bugs.webkit.org/show_bug.cgi?id=14740

Add support for platform-specific layout tests and results.
New platform structure is as follows:

  • platform: Added.
  • platform/mac: Added.
  • mac/leopard/ -> platform/mac-leopard
  • win/ -> platform/win
  • qt/ -> platform/qt

WebKitTools:

Reviewed over and over and over by Adam Roben.

Bug 14740: Hierarchical layout tests and platform organization
http://bugs.webkit.org/show_bug.cgi?id=14740

Add support for platform-specific layout tests and results.

  • Scripts/run-webkit-tests:
12:40 PM Changeset in webkit [25014] by ddkilzer
  • 2 edits in trunk/WebKitTools

WebKitTools:

Reviewed by Adam.

Refactored svn-create-path to use a hash-of-hashes data structure to keep
track of changed files. In the top level hash, keys are paths to files and
values are 'fileData' hashes with the following keys and values:

  • isBinary: boolean value (set to true for non-text files like images, etc.)
  • isTestFile: boolean value (set to true if file exists within a known test directory)
  • modificationType: string equal to one of 'addition', 'additionWithHistory', 'modification' or 'deletion'
  • path: string equal to the path to the file (this may seem redundant, but it is required to use the second-level 'fileData' hash independent of the top-level hash)
  • sourceFile: [optional] string equal to the path of the original file that was copied or moved
  • sourceRevision: [optional] string equal to the revision of the original file that was copied or moved
  • Scripts/svn-create-patch: Moved call to GetOptions() to its own statement that saves the return value in $result, then checks it before printing help. Combined sourceFiles, %testFiles, and %binaryFiles into single %diffFiles hash and eliminated two for() loops. (binarycmp): Added. Used with sort() to order non-binary files before binary files. (findBaseUrl): Added. Extracted from findSourceFileAndRevision(). (findMimeType): Added optional second argument that takes a revision number. (generateDiff): Updated to take one fileData argument instead of three ($file, $modificationType, $isBinary). (generateFileList): Updated to take one hash ref argument (%diffFiles) instead of three (%sourceFiles, %testFiles, %binaryFiles). Populates %diffFiles using paths for keys and fileData hashes for values. (manufacturePatchForAdditionWithHistory): Updated to take one fileData argument. (pathcmp): Updated to take two fileData arguments instead of two strings. (testfilecmp): Added. Used with sort() to order non-test files before test files.
11:27 AM Changeset in webkit [25013] by darin
  • 2 edits in trunk/WebKitTools
  • Scripts/run-webkit-tests: Give a different message when only the pixel test failed.
11:13 AM Changeset in webkit [25012] by zecke
  • 2 edits in trunk/WebCore

2007-08-11 Holger Hans Peter Freyther <zecke@selfish.org>

Reviewed by Anders.

Implement passing events to a subframe. The code is copied from
the windows port and passSubframeEventToSubframe was removed as it
is not called and it is not avilable in the windows port as well.

  • page/gdk/EventHandlerGdk.cpp: (WebCore::EventHandler::passMousePressEventToSubframe): (WebCore::EventHandler::passMouseMoveEventToSubframe): (WebCore::EventHandler::passMouseReleaseEventToSubframe):
11:01 AM Changeset in webkit [25011] by darin
  • 15 edits
    34 adds in trunk

LayoutTests:

2007-08-11 Mitz Pettel <mitz@webkit.org>

Reviewed by Darin.

  • fast/table/100-percent-cell-width-expected.checksum: Added.
  • fast/table/100-percent-cell-width-expected.png: Added.
  • fast/table/100-percent-cell-width-expected.txt: Added.
  • fast/table/100-percent-cell-width.html: Added.
  • fast/table/percent-widths-stretch-expected.checksum: Added.
  • fast/table/percent-widths-stretch-expected.png: Added.
  • fast/table/percent-widths-stretch-expected.txt: Added.
  • fast/table/percent-widths-stretch.html: Added.
  • fast/text/whitespace/026-expected.checksum:
  • fast/text/whitespace/026-expected.png:
  • fast/text/whitespace/026-expected.txt:
  • tables/mozilla/bugs/bug35662-expected.checksum:
  • tables/mozilla/bugs/bug35662-expected.png:
  • tables/mozilla/bugs/bug35662-expected.txt:
  • tables/mozilla/bugs/bug5799-expected.checksum:
  • tables/mozilla/bugs/bug5799-expected.png:
  • tables/mozilla/bugs/bug5799-expected.txt:
  • tables/mozilla/core/col_span-expected.checksum:
  • tables/mozilla/core/col_span-expected.png:
  • tables/mozilla/core/col_span-expected.txt:

2007-08-11 Darin Adler <Darin Adler>

  • added a bunch of missing layout test results
  • editing/style/font-family-with-space-expected.checksum: Added.
  • editing/style/font-family-with-space-expected.png: Added.
  • fast/dom/frame-loading-via-document-write-expected.checksum: Added.
  • fast/dom/frame-loading-via-document-write-expected.png: Added.
  • fast/encoding/xmacroman-encoding-test-expected.checksum: Added.
  • fast/encoding/xmacroman-encoding-test-expected.png: Added.
  • fast/frames/frame-navigation-expected.checksum: Added.
  • fast/frames/frame-navigation-expected.png: Added.
  • fast/frames/frame-set-whitespace-attributes-expected.checksum: Added.
  • fast/frames/frame-set-whitespace-attributes-expected.png: Added.
  • fast/frames/inline-object-inside-frameset-expected.checksum: Added.
  • fast/frames/inline-object-inside-frameset-expected.png: Added.
  • fast/html/keygen-expected.checksum: Added.
  • fast/html/keygen-expected.png: Added.
  • fast/images/pdf-as-image-landscape-expected.checksum: Added.
  • fast/images/pdf-as-image-landscape-expected.png: Added.
  • fast/inline-block/14498-positionForCoordinates-expected.checksum: Added.
  • fast/inline-block/14498-positionForCoordinates-expected.png: Added.

WebCore:

2007-08-11 Mitz Pettel <mitz@webkit.org>

Reviewed by Darin.

Tests: fast/table/100-percent-cell-width.html

fast/table/percent-widths-stretch.html

  • rendering/AutoTableLayout.cpp: (WebCore::AutoTableLayout::calcPrefWidths): Changed the value used instead of 0% to avoid division by zero from 1% to less than 0.01%. Removed code that added 0.5px to non-percent widths when calculating the scaling factor. The latter change is covered by the percent-widths-stretch test, where the new results match both WinIE 7 and Firefox 3.
10:18 AM Changeset in webkit [25010] by darin
  • 3 edits
    2 adds in trunk

LayoutTests:

Reviewed by Antti.

  • test for <rdar://problem/5266535> REGRESSION: <img> inside <map> no longer allowed in strict mode (breaks chemicalelements.com)
  • fast/parser/strict-img-in-map-expected.txt: Added.
  • fast/parser/strict-img-in-map.html: Added.

WebCore:

Reviewed by Antti.

  • fix <rdar://problem/5266535> REGRESSION: <img> inside <map> no longer allowed in strict mode (breaks chemicalelements.com)

Test: fast/parser/strict-img-in-map.html

  • html/HTMLMapElement.cpp: (WebCore::HTMLMapElement::checkDTD): Removed FIXME saying this code is strange, since this code matches the HTML 4 specification almost exactly. Made <img> elements allowed even in strict mode and added small comments to clarify what comes from the DTD and what is non-standard.
6:53 AM Changeset in webkit [25009] by zecke
  • 2 edits in trunk/WebCore

2007-08-11 Holger Hans Peter Freyther <zecke@selfish.org>

Reviewed by Lars.

GdkEventKey::string is not supposed to be used. The length
of this string is zero for non ascii charachters. Use the
gdk_unicode_to_keyval to convert the keyval to a UChar and construct
a String. This change makes it possible to input non ascii
charachters.

  • platform/gdk/KeyEventGdk.cpp: (WebCore::keyIdentifierForGdkKeyCode): (WebCore::singleCharacterString): (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
4:52 AM Changeset in webkit [25008] by andrew
  • 3 edits
    2 adds in trunk

LayoutTests:

Reviewed by Mark Rowe.


Fix http://bugs.webkit.org/show_bug.cgi?id=14645
getPropertyValue should be case insensitive


Test for getPropertyValue, setProperty, removeProperty being case-insensitive

  • fast/css/css-properties-case-insensitive-expected.txt: Added.
  • fast/css/css-properties-case-insensitive.html: Added.

WebCore:

Reviewed by Mark Rowe.


Fix http://bugs.webkit.org/show_bug.cgi?id=14645
getPropertyValue should be case insensitive


When we get the propertyID for a given string we convert to lowercase.


This also applies to setProperty, removeProperty and others.


  • css/CSSStyleDeclaration.cpp: (WebCore::propertyID):
Note: See TracTimeline for information about the timeline view.