Timeline



Feb 12, 2008:

10:32 PM Changeset in webkit [30190] by timothy@apple.com
  • 1 edit in trunk/WebCore/platform/sql/SQLiteDatabase.cpp

Comment out the ASSERT to make the layout tests pass. Filed <rdar://problem/5739818> to track the issue.

10:04 PM Changeset in webkit [30189] by timothy@apple.com
  • 7 edits in trunk/WebCore

Reviewed by Brady Eidson.

<rdar://problem/5652560> Can't delete database if the website that
uses it has been opened in this session

Close the Database on the database thread before deleting the file.
Tested and works on Windows and Mac.

  • platform/sql/SQLiteDatabase.cpp: (WebCore::SQLiteDatabase::close): Assert we are on the opening thread.
  • storage/Database.cpp: (WebCore::Database::markAsDeletedAndClose): Unschedule any pending Database tasks, and start and imediate DatabaseCloseTask. (WebCore::Database::close): Close the SQLDatabase.
  • storage/Database.h: Renamed markAsDeleted to markAsDeletedAndClose.
  • storage/DatabaseTask.cpp: (WebCore::DatabaseCloseTask::DatabaseCloseTask): New task. (WebCore::DatabaseCloseTask::doPerformTask): Call close on the Database. (WebCore::DatabaseCloseTask::debugTaskName): Return "DatabaseCloseTask".
  • storage/DatabaseTask.h: Add DatabaseCloseTask.
  • storage/DatabaseTracker.cpp: (WebCore::DatabaseTracker::deleteDatabaseFile): Call the renamed markAsDeletedAndClose.
9:12 PM BuildingCairoOnWindows edited by bfulgham@macports.org
(diff)
8:22 PM Changeset in webkit [30188] by oliver@apple.com
  • 3 edits in trunk/WebCore

Endeavour to fix qt and gtk builds

7:07 PM Changeset in webkit [30187] by Adam Roben
  • 2 edits in trunk/WebKitLibraries

Clean up auto-version.sh a bit

It now does quite a bit less file I/O and many fewer fork/exec pairs.
It's also quite a bit easier to read.

Reviewed by Steve.

  • win/tools/scripts/auto-version.sh:
6:53 PM Changeset in webkit [30186] by sfalken@apple.com
  • 2 edits
    2 adds in trunk/WebKit/win

Use a precompiled header to build WebKit.


Reviewed by Adam.

  • WebKit.vcproj/WebKit.vcproj:
  • WebKitPrefix.cpp: Added.
  • WebKitPrefix.h: Added.
6:11 PM Changeset in webkit [30185] by oliver@apple.com
  • 6 edits in trunk/WebCore

Bug 17269: Deobfuscate CanvasRenderingContext2D.cpp
Remove ifdef's from canvas paint code

Reviewed by Eric S.

By making GraphicsContext aware of the crossplatform ImageBuffer
type we can migrate the ifdef-ified paint code in HTMLCanvasElement
into platform implementations of GraphicsContext.

5:10 PM Changeset in webkit [30184] by beidson@apple.com
  • 5 edits in trunk/WebCore

Reviewed by Darin Adler

Fix for <rdar://problem/5737692> - Database API needs to support SuccessCallback

Layout tests will come shortly with a mess of DRT changes

  • platform/SecurityOrigin.cpp: (WebCore::SecurityOrigin::SecurityOrigin): Standardize on "empty string" instead of null string as different paths of constructing a SecurityOrigin were causing different hashes for the "same" SecurityOrigin
  • storage/Database.cpp: (WebCore::Database::changeVersion): Pass in the successCallback (WebCore::Database::transaction): Ditto
  • storage/SQLTransaction.cpp: (WebCore::SQLTransaction::SQLTransaction): (WebCore::SQLTransaction::debugStepName): (WebCore::SQLTransaction::performNextStep): Update ASSERTs for the new valid steps (WebCore::SQLTransaction::performPendingCallback): Ditto (WebCore::SQLTransaction::postflightAndCommit): Schedule the success callback if it exists - otherwise skip straight to cleanupAfterSuccessCallback() (WebCore::SQLTransaction::deliverSuccessCallback): Deliver success callback on the main thread, then schedule cleanupAfterSuccessCallback() (WebCore::SQLTransaction::cleanupAfterSuccessCallback): Cleanup and end the transaction (WebCore::SQLTransaction::handleTransactionError): (WebCore::SQLTransaction::deliverTransactionErrorCallback): (WebCore::SQLTransaction::cleanupAfterTransactionErrorCallback):
  • storage/SQLTransaction.h:
4:18 PM Changeset in webkit [30183] by sfalken@apple.com
  • 2 edits in trunk/WebKitLibraries

Versioning script change.

  • win/tools/scripts/auto-version.sh:
4:16 PM Changeset in webkit [30182] by sfalken@apple.com
  • 2 edits in trunk/WebCore

Changes to support merged MIDL output.


All COM interfaces are now generated to WebKit.h.


Reviewed by Sam, Ada.

  • bindings/scripts/CodeGeneratorCOM.pm:
4:16 PM Changeset in webkit [30181] by sfalken@apple.com
  • 19 edits in trunk/WebKitTools

Changes to support merged MIDL output.

All COM interfaces are now generated to WebKit.h.

Reviewed by Sam, Ada.

  • Drosera/win/BaseDelegate.h:
  • Drosera/win/DebuggerClient.cpp:
  • Drosera/win/DebuggerDocumentPlatform.cpp:
  • Drosera/win/Drosera.cpp:
  • Drosera/win/ServerConnection.cpp:
  • Drosera/win/ServerConnection.h:
  • DumpRenderTree/win/DumpRenderTree.cpp:
  • DumpRenderTree/win/EditingDelegate.h:
  • DumpRenderTree/win/EventSender.cpp:
  • DumpRenderTree/win/FrameLoadDelegate.cpp:
  • DumpRenderTree/win/FrameLoadDelegate.h:
  • DumpRenderTree/win/GCControllerWin.cpp:
  • DumpRenderTree/win/LayoutTestControllerWin.cpp:
  • DumpRenderTree/win/PolicyDelegate.h:
  • DumpRenderTree/win/ResourceLoadDelegate.h:
  • DumpRenderTree/win/UIDelegate.cpp:
  • DumpRenderTree/win/UIDelegate.h:
  • DumpRenderTree/win/WorkQueueItemWin.cpp:
4:16 PM Changeset in webkit [30180] by sfalken@apple.com
  • 122 edits in trunk/WebKit/win

Changes to support merged MIDL output.

All COM interfaces are now generated to WebKit.h.

Reviewed by Sam, Ada.

  • DOMCSSClasses.h:
  • DOMCoreClasses.h:
  • DOMEventsClasses.h:
  • DOMHTMLClasses.h:
  • DefaultDownloadDelegate.h:
  • DefaultPolicyDelegate.cpp:
  • DefaultPolicyDelegate.h:
  • GEN_DOMObject.h:
  • Interfaces/DOMCSS.idl:
  • Interfaces/DOMCore.idl:
  • Interfaces/DOMEvents.idl:
  • Interfaces/DOMExtensions.idl:
  • Interfaces/DOMHTML.idl:
  • Interfaces/DOMPrivate.idl:
  • Interfaces/DOMRange.idl:
  • Interfaces/DOMWindow.idl:
  • Interfaces/IGEN_DOMObject.idl:
  • Interfaces/IWebArchive.idl:
  • Interfaces/IWebBackForwardList.idl:
  • Interfaces/IWebBackForwardListPrivate.idl:
  • Interfaces/IWebCache.idl:
  • Interfaces/IWebDataSource.idl:
  • Interfaces/IWebDatabaseManager.idl:
  • Interfaces/IWebDocument.idl:
  • Interfaces/IWebDownload.idl:
  • Interfaces/IWebEditingDelegate.idl:
  • Interfaces/IWebError.idl:
  • Interfaces/IWebErrorPrivate.idl:
  • Interfaces/IWebFormDelegate.idl:
  • Interfaces/IWebFrame.idl:
  • Interfaces/IWebFrameLoadDelegate.idl:
  • Interfaces/IWebFrameLoadDelegatePrivate.idl:
  • Interfaces/IWebFramePrivate.idl:
  • Interfaces/IWebFrameView.idl:
  • Interfaces/IWebHTMLRepresentation.idl:
  • Interfaces/IWebHTTPURLResponse.idl:
  • Interfaces/IWebHistory.idl:
  • Interfaces/IWebHistoryItem.idl:
  • Interfaces/IWebHistoryItemPrivate.idl:
  • Interfaces/IWebIconDatabase.idl:
  • Interfaces/IWebInspector.idl:
  • Interfaces/IWebJavaScriptCollector.idl:
  • Interfaces/IWebKitStatistics.idl:
  • Interfaces/IWebMutableURLRequest.idl:
  • Interfaces/IWebMutableURLRequestPrivate.idl:
  • Interfaces/IWebNotification.idl:
  • Interfaces/IWebNotificationCenter.idl:
  • Interfaces/IWebNotificationObserver.idl:
  • Interfaces/IWebPolicyDelegate.idl:
  • Interfaces/IWebPreferences.idl:
  • Interfaces/IWebPreferencesPrivate.idl:
  • Interfaces/IWebResource.idl:
  • Interfaces/IWebResourceLoadDelegate.idl:
  • Interfaces/IWebResourceLoadDelegatePrivate.idl:
  • Interfaces/IWebScriptCallFrame.idl:
  • Interfaces/IWebScriptDebugListener.idl:
  • Interfaces/IWebScriptDebugServer.idl:
  • Interfaces/IWebScriptObject.idl:
  • Interfaces/IWebScriptScope.idl:
  • Interfaces/IWebScrollBarDelegatePrivate.idl:
  • Interfaces/IWebScrollBarPrivate.idl:
  • Interfaces/IWebSecurityOrigin.idl:
  • Interfaces/IWebTextRenderer.idl:
  • Interfaces/IWebUIDelegate.idl:
  • Interfaces/IWebUIDelegatePrivate.idl:
  • Interfaces/IWebURLAuthenticationChallenge.idl:
  • Interfaces/IWebURLRequest.idl:
  • Interfaces/IWebURLResponse.idl:
  • Interfaces/IWebURLResponsePrivate.idl:
  • Interfaces/IWebUndoManager.idl:
  • Interfaces/IWebUndoTarget.idl:
  • Interfaces/IWebView.idl:
  • Interfaces/IWebViewPrivate.idl:
  • Interfaces/WebKit.idl:
  • WebActionPropertyBag.cpp:
  • WebBackForwardList.h:
  • WebCache.h:
  • WebDataSource.cpp:
  • WebDataSource.h:
  • WebDatabaseManager.h:
  • WebDownload.h:
  • WebEditorClient.cpp:
  • WebEditorClient.h:
  • WebError.h:
  • WebFrame.cpp:
  • WebFrame.h:
  • WebFramePolicyListener.h:
  • WebHTMLRepresentation.cpp:
  • WebHTMLRepresentation.h:
  • WebHistory.cpp:
  • WebHistory.h:
  • WebHistoryItem.h:
  • WebIconDatabase.h:
  • WebInspector.h:
  • WebJavaScriptCollector.h:
  • WebKit.vcproj/Interfaces.vcproj:
  • WebKit.vcproj/WebKitGUID.vcproj:
  • WebKitDLL.cpp:
  • WebKitStatistics.h:
  • WebMutableURLRequest.cpp:
  • WebMutableURLRequest.h:
  • WebNotification.h:
  • WebNotificationCenter.h:
  • WebPreferences.h:
  • WebResource.h:
  • WebScriptCallFrame.h:
  • WebScriptDebugServer.cpp:
  • WebScriptDebugServer.h:
  • WebScriptDebugger.cpp:
  • WebScriptDebugger.h:
  • WebScriptObject.h:
  • WebScrollBar.h:
  • WebSecurityOrigin.h:
  • WebTextRenderer.h:
  • WebURLAuthenticationChallenge.h:
  • WebURLAuthenticationChallengeSender.h:
  • WebURLCredential.h:
  • WebURLProtectionSpace.h:
  • WebURLResponse.h:
  • WebView.cpp:
  • WebView.h:
3:54 PM Changeset in webkit [30179] by mitz@apple.com
  • 2 edits in trunk/WebCore

Reviewed by Adam Roben.

Revised the system fallback font lookup logic to use MLang font linking
again. To avoid reintroducing bug 16548 and <rdar://problem/5280188>,
for CJK characters, try linking based on a single code page at a time,
starting with the user's default code page (if it is one of the CJK
code pages) followed by the other CJK code pages in a prescribed order
that matches what Firefox does.

  • platform/graphics/win/FontCacheWin.cpp: (WebCore::getCJKCodePageMasks): Added. Returns the search order for CJK code pages, with the user's default code page first. (WebCore::currentFontContainsCharacter): Factored out of getFontDataForCharacters(). (WebCore::createMLangFont): Ditto. (WebCore::FontCache::getFontDataForCharacters):
3:34 PM Changeset in webkit [30178] by andersca@apple.com
  • 2 edits in trunk/WebKit/win

Reviewed by Adam.

Implement imageTitle.


  • WebCoreLocalizedStrings.cpp: (WebCore::imageTitle):
1:29 PM Changeset in webkit [30177] by weinig@apple.com
  • 2 edits in trunk/JavaScriptCore

Reviewed by Brady Eidson.

<rdar://problem/5659216> REGRESSION: PLT 0.3% slower due to r28868 (caching ClassNodeList and NamedNodeList)

  • Tweak the statements in isASCIISpace to account for the statistical distribution of usage in the PLT.

.4% speedup on my machine. Stephanie's machine shows this as .3% speedup.

  • wtf/ASCIICType.h: (WTF::isASCIISpace):
1:17 PM Changeset in webkit [30176] by mitz@apple.com
  • 2 edits
    2 adds in trunk/LayoutTests

Rubber-stamped by Adam Roben.

  • make fast/css/css3-nth-child pass
  • fast/css/css3-nth-child.html: Removed spaces that were making the :nth-child selector fail to parse because of <rdar://problem/5733761>.
  • platform/mac-leopard/fast/css/css3-nth-child-expected.checksum: Added.
  • platform/mac-leopard/fast/css/css3-nth-child-expected.png: Added.
1:04 PM Changeset in webkit [30175] by alp@webkit.org
  • 5 edits in trunk

2008-02-12 Rodney Dawes <dobey@wayofthemonkey.com>

Reviewed by Alp Toker.

Add -DMAEMO_CHANGES when the hildon CONFIG option is specified
Add hildon-1 to PKGCONFIG when hildon CONFIG option is specified

12:13 PM Changeset in webkit [30174] by mitz@apple.com
  • 2 edits in trunk/WebCore

Reviewed by Timothy Hatcher.

  • <rdar://problem/5738175> Remove workaround for <rdar://problem/5539388> from post-Tiger builds
  • platform/graphics/cg/GraphicsContextCG.cpp: (WebCore::GraphicsContext::setShadow):
12:11 PM Changeset in webkit [30173] by beidson@apple.com
  • 2 edits in trunk/WebCore

Release build fix

  • storage/DatabaseTask.cpp:
11:37 AM Changeset in webkit [30172] by ap@webkit.org
  • 13 edits
    3 adds in trunk/WebCore

Reviewed by Brady.

http://bugs.webkit.org/show_bug.cgi?id=17177
<rdar://problem/5729619> Storage tasks are getting lost

<rdar://problem/5729445> REGRESSION: Cannot schedule more than one transaction at a time

<rdar://problem/5729446> Major thread safety issue in Database code

  • platform/MessageQueue.h: Added a thread-safe queue abstraction.
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj: Added MessageQueue.h.
  • dom/Document.cpp: (WebCore::Document::~Document): Fixed a race condition resulting in a hanging reference.
  • storage/Database.idl: Fixed parameter declarations to actually match implementation (which is custom, so it got out of sync).
  • storage/DatabaseTask.h: (WebCore::DatabaseTask::database): (WebCore::DatabaseTransactionTask::transaction): Changed tasks to hold more information internally. Added helpers for better debug logging.
  • storage/DatabaseTask.cpp: (WebCore::DatabaseTask::DatabaseTask): (WebCore::DatabaseTask::performTask): (WebCore::DatabaseOpenTask::DatabaseOpenTask): (WebCore::DatabaseOpenTask::doPerformTask): (WebCore::DatabaseOpenTask::debugTaskName): (WebCore::DatabaseTransactionTask::DatabaseTransactionTask): (WebCore::DatabaseTransactionTask::~DatabaseTransactionTask): (WebCore::DatabaseTransactionTask::doPerformTask): (WebCore::DatabaseTransactionTask::debugTaskName): (WebCore::DatabaseTableNamesTask::DatabaseTableNamesTask): (WebCore::DatabaseTableNamesTask::doPerformTask): (WebCore::DatabaseTableNamesTask::debugTaskName): Implementation for the above.

(WebCore::DatabaseTask::lockForSynchronousScheduling):
(WebCore::DatabaseTask::waitForSynchronousCompletion):
Fixed a potential race condition: if the task completed before we entered a wait, we'd never
wake up. There was an assertion guarding against this, but no actual guarantee that I could see.

  • storage/DatabaseThread.cpp: (WebCore::DatabaseThread::DatabaseThread): (WebCore::DatabaseThread::requestTermination): (WebCore::DatabaseThread::databaseThread): (WebCore::DatabaseThread::scheduleTask): (WebCore::DatabaseThread::scheduleImmediateTask): (WebCore::DatabaseThread::unscheduleDatabaseTasks):
  • storage/DatabaseThread.h: Changed to use MessageQueue.
  • storage/Database.cpp: (WebCore::guidMutex): (WebCore::guidToVersionMap): (WebCore::guidToDatabaseMap): (WebCore::Database::openDatabase): (WebCore::Database::Database): (WebCore::Database::~Database): (WebCore::Database::openAndVerifyVersion): (WebCore::guidForOriginAndName): (WebCore::Database::changeVersion): (WebCore::Database::transaction): (WebCore::Database::scheduleTransaction): (WebCore::Database::scheduleTransactionStep): (WebCore::Database::scheduleTransactionCallback): (WebCore::Database::version): (WebCore::Database::deliverPendingCallback): (WebCore::Database::tableNames):
  • storage/Database.h: Changed m_transactionQueue to a MessageQueue. Got rid of callback tracking - these can take care of themselves. Got rid of a DatabaseThread member, as the Document can be asked for it. Moved private static members and helpers out of the header. Lost CurrentThreadSetter debug helper on the way. We may need to re-add something like that later.
  • storage/SQLTransaction.h:
  • storage/SQLTransaction.cpp: Added a lot of debug logging. (WebCore::SQLTransaction::scheduleToRunStatements): Removed "m_currentStatement = 0" assignment, as it created a race condition. Everything seems to work better without it, although a real fix would be to get rid of this variable - it's evil shared data that isn't even protected in any way.
  • manual-tests/database-threading-stress-test-2.html: Added.
  • manual-tests/database-threading-stress-test.html: Added.
11:29 AM Changeset in webkit [30171] by Adam Roben
  • 3 edits
    3 adds in trunk

Fix Bug 17328: REGRESSION (r30147): Inspector is unstyled on Windows

WebCore:

Fix Bug 17328: REGRESSION (r30147): Inspector is unstyled on Windows

<http://bugs.webkit.org/show_bug.cgi?id=17328>
<rdar://5737946>

Reviewed by Mitz.

Test: fast/loader/local-css-allowed-in-strict-mode.html

  • platform/network/cf/ResourceResponseCFNet.cpp: (WebCore::ResourceResponse::doUpdateResourceResponse): Add a case for .css files.

LayoutTests:

Add a test for Bug 17328: REGRESSION (r30147): Inspector is unstyled
on Windows

<http://bugs.webkit.org/show_bug.cgi?id=17328>
<rdar://5737946>

Reviewed by Mitz.

  • fast/loader/local-css-allowed-in-strict-mode-expected.txt: Added.
  • fast/loader/local-css-allowed-in-strict-mode.html: Added.
  • fast/loader/resources/stylesheet.css: Added.
11:17 AM Changeset in webkit [30170] by andersca@apple.com
  • 2 edits in trunk/WebCore

Build fix.


  • loader/ImageDocument.cpp:
10:53 AM Changeset in webkit [30169] by andersca@apple.com
  • 1 edit in trunk/WebKit/mac/ChangeLog

Fix tyop.

10:51 AM Changeset in webkit [30168] by andersca@apple.com
  • 15 edits
    2 deletes in trunk

WebCore:

Reviewed by Mitz.

Make the code that sets the image title cross platform.

  • WebCore.xcodeproj/project.pbxproj: Remove ImageDocumentMac.


  • loader/ImageDocument.cpp: (WebCore::ImageTokenizer::finish):
  • loader/mac/ImageDocumentMac.h: Removed.
  • loader/mac/ImageDocumentMac.mm: Removed.


  • page/mac/WebCoreFrameBridge.h:
  • page/mac/WebCoreViewFactory.h: Move imageTitleForFilename:size from the bridge to the view factory.


  • platform/LocalizedStrings.h: Add imageTitle.


  • platform/mac/LocalizedStringsMac.mm: (WebCore::imageTitle): Have imageTitle call the view factory.


  • platform/qt/Localizations.cpp: (WebCore::imageTitle):
  • platform/wx/LocalizedStringsWx.cpp: (WebCore::imageTitle):
  • platform/gtk/LocalizedStringsGtk.cpp: (WebCore::imageTitle): Add stubs.

WebKit/mac:

Reviewed by Mitz.

  • WebCoreSupport/WebFrameBridge.mm:
  • WebCoreSupport/WebViewFactory.mm: (-[WebViewFactory imageTitleForFilename:size:]): Move implementatino from WebFrameBridge to WebViewFactory.

WebKit/win:

Reviewed by Mitz.

  • WebCoreLocalizedStrings.cpp: (WebCore::imageTitle): Add stub.
5:23 AM Changeset in webkit [30167] by Nikolas Zimmermann
  • 1 edit
    31 adds in trunk/LayoutTests

Not reviewed, adding missing layout test results (that have been r+ already, but not commited)

1:40 AM Changeset in webkit [30166] by oliver@apple.com
  • 2 edits in trunk/WebCore

more Qt fixes

1:30 AM Changeset in webkit [30165] by oliver@apple.com
  • 2 edits in trunk/WebCore

Yet another attempt to fix Qt

1:21 AM Changeset in webkit [30164] by oliver@apple.com
  • 2 edits in trunk/WebCore

Attempt to fix qt build

1:14 AM Changeset in webkit [30163] by oliver@apple.com
  • 4 edits in trunk/WebCore

Make canvas use an ImageBuffer for its backing store

Reviewed by Alp Toker.

In order to make the canvas implementation less platform dependent
(and thus reduce the current quagmire of ifdefs) we now use an
ImageBuffer to provide the backing buffer, an immediate consequence
of this is to remove multiple ifdefs in the construction of the
buffer. This patch allows us to further reduce the platform
dependencies in later patches.

Feb 11, 2008:

10:02 PM Changeset in webkit [30162] by mitz@apple.com
  • 3 edits
    4 adds in trunk

WebCore:

Reviewed by Dave Hyatt.

Test: fast/css/last-child-style-sharing.html

  • css/CSSGrammar.y: Changed to call setUsesSiblingRules(true) for all CSS3 selectors that require it.

LayoutTests:

Reviewed by Dave Hyatt.

  • fast/css/last-child-style-sharing.html: Added.
  • platform/mac/fast/css/last-child-style-sharing-expected.checksum: Added.
  • platform/mac/fast/css/last-child-style-sharing-expected.png: Added.
  • platform/mac/fast/css/last-child-style-sharing-expected.txt: Added.
7:02 PM Changeset in webkit [30161] by timothy@apple.com
  • 2 edits
    7 deletes in tags/Safari-5525.8/LayoutTests

Merge the LayoutTests part of r30052.

7:01 PM Changeset in webkit [30160] by timothy@apple.com
  • 3 edits in tags/Safari-5525.8/WebCore

Merge the WebCore part of r30052.

5:31 PM Changeset in webkit [30159] by timothy@apple.com
  • 1 copy in tags/Safari-5525.8

New tag.

5:24 PM Changeset in webkit [30158] by weinig@apple.com
  • 4 edits in trunk/JavaScriptCore

Reviewed by Anders Carlsson.

Fixes for:
<rdar://problem/5735497> Match Firefox's cross-domain model more accurately by return the built-in version of functions even if they have been overridden
<rdar://problem/5735443> Crash when setting the Window objects prototype to a custom Object and then calling a method on it

  • Expose the native Object.prototype.toString implementation so that it can be used for cross-domain toString calling.
4:26 PM Changeset in webkit [30157] by weinig@apple.com
  • 21 edits
    1 move
    16 adds
    1 delete in trunk

WebCore:

Reviewed by Darin Adler.

Make the cross-domain security model more closely match Firefox by always returning the
native built-in functions when accessing functions cross-domain.

Fixes for:
<rdar://problem/5735497> Match Firefox's cross-domain model more accurately by return the built-in version of functions even if they have been overridden
<rdar://problem/5735443> Crash when setting the Window objects prototype to a custom Object and then calling a method on it

Tests: fast/dom/Window/window-custom-prototype-crash.html

fast/dom/Window/window-function-frame-getter-precedence.html
http/tests/security/cross-frame-access-get-override.html
http/tests/security/cross-frame-access-location-get-override.html
http/tests/security/cross-frame-access-location-get.html
http/tests/security/cross-frame-access-location-put.html

  • bindings/js/JSDOMWindowCustom.cpp: (WebCore::JSDOMWindow::customGetOwnPropertySlot):
  • Return the native-built in version of an cross-domain allowed function (eg. window.focus) whether or not it has been overridden, instead of undefined.
  • When doing findEntry lookup, use the the tables directly (JSDOMWindowPrototype::info.propHashTable) instead of calling the virtual classInfo() method to avoid the unnecessary overhead.
  • Allow access to the native toString function cross-domain. It always returns "[object Window]".
  • Use the new nonCachingStaticFunctionGetter when return allowed functions cross-frame so that the function an overridden function is not inadvertantly returned from the PropertyMap.\
  • bindings/js/JSHistoryCustom.cpp: (WebCore::JSHistory::customGetOwnPropertySlot):
  • Implement the same model as described above for the History object, always returning the native built-in function cross-domain.
  • Allow access to the native toString function cross-domain.
  • Clean up the code to make it clear that the custom functionality is only there for cross-domain access.
  • bindings/js/JSLocation.cpp: (WebCore::JSLocation::getOwnPropertySlot):
  • Match the generated classes by moving all the custom logic into a separate customGetOwnPropertySlot function. This will help moving to a generated class in the future. (WebCore::JSLocation::customGetOwnPropertySlot):
  • Implement the same model as described above for the Location object, always returning the native built-in function cross-domain.
  • Clean up the code to make it clear that the custom functionality is only there for cross-domain access. (WebCore::JSLocation::put): (WebCore::JSLocation::deleteProperty): (WebCore::JSLocation::getPropertyNames):
  • bindings/js/JSLocation.h:
  • Clean up to match the rest of the file a little better.
  • bindings/js/kjs_binding.cpp: (WebCore::allowsAccessFromFrame): (WebCore::printErrorMessageForFrame): (WebCore::nonCachingStaticFunctionGetter): (WebCore::objectToStringFunctionGetter):
  • bindings/js/kjs_binding.h:
  • Put common functionality related to cross-domain access here to serve as a central shared point. This includes moving and augmenting the allowsAccessFromFrame method that was in both JSHistoryCustom.cpp and JSLocation.cpp.
  • bindings/js/kjs_dom.cpp: (WebCore::checkNodeSecurity):
  • Use the new allowsAccessFromFrame method.
  • bindings/js/kjs_window.cpp: (KJS::Window::childFrameGetter): Cleanup. (KJS::Window::namedItemGetter): Cleanup. (KJS::Window::getOwnPropertySlot):
  • Do the prototype lookup early to match Firefox in having function lookup have a higher precedence than the index or shortcut name getters.
  • Cleanup function to make it more understandable and slightly more efficient. (KJS::Window::allowsAccessFrom):
  • Add a new variant of this method that takes a reference to a String, which, on failure, will contain the error message to print out. The caller can then pass this to printErrorMessage. This allows for code to check allowsAccessFrom and act on the result without printing out the error message. For convenience, a version with out the String parameter has been left which prints out the message automatically. (KJS::Window::printErrorMessage):
  • bindings/js/kjs_window.h:

LayoutTests:

Reviewed by Darin Adler.

Tests for:
<rdar://problem/5735497> Match Firefox's cross-domain model more accurately by return the built-in version of functions even if they have been overridden
<rdar://problem/5735443> Crash when setting the Window objects prototype to a custom Object and then calling a method on it

  • fast/dom/Window/resources/WindowProperties.js: Added.
  • fast/dom/Window/window-custom-prototype-crash-expected.txt: Added.
  • fast/dom/Window/window-custom-prototype-crash.html: Added.
  • fast/dom/Window/window-function-frame-getter-precedence-expected.txt: Added.
  • fast/dom/Window/window-function-frame-getter-precedence.html: Added.
  • fast/dom/Window/window-function-name-getter-precedence-expected.txt:
  • fast/dom/Window/window-function-name-getter-precedence.html:
  • http/tests/security/cross-frame-access-custom-expected.txt:
  • http/tests/security/cross-frame-access-custom.html:
  • http/tests/security/cross-frame-access-get-override-expected.txt: Added.
  • http/tests/security/cross-frame-access-get-override.html: Added.
  • http/tests/security/cross-frame-access-history-get-override-expected.txt:
  • http/tests/security/cross-frame-access-history-get-override.html:
  • http/tests/security/cross-frame-access-history-put-expected.txt:
  • http/tests/security/cross-frame-access-history-put.html:
  • http/tests/security/cross-frame-access-location-expected.txt: Removed.
  • http/tests/security/cross-frame-access-location-get-expected.txt: Added.
  • http/tests/security/cross-frame-access-location-get-override-expected.txt: Added.
  • http/tests/security/cross-frame-access-location-get-override.html: Added.
  • http/tests/security/cross-frame-access-location-get.html: Copied from http/tests/security/cross-frame-access-location.html.
  • http/tests/security/cross-frame-access-location-put-expected.txt: Added.
  • http/tests/security/cross-frame-access-location-put.html: Added.
  • http/tests/security/cross-frame-access-location.html: Removed.
  • http/tests/security/resources/cross-frame-iframe-for-get-override-test.html: Added.
  • http/tests/security/resources/cross-frame-iframe-for-get-test.html:
  • http/tests/security/resources/cross-frame-iframe-for-history-put-test.html:
  • http/tests/security/resources/cross-frame-iframe-for-location-get-override-test.html: Added.
  • http/tests/security/resources/cross-frame-iframe-for-location-get-test.html: Added.
  • http/tests/security/resources/cross-frame-iframe-for-location-put-test.html: Added.
4:16 PM Changeset in webkit [30156] by Darin Adler
  • 8 edits in trunk

WebCore:

Reviewed by Mitz.

  • fix <rdar://problem/5726016> REGRESSION: Xcode News window renders incorrectly due to visibility fix

Added an Xcode-specific quirk.

  • WebCore.base.exp: Added export for new Settings function.
  • css/CSSMutableStyleDeclaration.cpp: (WebCore::CSSMutableStyleDeclaration::setProperty): Here's the crazy quirk. If you try to change the visibilty on a node with the class name tab_content, instead it will use display:none.
  • page/Settings.cpp: (WebCore::Settings::Settings): Initialize m_needsXcodeVisibilityQuirk. Also initialize m_fontRenderingMode! This seems like it was a bug before, but we probably were getting lucky and always getting 0 on Windows, which is the only place the setting matters. (WebCore::Settings::setNeedsXcodeVisibilityQuirk): Added.
  • page/Settings.h: (WebCore::Settings::needsXcodeVisibilityQuirk): Added.

WebKit/mac:

Reviewed by Mitz.

  • fix <rdar://problem/5726016> REGRESSION: Xcode News window renders incorrectly due to visibility fix

Added an Xcode-specific quirk.

  • Misc/WebKitVersionChecks.h: Added a constant for the "linked on or after" part of the check.
  • WebView/WebView.mm: (-[WebView _needsXcodeVisibilityQuirk]): Added. (-[WebView _preferencesChangedNotification:]): Added a call to setNeedsXcodeVisibilityQuirk based on _needsXcodeVisibilityQuirk.
3:38 PM Changeset in webkit [30155] by alp@webkit.org
  • 2 edits in trunk/PlanetWebKit

2008-02-11 Pierre-Luc Beaudoin <pierre-luc.beaudoin@collabora.co.uk>

Reviewed by Alp Toker.

Add my blog's WebKit category, English only posts.

  • config.ini:
2:54 PM Changeset in webkit [30154] by timothy@apple.com
  • 2 edits in trunk/WebCore

Reviewed by Brady Eidson.

<rdar://problem/5733069> Many m_quotaMap uses do not hold the m_quotaMapGuard

  • storage/DatabaseTracker.cpp: (WebCore::DatabaseTracker::hasEntryForOrigin): Hold m_quotaMapGuard when using m_quotaMap. (WebCore::DatabaseTracker::origins): Ditto. (WebCore::DatabaseTracker::setQuota): Ditto. (WebCore::DatabaseTracker::deleteAllDatabases): Call origins() and itterate over the origins to call deleteOrigin(). (WebCore::DatabaseTracker::deleteOrigin): Hold m_quotaMapGuard when using m_quotaMap.
1:19 PM Changeset in webkit [30153] by hyatt@apple.com
  • 2 edits
    4 adds in trunk

Fix for bug 17286, crash accessing a null RenderStyle. Add a simple null check.

Reviewed by aroben

Added fast/css/empty-generated-content.html

  • css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::checkOneSelector):
1:04 PM Changeset in webkit [30152] by rwlbuis@webkit.org
  • 2 edits in trunk/WebCore

Reviewed by David Kilzer.

http://bugs.webkit.org/show_bug.cgi?id=17201
Bug 17201: Use RefPtr in CSSParser::parseFont() to get rid of goto silliness

Gets rid of goto usage in parseFont.

12:26 PM Changeset in webkit [30151] by hyatt@apple.com
  • 1 edit in trunk/WebCore/html/HTMLMediaElement.cpp

Back out accidental checkin to HTMLMediaElement.cpp.

12:22 PM Changeset in webkit [30150] by hyatt@apple.com
  • 3 adds in trunk/LayoutTests/platform/mac/fast/forms

Add layout test for bug 16798.

12:21 PM Changeset in webkit [30149] by hyatt@apple.com
  • 1 add in trunk/LayoutTests/fast/forms/button-submit.html

Add layout test for bug 16798.

12:18 PM Changeset in webkit [30148] by hyatt@apple.com
  • 2 adds in trunk/LayoutTests/http/tests/misc
12:17 PM Changeset in webkit [30147] by hyatt@apple.com
  • 15 edits in trunk/WebCore

Fix for bug 17298, Acid3 text should be black and not red. Make sure stylesheets with the wrong MIME type
are not accepted in strict mode.

Reviewed by darin

Added http/tests/misc/css-reject-in-strict-mode.html

  • css/CSSImportRule.cpp: (WebCore::CSSImportRule::setCSSStyleSheet):
  • css/CSSImportRule.h:
  • dom/Document.cpp: (WebCore::Document::setCSSStyleSheet):
  • dom/Document.h:
  • dom/ProcessingInstruction.cpp: (WebCore::ProcessingInstruction::setCSSStyleSheet):
  • dom/ProcessingInstruction.h:
  • html/HTMLLinkElement.cpp: (WebCore::HTMLLinkElement::setCSSStyleSheet):
  • html/HTMLLinkElement.h:
  • html/HTMLMediaElement.cpp: (WebCore::HTMLMediaElement::pickMedia):
  • loader/CachedCSSStyleSheet.cpp: (WebCore::CachedCSSStyleSheet::ref): (WebCore::CachedCSSStyleSheet::checkNotify): (WebCore::CachedCSSStyleSheet::canUseSheet):
  • loader/CachedCSSStyleSheet.h: (WebCore::CachedCSSStyleSheet::sheetText):
  • loader/CachedResourceClient.h: (WebCore::CachedResourceClient::setCSSStyleSheet):
  • loader/mac/UserStyleSheetLoader.cpp: (UserStyleSheetLoader::setCSSStyleSheet):
  • loader/mac/UserStyleSheetLoader.h:
11:58 AM Changeset in webkit [30146] by Adam Roben
  • 3 edits in trunk/WebCore

Fix Bug 14316: Inspector's Console truncates long strings

<http://bugs.webkit.org/show_bug.cgi?id=14316>
<rdar://5357695>

We no longer call Object.describe to format all the output of commands
enetered into the Console. The ConsolePanel object now has a set of
formatting functions that append a formatted representation of the
passed-in object to the passed-in container node.

Reviewed by Sam.

  • page/inspector/ConsolePanel.js: (WebInspector.ConsolePanel._onEnterPressed): Updated for rename of _outputToNode to _format. (WebInspector.ConsolePanel._format): Renamed from _outputToNode. Use Object.type to get the type of the object, then call the appropriate formatting function. (WebInspector.ConsolePanel._formatvalue): Added. (WebInspector.ConsolePanel._formatstring): Added. This function contains the actual fix for the bug, since it doesn't truncate the string no matter how long it is. (WebInspector.ConsolePanel._formatregexp): Added. (WebInspector.ConsolePanel._formatarray): Added. This is a bit more functional than Object.describe for arrays, since it recursively formats each item in the array. One advantage of this is that Nodes in arrays will be linkified instead of just turning into "[Object HTMLBodyElement]" or similar. (WebInspector.ConsolePanel._formatnode): Added. (WebInspector.ConsolePanel._formatobject): Added. (WebInspector.ConsolePanel.
  • page/inspector/utilities.js: (Object.type): Added. Code was pulled out of Object.describe and reorganized slightly. (Object.describe): Call Object.type. There should be no change in behavior of this function.
10:09 AM Changeset in webkit [30145] by alp@webkit.org
  • 2 edits in trunk/WebCore

2008-02-11 Alp Toker <alp@atoker.com>

Wx build fix for breakage introduced in r30142. Spotted by Darin.

  • platform/network/curl/ResourceHandleManager.cpp: (WebCore::parseDataUrl):
9:44 AM Changeset in webkit [30144] by Adam Roben
  • 2 edits in trunk/PlanetWebKit

Add Brent Fulgham's blog

Rubberstamped by Alp.

  • config.ini:
9:38 AM Changeset in webkit [30143] by Darin Adler
  • 3 edits in trunk/WebCore

Reviewed and tweaked by Darin

  • platform/graphics/cairo/ImageSourceCairo.cpp: (WebCore::createDecoder): Turn off XBMImageDecoder for PLATFORM(WIN) configuration.
  • rendering/RenderThemeWin.cpp: (WebCore::prepareForDrawing): Added IntRect parameter. (WebCore::doneDrawing): Ditto. (WebCore::RenderThemeWin::paintButton): Ditto. (WebCore::RenderThemeWin::paintTextField): Ditto. (WebCore::RenderThemeWin::paintMenuListButton): Ditto. (WebCore::RenderThemeWin::systemFont): Added.
8:56 AM Changeset in webkit [30142] by alp@webkit.org
  • 2 edits in trunk/WebCore

2008-02-11 Alp Toker <alp@atoker.com>

Reviewed by Alexey.

Acid3 data URL parsing fix for the GTK+ port.

Avoid WebCore's base64Decode() when possible since it's not a
general-purpose Base64 decoder and fails on newlines.

  • platform/network/curl/ResourceHandleManager.cpp: (WebCore::parseDataUrl):
7:33 AM Changeset in webkit [30141] by Darin Adler
  • 2 edits in trunk/WebCore
  • another Qt build fix
  • platform/qt/PopupMenuQt.cpp: (WebCore::PopupMenu::PopupMenu): Added explicit RefCounted constructor.
6:37 AM Nightly Builds edited by ryanfelder@yahoo.com
(diff)
5:21 AM QtWebKitTodo edited by zecke2@selfish.org
Printing was implemented by simon (diff)
5:20 AM QtWebKitTodo edited by zecke2@selfish.org
works here (tm), also popping the window properly up is working (diff)
5:19 AM QtWebKitTodo edited by zecke2@selfish.org
Ben fixed that a while ago (diff)
5:18 AM QtWebKitTodo edited by zecke2@selfish.org
We have something that can be used by Assistant, we want something … (diff)
5:17 AM QtWebKitTodo edited by zecke2@selfish.org
We have the first bits of support for InputMethods (diff)
5:16 AM QtWebKitTodo edited by zecke2@selfish.org
We have this paint signal now (diff)

Feb 10, 2008:

11:40 PM Changeset in webkit [30140] by Darin Adler
  • 2 edits in trunk/JavaScriptCore

Rubber stamped by Eric.

  • kjs/ExecState.h: (KJS::ExecState::takeException): Added.
11:38 PM Changeset in webkit [30139] by Darin Adler
  • 2 edits in trunk/WebCore
  • another Qt build fix (wish the Qt bot wouldn't stop on the first error)
  • platform/qt/FileChooserQt.cpp: (WebCore::FileChooser::FileChooser): Added explicit RefCounted constructor.
11:03 PM Changeset in webkit [30138] by Darin Adler
  • 2 edits in trunk/WebCore
  • another Qt fix
  • platform/graphics/qt/IconQt.cpp: (WebCore::Icon::Icon): Added explicit RefCounted constructor.
10:09 PM Changeset in webkit [30137] by alp@webkit.org
  • 2 edits in trunk/WebCore

2008-02-10 Alp Toker <alp@atoker.com>

Another Win build fix for r30133 breakage.

  • plugins/win/PluginPackageWin.cpp: (WebCore::PluginPackage::PluginPackage):
9:50 PM Changeset in webkit [30136] by alp@webkit.org
  • 5 edits in trunk/WebCore

2008-02-10 Alp Toker <alp@atoker.com>

Build fix GTK+ and prospective build fix for Win breakage introduced
in r30133.

  • platform/Cursor.h: (WebCore::SharedCursor::SharedCursor):
  • platform/graphics/gtk/IconGtk.cpp: (WebCore::Icon::Icon):
  • platform/gtk/FileChooserGtk.cpp: (WebCore::FileChooser::FileChooser):
  • platform/gtk/PopupMenuGtk.cpp: (WebCore::PopupMenu::PopupMenu):
8:17 PM Changeset in webkit [30135] by Darin Adler
  • 7 edits in trunk/WebCore
  • try to fix Win, Qt, GTK, and WX builds
  • platform/Cursor.h: (WebCore::SharedCursor::SharedCursor): Added explicit RefCounted constructor.
  • platform/graphics/win/IconWin.cpp: (WebCore::Icon::Icon): Ditto.
  • platform/win/FileChooserWin.cpp: (WebCore::FileChooser::FileChooser): Ditto.
  • platform/win/PopupMenuWin.cpp: (WebCore::PopupMenu::PopupMenu): Ditto.
  • platform/wx/TemporaryLinkStubs.cpp: (FileChooser::FileChooser): Ditto. (PopupMenu::PopupMenu): Ditto. (Icon::Icon): Ditto.
  • plugins/PluginStream.cpp: (WebCore::PluginStream::PluginStream): Ditto.
7:41 PM Changeset in webkit [30134] by mitz@apple.com
  • 5 edits in trunk/LayoutTests

Reviewed by Sam Weinig and Anders Carlsson.

  • change a test to simply use 'font-family' instead of unnecessary @font-face hackery
  • fast/text/atsui-spacing-features.html:
  • platform/mac/fast/text/atsui-spacing-features-expected.checksum:
  • platform/mac/fast/text/atsui-spacing-features-expected.png:
  • platform/mac/fast/text/atsui-spacing-features-expected.txt:
6:03 PM Changeset in webkit [30133] by Darin Adler
  • 4 edits in trunk

JavaScriptCore:

Reviewed by Eric.

  • wtf/RefCounted.h: (WTF::RefCounted::RefCounted): Remove default of 0.

WebKit/wx:

Reviewed by Eric.

  • WebKitSupport/FrameLoaderClientWx.cpp: (WebCore::FrameLoaderClientWx::FrameLoaderClientWx): Set the count to 0 explicitly (one stray client I missed in my last pass).
4:45 PM BuildingCairoOnWindows edited by bfulgham@macports.org
(diff)
4:37 PM BuildingCairoOnWindows created by bfulgham@macports.org
3:17 PM Changeset in webkit [30132] by mitz@apple.com
  • 2 edits in trunk/WebKitTools

Reviewed by Oliver Hunt.

  • fix a memory leak
  • DumpRenderTree/cg/ImageDiffCG.cpp: (getDifferenceBitmap): Use a static CFMutableData instead of allocating and leaking the buffer each time.
3:08 PM Changeset in webkit [30131] by hyatt@apple.com
  • 1 edit in trunk/LayoutTests/webarchive/archive-empty-frame-dom-expected.txt

Update test results for iframe fix.

2:43 PM WikiStart edited by bfulgham@macports.org
(diff)
2:33 PM Changeset in webkit [30130] by hyatt@apple.com
  • 3 edits in trunk/WebCore

Fix for bug 17082, cssRules should be live.

Reviewed by olliej

Added fast/css/live-cssrules.html

  • css/CSSRuleList.cpp: (WebCore::CSSRuleList::CSSRuleList): (WebCore::CSSRuleList::length): (WebCore::CSSRuleList::item): (WebCore::CSSRuleList::deleteRule): (WebCore::CSSRuleList::insertRule):
  • css/CSSRuleList.h:
2:31 PM Changeset in webkit [30129] by hyatt@apple.com
  • 3 adds in trunk/LayoutTests/platform/mac/fast/css

Add layout test for bug 17082.

2:31 PM Changeset in webkit [30128] by hyatt@apple.com
  • 1 add in trunk/LayoutTests/fast/css/live-cssrules.html

Add layout test for bug 17082.

2:30 PM Changeset in webkit [30127] by hyatt@apple.com
  • 4 edits in trunk/WebCore

Fix for bug 17253. <iframe> contents need to be reflected into the DOM as a single text node.

Reviewed by olliej

fast/frames/iframe-text-contents.html

  • html/HTMLParser.cpp: (WebCore::HTMLParser::getNode):
  • html/HTMLTokenizer.cpp: (WebCore::HTMLTokenizer::parseSpecial): (WebCore::HTMLTokenizer::parseComment): (WebCore::HTMLTokenizer::parseTag):
  • html/HTMLTokenizer.h: (WebCore::HTMLTokenizer::State::inIFrame): (WebCore::HTMLTokenizer::State::setInIFrame): (WebCore::HTMLTokenizer::State::inAnySpecial): (WebCore::HTMLTokenizer::State::needsSpecialWriteHandling): (WebCore::HTMLTokenizer::State::):
2:29 PM Changeset in webkit [30126] by hyatt@apple.com
  • 3 adds in trunk/LayoutTests/platform/mac/fast/frames

Add layout tests for 17253.

2:29 PM Changeset in webkit [30125] by hyatt@apple.com
  • 1 add in trunk/LayoutTests/fast/frames/iframe-text-contents.html

Add layout tests for 17253.

1:28 PM Changeset in webkit [30124] by Darin Adler
  • 4 edits
    1 copy in trunk/LayoutTests
  • fix a couple of directories that were using our JavaScript template/wrapper system incorrectly
  • fast/dom/SelectorAPI/resources/TEMPLATE.html: Fixed relative paths.
  • fast/events/event-instanceof.html: Regenerating this file revealed that the path to the stylesheet was wrong. Fixed by running the make-js-test-wrappers script. Didn't affect the text-only results, but the test looked wrong in the browser.
  • fast/events/resources/TEMPLATE.html: Copied from fast/js/resources/TEMPLATE.html.
  • traversal/resources/TEMPLATE.html: Fixed relative paths.
12:13 PM Changeset in webkit [30123] by Darin Adler
  • 6 edits in trunk

WebCore:

Reviewed and tweaked by Darin.


DOMRange.surroundContents throws wrong exception (Acid3 bug)
http://bugs.webkit.org/show_bug.cgi?id=16749


Throw BAD_BOUNDARYPOINTS_ERR if attempting to split a non-text node that
has offsets in characters.

  • dom/Range.cpp: (WebCore::Range::surroundContents):

LayoutTests:

Reviewed and tweaked a bit by Darin.


DOMRange.surroundContents throws wrong exception (Acid3 bug)
http://bugs.webkit.org/show_bug.cgi?id=16749


Throw BAD_BOUNDARYPOINTS_ERR if attempting to split a non-text node that
has offsets in characters

  • fast/dom/Range/range-exceptions-expected.txt: Added.
  • fast/dom/Range/resources/range-exceptions.js: Added.
11:27 AM Changeset in webkit [30122] by Darin Adler
  • 102 edits in trunk

JavaScriptCore:

Reviewed by Eric.

  • API/JSClassRef.cpp: (OpaqueJSClass::OpaqueJSClass):
  • bindings/runtime_root.cpp: (KJS::Bindings::RootObject::RootObject):

WebCore:

Reviewed by Eric.

  • bindings/js/JSSVGPODTypeWrapper.h: (WebCore::JSSVGPODTypeWrapper::JSSVGPODTypeWrapper):
  • css/CSSFontFace.h: (WebCore::CSSFontFace::CSSFontFace):
  • css/CSSRuleList.cpp: (WebCore::CSSRuleList::CSSRuleList):
  • css/CSSSegmentedFontFace.cpp: (WebCore::CSSSegmentedFontFace::CSSSegmentedFontFace):
  • css/Counter.h: (WebCore::Counter::Counter):
  • css/Pair.h: (WebCore::Pair::Pair):
  • css/Rect.h: (WebCore::Rect::Rect):
  • css/StyleBase.h: (WebCore::StyleBase::StyleBase):
  • css/StyleSheetList.cpp: (WebCore::StyleSheetList::StyleSheetList):
  • dom/Attr.cpp: (WebCore::Attr::Attr):
  • dom/Attr.h:
  • dom/Attribute.h: (WebCore::Attribute::Attribute):
  • dom/Clipboard.cpp: (WebCore::Clipboard::Clipboard):
  • dom/DOMImplementation.h: (WebCore::DOMImplementation::DOMImplementation):
  • dom/Event.cpp: (WebCore::Event::Event):
  • dom/EventListener.h: (WebCore::EventListener::EventListener):
  • dom/ExceptionBase.cpp: (WebCore::ExceptionBase::ExceptionBase):
  • dom/NamedAttrMap.h: (WebCore::NamedAttrMap::insertAttribute):
  • dom/NamedNodeMap.h: (WebCore::NamedNodeMap::NamedNodeMap):
  • dom/NodeFilter.h: (WebCore::NodeFilter::NodeFilter):
  • dom/NodeFilterCondition.h: (WebCore::NodeFilterCondition::NodeFilterCondition):
  • dom/NodeList.h: (WebCore::NodeList::NodeList):
  • dom/QualifiedName.h: (WebCore::QualifiedName::QualifiedNameImpl::QualifiedNameImpl): (WebCore::QualifiedName::ref):
  • dom/Range.cpp: (WebCore::Range::Range):
  • dom/RegisteredEventListener.cpp: (WebCore::RegisteredEventListener::RegisteredEventListener):
  • dom/StyledElement.h:
  • dom/Traversal.cpp: (WebCore::Traversal::Traversal):
  • editing/EditCommand.cpp: (WebCore::EditCommand::EditCommand):
  • history/BackForwardList.cpp: (WebCore::BackForwardList::BackForwardList):
  • history/CachedPage.cpp: (WebCore::CachedPage::CachedPage):
  • history/HistoryItem.cpp: (WebCore::HistoryItem::HistoryItem):
  • html/CanvasGradient.cpp: (WebCore::CanvasGradient::CanvasGradient):
  • html/CanvasPattern.cpp: (WebCore::CanvasPattern::CanvasPattern):
  • html/CanvasRenderingContext2D.cpp: (WebCore::CanvasRenderingContext2D::CanvasRenderingContext2D):
  • html/CanvasStyle.cpp: (WebCore::CanvasStyle::CanvasStyle):
  • html/HTMLCollection.cpp: (WebCore::HTMLCollection::HTMLCollection):
  • html/MediaError.h: (WebCore::MediaError::MediaError):
  • html/TimeRanges.cpp: (TimeRanges::TimeRanges):
  • html/TimeRanges.h: (WebCore::TimeRanges::TimeRanges):
  • html/VoidCallback.h: (WebCore::VoidCallback::VoidCallback):
  • loader/DocumentLoader.cpp: (WebCore::DocumentLoader::DocumentLoader):
  • loader/FormState.cpp: (WebCore::FormState::FormState):
  • loader/ResourceLoader.cpp: (WebCore::ResourceLoader::ResourceLoader):
  • loader/TextResourceDecoder.cpp: (WebCore::TextResourceDecoder::TextResourceDecoder):
  • loader/icon/IconRecord.cpp: (WebCore::IconRecord::IconRecord):
  • page/BarInfo.cpp: (WebCore::BarInfo::BarInfo):
  • page/Console.cpp: (WebCore::Console::Console):
  • page/DOMSelection.cpp: (WebCore::DOMSelection::DOMSelection):
  • page/DOMWindow.cpp: (WebCore::DOMWindow::DOMWindow):
  • page/Frame.cpp: (WebCore::Frame::Frame):
  • page/History.cpp: (WebCore::History::History):
  • page/InspectorController.cpp: (WebCore::InspectorResource::InspectorResource): (WebCore::InspectorDatabaseResource::InspectorDatabaseResource):
  • page/Plugin.h: (WebCore::Plugin::Plugin):
  • page/Screen.cpp: (WebCore::Screen::Screen):
  • platform/ArrayImpl.cpp: (WebCore::ArrayImpl::ArrayPrivate::ArrayPrivate):
  • platform/DeprecatedValueListImpl.cpp: (WebCore::DeprecatedValueListImpl::Private::Private):
  • platform/ScrollBar.cpp: (WebCore::Scrollbar::Scrollbar):
  • platform/SharedBuffer.cpp: (WebCore::SharedBuffer::SharedBuffer):
  • platform/graphics/FontFallbackList.cpp: (WebCore::FontFallbackList::FontFallbackList):
  • platform/graphics/FontFamily.cpp: (WebCore::FontFamily::FontFamily):
  • platform/graphics/FontFamily.h: (WebCore::FontFamily::FontFamily):
  • platform/graphics/FontSelector.h: (WebCore::FontSelector::FontSelector): (WebCore::FontSelector::~FontSelector):
  • platform/graphics/GlyphPageTreeNode.h: (WebCore::GlyphPage::GlyphPage):
  • platform/graphics/mac/IconMac.mm: (WebCore::Icon::Icon):
  • platform/mac/FileChooserMac.mm: (WebCore::FileChooser::FileChooser):
  • platform/mac/PopupMenuMac.mm: (WebCore::PopupMenu::PopupMenu):
  • platform/mac/SharedBufferMac.mm: (WebCore::SharedBuffer::SharedBuffer):
  • platform/network/FormData.cpp: (WebCore::FormData::FormData):
  • platform/network/FormData.h: (WebCore::FormData::FormData):
  • platform/network/ResourceHandle.cpp: (WebCore::ResourceHandle::ResourceHandle):
  • platform/text/CString.h: (WebCore::CStringBuffer::CStringBuffer):
  • platform/text/RegularExpression.cpp: (WebCore::RegularExpression::Private::Private):
  • rendering/RenderStyle.cpp: (WebCore::StyleSurroundData::StyleSurroundData): (WebCore::StyleBoxData::StyleBoxData): (WebCore::StyleVisualData::StyleVisualData): (WebCore::StyleBackgroundData::StyleBackgroundData): (WebCore::StyleMarqueeData::StyleMarqueeData): (WebCore::StyleFlexibleBoxData::StyleFlexibleBoxData): (WebCore::StyleMultiColData::StyleMultiColData): (WebCore::StyleTransformData::StyleTransformData): (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData): (WebCore::StyleRareInheritedData::StyleRareInheritedData): (WebCore::StyleInheritedData::StyleInheritedData):
  • rendering/RenderStyle.h: (WebCore::TransformOperation::TransformOperation): (WebCore::CursorList::CursorList):
  • rendering/SVGCharacterLayoutInfo.h: (WebCore::SVGCharOnPath::SVGCharOnPath):
  • rendering/SVGRenderStyle.cpp: (WebCore::SVGRenderStyle::SVGRenderStyle):
  • rendering/SVGRenderStyle.h: (WebCore::SVGRenderStyle::SVGRenderStyle):
  • rendering/SVGRenderStyleDefs.cpp: (StyleFillData::StyleFillData): (StyleStrokeData::StyleStrokeData): (StyleStopData::StyleStopData): (StyleTextData::StyleTextData): (StyleClipData::StyleClipData): (StyleMaskData::StyleMaskData): (StyleMarkerData::StyleMarkerData): (StyleMiscData::StyleMiscData):
  • storage/SQLResultSetRowList.h: (WebCore::SQLResultSetRowList::SQLResultSetRowList):
  • svg/SVGAngle.cpp: (WebCore::SVGAngle::SVGAngle):
  • svg/SVGAnimatedTemplate.h: (WebCore::SVGAnimatedTemplate::SVGAnimatedTemplate):
  • svg/SVGElementInstanceList.cpp: (WebCore::SVGElementInstanceList::SVGElementInstanceList):
  • svg/SVGList.h: (WebCore::SVGList::SVGList): (WebCore::SVGPODListItem::SVGPODListItem):
  • svg/SVGPathSeg.h: (WebCore::SVGPathSeg::SVGPathSeg):
  • svg/SVGPreserveAspectRatio.cpp: (WebCore::SVGPreserveAspectRatio::SVGPreserveAspectRatio):
  • svg/SVGRenderingIntent.h: (WebCore::SVGRenderingIntent::SVGRenderingIntent):
  • svg/SVGUnitTypes.h: (WebCore::SVGUnitTypes::SVGUnitTypes):
  • svg/graphics/SVGPaintServerGradient.h: (WebCore::SVGPaintServerGradient::SharedStopCache::SharedStopCache):
  • svg/graphics/SVGResource.cpp: (WebCore::SVGResource::SVGResource):
  • xml/DOMParser.h: (WebCore::DOMParser::DOMParser):
  • xml/XMLHttpRequest.cpp: (WebCore::XMLHttpRequest::XMLHttpRequest):
  • xml/XMLSerializer.h: (WebCore::XMLSerializer::XMLSerializer):
  • xml/XPathEvaluator.h: (WebCore::XPathEvaluator::XPathEvaluator):
  • xml/XPathExpression.h: (WebCore::XPathExpression::XPathExpression):
  • xml/XPathNSResolver.h: (WebCore::XPathNSResolver::XPathNSResolver):
  • xml/XPathResult.cpp: (WebCore::XPathResult::XPathResult):
  • xml/XPathValue.h: (WebCore::XPath::ValueData::ValueData):
  • xml/XSLTProcessor.h: (WebCore::XSLTProcessor::XSLTProcessor):
11:02 AM Changeset in webkit [30121] by kevino@webkit.org
  • 2 edits in trunk/WebCore

Don't call select() for CURL when there are no valid file descriptors.
http://bugs.webkit.org/show_bug.cgi?id=17178

10:57 AM Changeset in webkit [30120] by Darin Adler
  • 2 edits in trunk/WebKit/mac
  • WebView/WebView.mm: (-[WebView _userAgentWithApplicationName:andWebKitVersion:]): Fix wrong variable name. Doh!

Feb 9, 2008:

11:00 PM Changeset in webkit [30119] by Darin Adler
  • 2 edits in trunk/WebKit/mac

Reviewed by Tim Hatcher.

  • fix <rdar://problem/5725996> crash every time you open the Xcode documentation window
  • WebView/WebView.mm: (-[WebView _userAgentWithApplicationName:andWebKitVersion:]): Work around a bug in the garbage collector's Objective C++ support by not initializing a static to an object that needs to be marked when running under GC.
10:40 PM S60Webkit edited by kennykaiyinyu@gmail.com
(diff)
10:08 PM S60Webkit edited by kennykaiyinyu@gmail.com
(diff)
10:05 PM S60Webkit edited by kennykaiyinyu@gmail.com
(diff)
9:56 PM S60ConfigureComputer edited by kennykaiyinyu@gmail.com
(diff)
9:49 PM S60ConfigureComputer edited by kennykaiyinyu@gmail.com
(diff)
9:48 PM S60ConfigureComputer edited by kennykaiyinyu@gmail.com
(diff)
9:48 PM S60ConfigureComputer edited by kennykaiyinyu@gmail.com
(diff)
9:43 PM S60IDE edited by kennykaiyinyu@gmail.com
(diff)
8:52 PM Changeset in webkit [30118] by alp@webkit.org
  • 2 edits in trunk/PlanetWebKit

2008-02-09 Alp Toker <alp@atoker.com>

Only syndicate Jan's WebKit posts, not his entire blog.

  • config.ini:
4:16 PM Changeset in webkit [30117] by mitz@apple.com
  • 2 edits in trunk/WebCore

Reviewed by Sam Weinig.

  • dom/Element.cpp: (WebCore::Element::recalcStyle): Removed unneeded null checks. styleForElement() can never return null.
3:47 PM Changeset in webkit [30116] by hyatt@apple.com
  • 3 edits
    4 adds in trunk

WebCore:

Fix for bug 17254, nth-* selectors do not work with negative coefficients.

Reviewed by Mitz.

fast/css/negative-nth-child.html

  • css/CSSStyleSelector.cpp: (WebCore::parseNth):

LayoutTests:

Added test for bug 17254.

Reviewed by Mitz.

  • fast/css/negative-nth-child.html: Added.
2:56 PM Changeset in webkit [30115] by hyatt@apple.com
  • 1 edit in trunk/WebCore/css/CSSStyleSelector.cpp

The comedy continues. Bungled the rename from Eric's review when doing the backout of CSSStyleSelector's accidental fix for 17254.

2:54 PM Changeset in webkit [30114] by hyatt@apple.com
  • 4 edits in trunk/WebCore/rendering

Followup to 17203. Missed a directory.

2:51 PM Changeset in webkit [30113] by hyatt@apple.com
  • 1 edit in trunk/WebCore/css/CSSStyleSelector.cpp

Back out accidental change to CSSStyleSelector.cpp.

2:49 PM Changeset in webkit [30112] by hyatt@apple.com
  • 70 edits in trunk/WebCore

Fix for bug 17203, high CPU usage loading HTML5 spec. This patch significantly improves the performance
of CSS3 selectors.

(1) Split the notion of being affected by positional rules into "forward" and "backward." The "forward"
selectors do not need to re-resolve during parsing, since children are appended on the end. Only the
"backward" selectors like last-child or nth-last-child have to re-resolve when a close tag is encountered.

(2) Extend childrenChanged to specify whether the children were changed by the parser or not. This allows
Element::childrenChanged to know when the parser is adding children so that it can ignore those adds when
possible.

(3) Make sure all Elements now know whether or not their children are currently parsing. Backwards selectors
like last-child will always return false when children are still being parsed. When an Element finishes
parsing its children, finishParsingChildren() gets called and will make sure the children re-resolve properly.

(4) Added a beginParsingChildren method and renamed finishParsing to finishedParsingChildren.

(5) Eliminated one-off hacks that did the same thing in HTMLObjectElement and HTMLAppletElement.

(6) Patched many incorrect implementations of finishedParsingChildren that did not properly call into their
base class (mostly new SVG elements that got added for SVG fonts around the time this became a requirement).

Reviewed by Eric

  • css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::checkSelector): (WebCore::CSSStyleSelector::checkOneSelector):
  • dom/Attr.cpp: (WebCore::Attr::childrenChanged):
  • dom/Attr.h:
  • dom/ContainerNode.cpp: (WebCore::ContainerNode::addChild):
  • dom/Document.cpp: (WebCore::Document::childrenChanged):
  • dom/Document.h:
  • dom/Element.cpp: (WebCore::Element::Element): (WebCore::Element::recalcStyle): (WebCore::checkFirstChildRules): (WebCore::checkLastChildRules): (WebCore::checkEmptyRules): (WebCore::checkStyleRules): (WebCore::Element::childrenChanged): (WebCore::Element::finishParsingChildren):
  • dom/Element.h: (WebCore::Element::finishedParsingChildren): (WebCore::Element::beginParsingChildren):
  • dom/Node.cpp:
  • dom/Node.h: (WebCore::Node::finishParsingChildren): (WebCore::Node::beginParsingChildren): (WebCore::Node::childrenChanged):
  • dom/StyledElement.cpp: (WebCore::StyledElement::StyledElement):
  • dom/StyledElement.h:
  • dom/XMLTokenizer.cpp: (WebCore::XMLTokenizer::startElementNs): (WebCore::XMLTokenizer::endElementNs): (WebCore::):
  • html/HTMLAppletElement.cpp: (WebCore::HTMLAppletElement::HTMLAppletElement): (WebCore::HTMLAppletElement::finishParsingChildren):
  • html/HTMLAppletElement.h:
  • html/HTMLElementFactory.cpp: (WebCore::objectConstructor):
  • html/HTMLGenericFormElement.cpp: (WebCore::HTMLFormControlElementWithState::finishParsingChildren):
  • html/HTMLGenericFormElement.h:
  • html/HTMLObjectElement.cpp: (WebCore::HTMLObjectElement::HTMLObjectElement): (WebCore::HTMLObjectElement::finishParsingChildren): (WebCore::HTMLObjectElement::childrenChanged):
  • html/HTMLObjectElement.h:
  • html/HTMLOptGroupElement.cpp: (WebCore::HTMLOptGroupElement::childrenChanged):
  • html/HTMLOptGroupElement.h:
  • html/HTMLOptionElement.cpp: (WebCore::HTMLOptionElement::childrenChanged):
  • html/HTMLOptionElement.h:
  • html/HTMLParser.cpp: (WebCore::HTMLParser::insertNode): (WebCore::HTMLParser::pushBlock): (WebCore::HTMLParser::popOneBlockCommon):
  • html/HTMLScriptElement.cpp: (WebCore::HTMLScriptElement::childrenChanged): (WebCore::HTMLScriptElement::finishParsingChildren):
  • html/HTMLScriptElement.h:
  • html/HTMLSelectElement.cpp: (WebCore::HTMLSelectElement::childrenChanged):
  • html/HTMLSelectElement.h:
  • html/HTMLStyleElement.cpp: (WebCore::HTMLStyleElement::finishParsingChildren): (WebCore::HTMLStyleElement::childrenChanged):
  • html/HTMLStyleElement.h:
  • html/HTMLTextAreaElement.cpp: (WebCore::HTMLTextAreaElement::childrenChanged):
  • html/HTMLTextAreaElement.h:
  • html/HTMLTitleElement.cpp: (WebCore::HTMLTitleElement::childrenChanged):
  • html/HTMLTitleElement.h:
    • rendering/RenderApplet.cpp:

(WebCore::RenderApplet::createWidgetIfNecessary):

  • rendering/RenderPartObject.cpp: (WebCore::RenderPartObject::updateWidget):
  • rendering/RenderStyle.cpp: (WebCore::RenderStyle::RenderStyle):
  • rendering/RenderStyle.h: (WebCore::RenderStyle::childrenAffectedByForwardPositionalRules): (WebCore::RenderStyle::setChildrenAffectedByForwardPositionalRules): (WebCore::RenderStyle::childrenAffectedByBackwardPositionalRules): (WebCore::RenderStyle::setChildrenAffectedByBackwardPositionalRules):
  • svg/SVGAnimationElement.cpp: (WebCore::SVGAnimationElement::finishParsingChildren):
  • svg/SVGAnimationElement.h:
  • svg/SVGClipPathElement.cpp: (WebCore::SVGClipPathElement::childrenChanged):
  • svg/SVGClipPathElement.h:
  • svg/SVGDefinitionSrcElement.cpp: (WebCore::SVGDefinitionSrcElement::childrenChanged):
  • svg/SVGDefinitionSrcElement.h:
  • svg/SVGElement.cpp: (WebCore::SVGElement::finishParsingChildren):
  • svg/SVGElement.h:
  • svg/SVGFontFaceElement.cpp: (WebCore::SVGFontFaceElement::childrenChanged):
  • svg/SVGFontFaceElement.h:
  • svg/SVGFontFaceFormatElement.cpp: (WebCore::SVGFontFaceFormatElement::childrenChanged):
  • svg/SVGFontFaceFormatElement.h:
  • svg/SVGFontFaceSrcElement.cpp: (WebCore::SVGFontFaceSrcElement::childrenChanged):
  • svg/SVGFontFaceSrcElement.h:
  • svg/SVGFontFaceUriElement.cpp: (WebCore::SVGFontFaceUriElement::childrenChanged):
  • svg/SVGFontFaceUriElement.h:
  • svg/SVGGElement.cpp: (WebCore::SVGGElement::childrenChanged):
  • svg/SVGGElement.h:
  • svg/SVGGradientElement.cpp: (WebCore::SVGGradientElement::childrenChanged):
  • svg/SVGGradientElement.h:
  • svg/SVGMarkerElement.cpp: (WebCore::SVGMarkerElement::childrenChanged):
  • svg/SVGMarkerElement.h:
  • svg/SVGMaskElement.cpp: (WebCore::SVGMaskElement::childrenChanged):
  • svg/SVGMaskElement.h:
  • svg/SVGPatternElement.cpp: (WebCore::SVGPatternElement::childrenChanged):
  • svg/SVGPatternElement.h:
  • svg/SVGStyleElement.cpp: (WebCore::SVGStyleElement::finishParsingChildren): (WebCore::SVGStyleElement::childrenChanged):
  • svg/SVGStyleElement.h:
  • svg/SVGStyledElement.cpp: (WebCore::SVGStyledElement::childrenChanged):
  • svg/SVGStyledElement.h:
  • svg/SVGTitleElement.cpp: (WebCore::SVGTitleElement::childrenChanged):
  • svg/SVGTitleElement.h:
  • svg/SVGUseElement.cpp: (WebCore::SVGUseElement::childrenChanged):
  • svg/SVGUseElement.h:
2:38 PM Changeset in webkit [30111] by zecke@webkit.org
  • 2 edits in trunk/WebCore

2008-02-09 Holger Hans Peter Freyther <holger.freyther@trolltech.com>

Unreviewed build fix

Somehow the removal of adjustSliderThumbSize(RenderObject*) sneaked
into the patch.

  • platform/qt/RenderThemeQt.h:
2:16 PM Changeset in webkit [30110] by zecke@webkit.org
  • 5 edits in trunk/WebCore

2008-02-09 Holger Hans Peter Freyther <holger.freyther@trolltech.com>

Reviewed by Adele.

paintResizeControl is dead, remove the code. This painting
is done by the RenderLayer.

  • platform/qt/RenderThemeQt.cpp:
  • platform/qt/RenderThemeQt.h:
  • rendering/RenderThemeMac.h:
  • rendering/RenderThemeMac.mm:
10:09 AM Changeset in webkit [30109] by Darin Adler
  • 6 edits in trunk/JavaScriptCore

Reviewed by Mitz.

We'll want to do this to every RefCounted class, one at a time.

  • kjs/nodes.h: (KJS::RegExpNode::RegExpNode): Use RegExp::create instead of new RegExp.
  • kjs/regexp.cpp: (KJS::RegExp::RegExp): Marked inline, set initial ref count to 1. (KJS::RegExp::create): Added. Calls new RegExp then adopts the initial ref.
  • kjs/regexp.h: Reformatted. Made the constructors private. Added static create functions that return objects already wrapped in PassRefPtr.
  • kjs/regexp_object.cpp: (KJS::regExpProtoFuncCompile): Use RegExp::create instead of new RegExp. (KJS::RegExpObjectImp::construct): Ditto.
  • kjs/string_object.cpp: (KJS::stringProtoFuncMatch): Ditto. (KJS::stringProtoFuncSearch): Ditto.
2:45 AM ApplicationsGtk edited by alp@atoker.com
Add the Vala language binding (diff)
12:13 AM Changeset in webkit [30108] by kevino@webkit.org
  • 3 edits in trunk/WebCore

MSVC7 fixes.
http://bugs.webkit.org/show_bug.cgi?id=17211

Feb 8, 2008:

10:47 PM Changeset in webkit [30107] by mrowe@apple.com
  • 3 edits in trunk/WebCore

2008-02-08 Brent Fulgham <bfulgham@gmail.com>

Reviewed by Adam Roben.

Bug 17226: Fix Windows (Cairo) build of image-decoders
http://bugs.webkit.org/show_bug.cgi?id=17226

  • platform/image-decoders/gif/GIFImageDecoder.cpp:
  • platform/image-decoders/png/PNGImageDecoder.cpp:
9:44 PM Changeset in webkit [30106] by alp@webkit.org
  • 2 edits in trunk

2008-02-08 Alp Toker <alp@atoker.com>

Rubber-stamped by Maciej.

Bump autoconf CAIRO_REQUIRED_VERSION up to 1.4.

  • configure.ac:
9:17 PM Changeset in webkit [30105] by oliver@apple.com
  • 6 edits in trunk

<rdar://problem/5731773> REGRESSION (r28973): Extraneous parentheses in function.toString()
https://bugs.webkit.org/show_bug.cgi?id=17214

Reviewed by Maciej

Make a subclass of CommaNode to provide the correct precedence for each expression in
a variable declaration list.

8:15 PM Changeset in webkit [30104] by timothy@apple.com
  • 8 edits in trunk/WebCore

Reviewed by Brady Eidson.

<rdar://problem/5640896> Removing database then trying
to recreate it causes trouble

Added open Database support to DatabaseTracker. So any Database that
is deleted will be marked as deleted and will fail to open any transaction
or execute any new SQL queries.

  • storage/Database.cpp: (WebCore::Database::Database): Call DatabaseTracker::addOpenDatabase. (WebCore::Database::~Database): Call DatabaseTracker::removeOpenDatabase. (WebCore::Database::markAsDeleted): Set the m_deleted flag. (WebCore::Database::version): Return a null String if m_deleted is true.
  • storage/Database.h: (WebCore::Database::deleted): Return m_deleted.
  • storage/DatabaseTracker.cpp: (WebCore::DatabaseTracker::addOpenDatabase): Add the Database to a map of origins and names. (WebCore::DatabaseTracker::removeOpenDatabase): Remove the Database from the map. (WebCore::DatabaseTracker::deleteDatabaseFile): Call markAsDeleted on all the open Databases matching the origin/name.
  • storage/DatabaseTracker.h:
  • storage/SQLStatement.cpp: (WebCore::SQLStatement::setDatabaseDeletedError): Set the error about the user deleting the database.
  • storage/SQLStatement.h:
  • storage/SQLTransaction.cpp: (WebCore::SQLTransaction::executeSQL): If the Database is deleted, call setDatabaseDeletedError. (WebCore::SQLTransaction::openTransactionAndPreflight): Set the error about the user deleting the database if the Database was marked as deleted.
5:13 PM Changeset in webkit [30103] by Darin Adler
  • 3 edits
    2 adds in trunk

JavaScriptCore:

Reviewed by Oliver.

Test: fast/js/continue-break-multiple-labels.html

  • kjs/nodes.h: (KJS::StatementNode::pushLabel): Made this virtual. (KJS::LabelNode::pushLabel): Forward pushLabel calls to the statement inside.

LayoutTests:

  • fast/js/continue-break-multiple-labels-expected.txt: Added.
  • fast/js/continue-break-multiple-labels.html: Added.
5:06 PM Changeset in webkit [30102] by Darin Adler
  • 7 edits
    3 adds in trunk

JavaScriptCore:

Reviewed by Eric.

Test: fast/js/constructor-attributes.html

  • kjs/JSGlobalObject.cpp: (KJS::JSGlobalObject::reset): Remove unwanted attributes from "constructor".
  • kjs/function_object.cpp: (KJS::FunctionObjectImp::construct): Ditto.
  • kjs/nodes.cpp: (KJS::FuncDeclNode::makeFunction): Ditto. (KJS::FuncExprNode::evaluate): Ditto.

WebCore:

Reviewed by Eric.

Test: fast/js/constructor-attributes.html

  • bindings/scripts/CodeGeneratorJS.pm: Remove unwanted attributes from "constructor".

LayoutTests:

Reviewed by Eric.

  • fast/js/constructor-attributes-expected.txt: Added.
  • fast/js/constructor-attributes.html: Added.
  • fast/js/resources/constructor-attributes.js: Added.
4:07 PM Changeset in webkit [30101] by andersca@apple.com
  • 3 edits
    2 adds in trunk

WebCore:

Reviewed by Mitz.

<rdar://problem/5650446>
http://bugs.webkit.org/show_bug.cgi?id=16102
Crash in FrameLoader::stopLoadingSubframes() on IMDB page

Store the child frame in a RefPtr to prevent it from being deleted when the
frame tree changes while calling stopAllLoaders().


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

LayoutTests:

Reviewed by Mitz.

<rdar://problem/5650446>
http://bugs.webkit.org/show_bug.cgi?id=16102
Crash in FrameLoader::stopLoadingSubframes() on IMDB page

  • http/tests/navigation/changing-frame-hierarchy-in-onload-expected.txt: Added.
  • http/tests/navigation/changing-frame-hierarchy-in-onload.html: Added.
3:35 PM Changeset in webkit [30100] by kevino@webkit.org
  • 2 edits in trunk/WebCore

wx port build fix.

3:06 PM Changeset in webkit [30099] by alp@webkit.org
  • 1 edit in trunk/WebCore/ChangeLog

ChangeLog entry tweak: crasher affects debug, not release builds

3:04 PM Changeset in webkit [30098] by alp@webkit.org
  • 2 edits in trunk/WebCore

2008-02-08 Alp Toker <alp@atoker.com>

Reviewed by Adam Roben.

Avoid null-dereference crasher noticed in the GTK+ port and also
affecting the Win release build.

Covered by existing tests.

  • dom/Document.cpp: (WebCore::Document::userStyleSheet):
2:44 PM Changeset in webkit [30097] by andersca@apple.com
  • 5 edits in trunk/WebCore

Reviewed by Adam.

<rdar://problem/5724188>
REGRESSION: PLT 0.7% slower due to 29926 (change Text::createWithLengthLimit to take a UChar pointer)


Revert r29926 which caused the regression.


  • dom/Text.cpp: (WebCore::Text::createWithLengthLimit):
  • dom/Text.h:
  • html/HTMLParser.cpp: (WebCore::HTMLParser::parseToken):
  • loader/TextDocument.cpp: (WebCore::TextTokenizer::write):
12:05 PM Changeset in webkit [30096] by weinig@apple.com
  • 4 edits
    1 copy
    4 adds in trunk

WebCore:

Reviewed by Hyatt.

Fix for <rdar://problem/5732491>
http://bugs.webkit.org/show_bug.cgi?id=17213
The querySelectorAll method on an element node does not search only the element's descendants

Test: fast/dom/SelectorAPI/elementRoot.html

  • dom/Node.cpp: (WebCore::Node::querySelector): Make sure to stay within the root node when traversing the tree.
  • dom/SelectorNodeList.cpp: (WebCore::SelectorNodeList::SelectorNodeList): ditto.

LayoutTests:

Reviewed by Hyatt.

Test for <rdar://problem/5732491>
http://bugs.webkit.org/show_bug.cgi?id=17213
The querySelectorAll method on an element node does not search only the element's descendants

  • fast/dom/SelectorAPI/elementRoot-expected.txt: Added.
  • fast/dom/SelectorAPI/elementRoot.html: Added.
  • fast/dom/SelectorAPI/resources: Added.
  • fast/dom/SelectorAPI/resources/TEMPLATE.html: Copied from LayoutTests/fast/js/resources/TEMPLATE.html.
  • fast/dom/SelectorAPI/resources/elementRoot.js: Added.
11:23 AM Changeset in webkit [30095] by hyatt@apple.com
  • 2 edits in trunk/WebCore

Fix for bug 16798, button should default to type=submit.

Reviewed by darin

  • html/HTMLButtonElement.cpp: (WebCore::HTMLButtonElement::type): (WebCore::HTMLButtonElement::parseMappedAttribute):
8:51 AM Changeset in webkit [30094] by Adam Roben
  • 2 edits in trunk/WebKitSite
  • perf/slickspeed/config.ini: Fixed version number.
8:47 AM Changeset in webkit [30093] by Adam Roben
  • 2 edits
    1 move in trunk/WebKitSite

Update jQuery to v1.2.3

Rubberstamped by Mitz.

  • perf/slickspeed/config.ini:
  • perf/slickspeed/frameworks/jquery-1.2.3.js: Renamed from WebKitSite/perf/slickspeed/frameworks/jquery-1.2.1.js.
8:24 AM Changeset in webkit [30092] by Adam Roben
  • 6 edits in trunk/WebCore

2008-02-08 Rodney Dawes <dobey@wayofthemonkey.com>

Reviewed by Jon Honeycutt.

Redefine some platform-specific types as cross-platform types
Add pathGetFileName method to get the filename from a path string
Add unloadModule method to unload a loadable module from the process
Implement new methods for GTK+ and Windows
Implement missing homeDirectoryPath method for GTK+
Add stub methods for new and missing methods for Wx and Qt

  • platform/FileSystem.h:
  • platform/gtk/FileSystemGtk.cpp:
  • platform/qt/FileSystemQt.cpp:
  • platform/win/FileSystemWin.cpp:
  • platform/wx/FileSystemWx.cpp:
8:08 AM Changeset in webkit [30091] by Adam Roben
  • 2 edits in trunk/WebCore

Windows build fix after r30088

  • bindings/scripts/CodeGeneratorCOM.pm: Touch this to force the COM bindings to rebuild.
2:41 AM Changeset in webkit [30090] by alp@webkit.org
  • 5 edits in trunk

2008-02-08 Pierre-Luc Beaudoin <pierre-luc.beaudoin@collabora.co.uk>

Reviewed by Alp Toker.

http://bugs.webkit.org/show_bug.cgi?id=17009
[Gtk] Webkit strips accents from some dead-key combinations

KeyEvents have to go through the gtk input method.

2:35 AM Changeset in webkit [30089] by Darin Adler
  • 31 edits
    2 copies
    27 adds in trunk

WebCore:

Reviewed by Eric.

Test: traversal/exception-forwarding.html

This turned into a near-rewrite of NodeIterator and TreeWalker.

  • bindings/js/JSNodeFilterCondition.h:
  • bindings/js/JSNodeFilterCondition.cpp: (WebCore::takeException): Added. (WebCore::JSNodeFilterCondition::acceptNode): Added an out parameter to return a JavaScript exception.
  • bindings/js/JSNodeFilterCustom.cpp: (WebCore::JSNodeFilter::acceptNode): Wrote a custom binding for this that raises a JavaScript exception if the out parameter is set.
  • bindings/js/JSNodeIteratorCustom.cpp: (WebCore::JSNodeIterator::nextNode): Wrote a custom binding for this that raises a JavaScript exception if the out parameter is set. (WebCore::JSNodeIterator::previousNode): Ditto.
  • bindings/js/JSTreeWalkerCustom.cpp: (WebCore::JSTreeWalker::parentNode): Wrote a custom binding for this that raises a JavaScript exception if the out parameter is set. (WebCore::JSTreeWalker::firstChild): Ditto. (WebCore::JSTreeWalker::lastChild): Ditto. (WebCore::JSTreeWalker::nextSibling): Ditto. (WebCore::JSTreeWalker::previousSibling): Ditto. (WebCore::JSTreeWalker::previousNode): Ditto. (WebCore::JSTreeWalker::nextNode): Ditto.
  • bindings/objc/DOM.mm: (WebCore::ObjCNodeFilterCondition::acceptNode): Updated to include new exception out parameter. (-[DOMDocument createNodeIterator:whatToShow:filter:expandEntityReferences:]): Use RefPtr to make object lifetimes clearer. (-[DOMDocument createTreeWalker:whatToShow:filter:expandEntityReferences:]): Ditto.
  • bindings/scripts/CodeGeneratorJS.pm: Added include of NodeFilter.h for JSDocument.cpp.
  • dom/Document.h:
  • dom/Document.cpp: (WebCore::Document::createNodeIterator): Changed to use PassRefPtr. (WebCore::Document::createTreeWalker): Ditto.
  • dom/NodeFilter.h:
  • dom/NodeFilter.cpp: (WebCore::NodeFilter::NodeFilter): Changed to use PassRefPtr. (WebCore::NodeFilter::acceptNode): Added an out parameter to return a JavaScript exception.
  • dom/NodeFilter.idl: Custom binding for acceptNode.
  • dom/NodeFilterCondition.h:
  • dom/NodeFilterCondition.cpp: (WebCore::NodeFilterCondition::acceptNode): Added an out parameter to return a JavaScript exception.
  • dom/NodeIterator.cpp: (WebCore::NodeIterator::NodeIterator): Changed to use PassRefPtr more. Eliminated m_doc, using the root node instead, and unnecessary check for null -- rootNode must be non-null and all nodes have a non-null document. (WebCore::NodeIterator::~NodeIterator): Changed to get document from root. (WebCore::NodeIterator::nextNode): Rewrote to use a RefPtr since the acceptNode function could do anything, including removing the last reference to the current node. Also folded findNextNode into this function since it's the only one that needs to call it. (WebCore::NodeIterator::previousNode): Same thing, but the other direction. (WebCore::NodeIterator::detach): Changed to use the root node as the indication that we're detached rather than a separate boolean. (WebCore::NodeIterator::notifyBeforeNodeRemoval): Removed some unnneeded checks. Removed incorrect use of findNextNode/findPreviousNode -- those functions call acceptNode and the DOM standard is quite clear that these functions do not take that into account, allowing the current node to become one that's not accepted.
  • dom/NodeIterator.h: Changed constructor to use PassRefPtr more. Changed nextNode and previousNode to have an out parameter with a JavaScript exception. Removed helper functions setReferenceNode, setPointerBeforeReferenceNode, detached, setDetached, document, findNextNode, and findPreviousNode. All were unnecessary. Removed data member m_doc which was just rootNode()->document().
  • dom/NodeIterator.idl: Custom binding for nextNode and previousNode.
  • dom/Traversal.cpp: (WebCore::Traversal::Traversal): Use PassRefPtr more. (WebCore::Traversal::acceptNode): Added out parameter for JavaScript exception. Also rearranged the function a little bit for clarity.
  • dom/Traversal.h: Changed acceptNode to have an out parameter with a JavaScript exception and made it protected, since it's only for use by the derived classes.
  • dom/TreeWalker.cpp: (WebCore::TreeWalker::TreeWalker): Updated to use PassRefPtr. (WebCore::TreeWalker::setCurrentNode): Updated to use PassRefPtr and deleted the overloaded version since it's not needed. (WebCore::TreeWalker::parentNode): Rewrote to propagate the exception and also to implement rules about when to check things like whether we're in the tree. The previous fix where we called isDescendantOf was not entirely correct, because the specification allows you to walk outside the tree if you get there somehow. What it doesn't allow is walking outside the tree from inside. The new implementation handles this correctly. (WebCore::TreeWalker::firstChild): Ditto. (WebCore::TreeWalker::lastChild): Ditto. (WebCore::TreeWalker::previousSibling): Ditto. (WebCore::TreeWalker::nextSibling): Ditto. (WebCore::TreeWalker::previousNode): Ditto. Because of the need to check the acceptNode function on parents, this can't use traversePreviousNode (more's the pity, because it's a bit complicated). (WebCore::TreeWalker::nextNode): Ditto.
  • dom/TreeWalker.h: Changed constructor and setCurrentNode to use PassRefPtr more. Changed the navigation functions to have an out parameter with a JavaScript exception. Removed helper functions setCurrentNode and ancestorRejected.
  • dom/TreeWalker.idl: Custom binding for navigation functions.

LayoutTests:

Reviewed by Eric.

  • grabbed NodeIterator and TreeWalker tests from Hixie's site and KHTML
  • traversal/exception-forwarding-expected.txt: Added.
  • traversal/exception-forwarding.html: Added.
  • traversal/resources: Added.
  • traversal/resources/TEMPLATE.html: Copied from LayoutTests/fast/js/resources/TEMPLATE.html.
  • traversal/resources/exception-forwarding.js: Added.
  • traversal/node-iterator-001-expected.txt: Updated to reflect correct results. The old results reflected a bug in our NodeIterator.
  • traversal/node-iterator-001.html: Ditto.
  • traversal/node-iterator-006.html: Changed test so there's no whitespace node after the <span> elements inside the test root element (a <div>). The old test results were incorrect; the new NodeIterator implementation correctly returned the whitespace node for this test.
  • traversal/node-iterator-006a.html: Copied from traversal/node-iterator-006.html. Preserve the original test, which now has a strange result. But the result is correct, so it's worth keeping around.
  • traversal/node-iterator-006a-expected.txt: Added.
  • fast/dom/TreeWalker/TreeWalker-currentNode-expected.txt: Regenerated.
  • fast/dom/TreeWalker/resources/TreeWalker-currentNode.js: Updated test to expect results that match the DOM specification.
  • traversal/hixie-node-iterator/001-expected.txt: Added.
  • traversal/hixie-node-iterator/001.xml: Added.
  • traversal/hixie-node-iterator/002-expected.txt: Added.
  • traversal/hixie-node-iterator/002.xml: Added.
  • traversal/hixie-node-iterator/003-expected.txt: Added.
  • traversal/hixie-node-iterator/003.xml: Added.
  • traversal/hixie-node-iterator/004-expected.txt: Added.
  • traversal/hixie-node-iterator/004.xml: Added.
  • traversal/hixie-node-iterator/005-expected.txt: Added.
  • traversal/hixie-node-iterator/005.xml: Added.
  • traversal/hixie-node-iterator/006-expected.txt: Added.
  • traversal/hixie-node-iterator/006.xml: Added.
  • traversal/hixie-node-iterator/007-expected.txt: Added.
  • traversal/hixie-node-iterator/007.xml: Added.
  • traversal/hixie-node-iterator/008-expected.txt: Added.
  • traversal/hixie-node-iterator/008.xml: Added.
  • traversal/hixie-node-iterator/009-expected.txt: Added.
  • traversal/hixie-node-iterator/009.xml: Added.
  • traversal/hixie-node-iterator/010-expected.txt: Added.
  • traversal/hixie-node-iterator/010.xml: Added.
  • traversal/hixie-node-iterator/origin.txt: Added.
  • traversal/tree-walker-filter-1-expected.txt: Added.
  • traversal/tree-walker-filter-1.html: Added.
1:04 AM Changeset in webkit [30088] by eric@webkit.org
  • 18 edits
    12 adds in trunk

Reviewed by darin.

Add support for Text.wholeText and Text.replaceWholeText
http://bugs.webkit.org/show_bug.cgi?id=17125

Test EntityReferences to make sure they're always treated as read-only
In doing so I discovered a bug in document.adoptNode(readonlyNode) (and fixed it)

  • dom/Document.cpp: (WebCore::Document::adoptNode): throw NO_MODIFICATION_ALLOWED_ERR when passed a readonly node
  • dom/Node.cpp:
  • dom/Node.cpp: (WebCore::Node::textContent):
  • dom/Text.cpp: (WebCore::earliestLogicallyAdjacentTextNode): (WebCore::latestLogicallyAdjacentTextNode): (WebCore::Text::wholeText): (WebCore::Text::replaceWholeText):
  • dom/Text.h:
  • dom/Text.idl:
Note: See TracTimeline for information about the timeline view.