Timeline



Oct 19, 2007:

10:37 PM Changeset in webkit [26810] by alp
  • 10 edits in trunk

2007-10-19 Alp Toker <alp@atoker.com>

Reviewed by Oliver.

GTK+ build fix enabling the new local database storage feature.
There is also a prospective Qt build fix.

10:20 PM Changeset in webkit [26809] by ggaren
  • 1 edit in trunk/JavaScriptCore/ChangeLog

Added Bugzilla link to ChangeLog

10:18 PM Changeset in webkit [26808] by ggaren
  • 6 edits in trunk/JavaScriptCore

Reviewed by Darin Adler.


To improve encapsulation, moved processDeclarations call into
FunctionBodyNode::execute. Also marked processDeclarations
ALWAYS_INLINE, since it has only 1 caller now. This is a .71% speedup
on command-line JS iBench.

  • kjs/function.cpp: (KJS::FunctionImp::callAsFunction): (KJS::GlobalFuncImp::callAsFunction):
  • kjs/function.h:
  • kjs/interpreter.cpp: (KJS::Interpreter::evaluate):
  • kjs/nodes.cpp: (FunctionBodyNode::execute):
  • kjs/nodes.h:
9:39 PM JavaScript performance improvement ideas edited by mjs@apple.com
(diff)
9:35 PM JavaScript performance improvement ideas edited by mjs@apple.com
(diff)
9:10 PM Changeset in webkit [26807] by aroben
  • 2 edits in branches/Safari-3-branch/WebKitTools

Merge r26766

9:08 PM Changeset in webkit [26806] by andrew
  • 2 edits in trunk/WebCore

Reviewed by Brady Eidson.

Mac build fix.

  • WebCore.xcodeproj/project.pbxproj:
8:09 PM Changeset in webkit [26805] by oliver
  • 2 edits in trunk/LayoutTests

Updating window properties to include new features from HTML5 database support

RS=Mark

  • fast/dom/Window/window-properties-expected.txt:
7:20 PM Changeset in webkit [26804] by thatcher
  • 2 edits in trunk/WebKitSite

Reviewed by Mark Rowe.

Fix a couple of exceptions for first time users.

  • misc/DatabaseExample.html:
6:48 PM Changeset in webkit [26803] by alp
  • 3 edits in trunk/WebCore

2007-10-19 Alp Toker <alp@atoker.com>

Reviewed by Oliver.

Use platform colors for text selection.
Update the cache when the GTK style is changed.

  • platform/gtk/RenderThemeGtk.cpp: (WebCore::RenderThemeGtk::platformActiveSelectionBackgroundColor): (WebCore::RenderThemeGtk::platformInactiveSelectionBackgroundColor): (WebCore::RenderThemeGtk::platformActiveSelectionForegroundColor): (WebCore::RenderThemeGtk::platformInactiveSelectionForegroundColor): (WebCore::RenderThemeGtk::gtkStyleSet): (WebCore::RenderThemeGtk::gtkEntry):
  • platform/gtk/RenderThemeGtk.h:
6:18 PM Changeset in webkit [26802] by adele
  • 3 edits
    4 adds in trunk

WebCore:

Reviewed by Beth.

Fix for: <rdar://problem/5518461> REGRESSION (2.0.4-3): Popup arrows are missing in small popups at homedepot.com

Test: fast/forms/menulist-no-overflow.html

  • rendering/RenderMenuList.cpp: (WebCore::RenderMenuList::setStyle): Don't allow overflow on menu lists.

LayoutTests:

Reviewed by Beth.

Test for <rdar://problem/5518461> REGRESSION (2.0.4-3): Popup arrows are missing in small popups at homedepot.com

  • fast/forms/menulist-no-overflow.html: Added.
  • platform/mac/fast/forms/menulist-no-overflow-expected.checksum: Added.
  • platform/mac/fast/forms/menulist-no-overflow-expected.png: Added.
  • platform/mac/fast/forms/menulist-no-overflow-expected.txt: Added.
6:06 PM Changeset in webkit [26801] by andersca
  • 3 edits
    6 moves in trunk/WebCore

Reviewed by Brady.

Move some SQL-related classes to platform/sql.


  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • loader/icon/SQLDatabase.cpp: Removed.
  • loader/icon/SQLDatabase.h: Removed.
  • loader/icon/SQLStatement.cpp: Removed.
  • loader/icon/SQLStatement.h: Removed.
  • loader/icon/SQLTransaction.cpp: Removed.
  • loader/icon/SQLTransaction.h: Removed.
  • platform/sql/SQLDatabase.cpp: Copied from loader/icon/SQLDatabase.cpp.
  • platform/sql/SQLDatabase.h: Copied from loader/icon/SQLDatabase.h.
  • platform/sql/SQLStatement.cpp: Copied from loader/icon/SQLStatement.cpp.
  • platform/sql/SQLStatement.h: Copied from loader/icon/SQLStatement.h.
  • platform/sql/SQLTransaction.cpp: Copied from loader/icon/SQLTransaction.cpp.
  • platform/sql/SQLTransaction.h: Copied from loader/icon/SQLTransaction.h.
5:49 PM Changeset in webkit [26800] by andersca
  • 2 edits in trunk/WebKitSite

Reviewed by Brady.


Make example actually work.


  • misc/DatabaseExample.html:
5:45 PM Changeset in webkit [26799] by andersca
  • 6 edits in trunk

WebCore:

Reviewed by Adam.

Update to match the latest version of the spec. Now, executeSQL takes an array
of SQL parameters instead of them being passed as arguments.


  • bindings/js/JSDatabaseCustom.cpp: (WebCore::JSDatabase::executeSql):
  • page/inspector/DatabasePanel.js:
  • storage/Database.idl:

WebKitSite:

Reviewed by Adam.

Update example.


  • misc/DatabaseExample.html:
5:38 PM Changeset in webkit [26798] by kmccullo
  • 2 edits in trunk/WebKitTools

Reviewed by Adam.

  • This change should be identical but for some reason was not working on my machine.
  • Scripts/prepare-ChangeLog:
5:22 PM Changeset in webkit [26797] by beidson
  • 6 edits in trunk

WebCore:

Reviewed by Tim

Tiger's SQLite doesn't support CREATE TABLE IF NOT EXISTS :(

  • storage/Database.cpp: (WebCore::Database::performOpenAndVerify):
  • storage/DatabaseTracker.cpp: (WebCore::DatabaseTracker::DatabaseTracker):

WebKitSite:

Reviewed by Tim

Tiger's SQLite doesn't support CREATE TABLE IF NOT EXISTS :(

  • misc/DatabaseExample.html:
4:57 PM Changeset in webkit [26796] by andersca
  • 2 edits in trunk/WebCore

Release build fix.


  • WebCore.vcproj/WebCore.vcproj:
4:42 PM Changeset in webkit [26795] by sfalken
  • 1 copy in tags/Safari-523.12.5b

New tag.

4:42 PM Changeset in webkit [26794] by sfalken
  • 1 edit in branches/Safari-3-branch/WebKit/win/WebKit.vcproj/VERSION

Bump versions for submit

4:37 PM Changeset in webkit [26793] by beidson
  • 2 edits in trunk/WebCore

Remove stray printfs

  • dom/Document.cpp: (WebCore::Document::Document): (WebCore::Document::~Document):
4:36 PM Changeset in webkit [26792] by andersca
  • 2 edits in trunk/WebCore

Reviewed by Brady.

Apparently the Win32 pthreads impl we use does not allow unlocking a mutex that has not
already been locked, so lock the mutex first.


  • storage/DatabaseThread.cpp: (WebCore::DatabaseThread::databaseThread):
4:34 PM Changeset in webkit [26791] by beidson
  • 2 edits in trunk/WebCore

Better build fix

  • loader/icon/SQLDatabase.cpp: (WebCore::SQLDatabase::authorizerFunction): Definite works by 3.3.13
4:25 PM Changeset in webkit [26790] by beidson
  • 2 edits in trunk/WebCore

Build fix

  • loader/icon/SQLDatabase.cpp: (WebCore::SQLDatabase::authorizerFunction): I don't know *when* these constants were added to SQLite, but I know they were by 3.4.0
3:55 PM Changeset in webkit [26789] by sfalken
  • 1 copy in tags/Safari-523.12.4b

New tag.

3:55 PM Changeset in webkit [26788] by sfalken
  • 1 edit in branches/Safari-3-branch/WebKit/win/WebKit.vcproj/VERSION

Bump versions for submit

3:50 PM Changeset in webkit [26787] by beidson
  • 48 edits
    24 copies
    34 adds in trunk

JavaScriptCore:

2007-10-19 Brady Eidson <beidson@apple.com>

Reviewed by Sam

Queue -> Deque! and small style tweaks

  • JavaScriptCore.vcproj/WTF/WTF.vcproj:
  • JavaScriptCore/JavaScriptCore.xcodeproj/project.pbxproj
  • wtf/Deque.h: Added. (WTF::DequeNode::DequeNode): (WTF::Deque::Deque): (WTF::Deque::~Deque): (WTF::Deque::size): (WTF::Deque::isEmpty): (WTF::Deque::append): (WTF::Deque::prepend): (WTF::Deque::first): (WTF::Deque::last): (WTF::Deque::removeFirst): (WTF::Deque::clear):
  • wtf/Queue.h: Removed.

2007-10-19 Brady Eidson <beidson@apple.com>

Reviewed by Oliver

Added a simple LinkedList based Queue to wtf
We can make a better, more sophisticated an efficient one later, but have
needed one for some time, now!

  • JavaScriptCore.xcodeproj/project.pbxproj:
  • wtf/Queue.h: Added. (WTF::QueueNode::QueueNode): (WTF::Queue::Queue): (WTF::Queue::~Queue): (WTF::Queue::size): (WTF::Queue::isEmpty): (WTF::Queue::append): (WTF::Queue::prepend): (WTF::Queue::first): (WTF::Queue::last): (WTF::Queue::removeFirst): (WTF::Queue::clear):

WebCore:
2007-10-19 Brady Eidson <beidson@apple.com>

Reviewed by Anders

Windows specific changes, as well as renaming Queue -> Deque

  • ForwardingHeaders/wtf/Deque.h: Added.
  • ForwardingHeaders/wtf/Queue.h: Removed.
  • platform/win/FileSystemWin.cpp: (WebCore::fileSize): (WebCore::fileExists): (WebCore::deleteFile): (WebCore::pathByAppendingComponent): (WebCore::fileSystemRepresentation): (WebCore::makeAllDirectories): (WebCore::homeDirectoryPath):
  • storage/Database.h:
  • storage/DatabaseThread.cpp: (WebCore::DatabaseThread::documentGoingAway): (WebCore::DatabaseThread::databaseGoingAway): (WebCore::DatabaseThread::dispatchNextTaskIdentifier): (WebCore::DatabaseThread::scheduleTask): (WebCore::DatabaseThread::scheduleImmediateTask):
  • storage/DatabaseThread.h:

2007-10-19 Brady Eidson <beidson@apple.com>

Reviewed by Tim and Anders

Preliminary support for HTML5 local database storage (http://www.whatwg.org/specs/web-apps/current-work/)

The specification is still in flux but the fundamentals are pretty solid and we can start using and testing
this implementation even while filing bugs to track changes in the spec as it becomes more final

There are some implementation details in this patch that seem unused or useless, but they remain in place
while the spec is in flux and might go one way or another.

  • platform/Logging.cpp: Add StorageAPI logging channel
  • platform/Logging.h:
  • storage/Database.cpp: Added. (WebCore::Database::databaseInfoTableName): (WebCore::databaseVersionKey): (WebCore::Database::openDatabase): C++ version of the window.openDatabase() javascript API (WebCore::Database::Database): (WebCore::Database::~Database): (WebCore::Database::openAndVerifyVersion): (WebCore::retrieveTextResultFromDatabase): (WebCore::Database::getVersionFromDatabase): (WebCore::setTextValueInDatabase): (WebCore::Database::setVersionInDatabase): (WebCore::Database::databaseThreadGoingAway): May be removed in the future (WebCore::Database::disableAuthorizer): For internal (WebInspector) use to get around the authorizer's restrictions (WebCore::Database::enableAuthorizer): (WebCore::Database::guidForOriginAndName): Candidate for refactoring and/or moving to the database tracker. The GUID for each database identifier is currently for tracking the database version, but might be rescoped in the future (WebCore::Database::resetAuthorizer): (WebCore::Database::performPolicyChecks): Currently, the only post-executeSql policy check planned is the origin size usage (WebCore::Database::scheduleDatabaseCallback): (WebCore::Database::performOpenAndVerify): (WebCore::Database::performChangeVersion): (WebCore::Database::performExecuteSql): (WebCore::Database::performCloseTransaction): (WebCore::Database::performGetTableNames): (WebCore::Database::version): C++ version of the javascript API (WebCore::Database::changeVersion): Ditto (WebCore::Database::executeSql): Ditto (WebCore::Database::closeTransaction): Ditto (WebCore::Database::tableNames): For internal (WebInspector) use (WebCore::Database::deliverAllPendingCallbacks): (WebCore::Database::deliverPendingCallbacks):
  • storage/Database.h: Added. (WebCore::Database::databaseDebugName): For debug logging purposes
  • storage/Database.idl: Added.
  • storage/DatabaseAuthorizer.cpp: Added. The DatabaseAuthorizer is used to both prevent the script from doing "illegal" things in sql as well as tracking when effects certain sql statements might have (such as increasing the size of the database) (WebCore::DatabaseAuthorizer::DatabaseAuthorizer): (WebCore::DatabaseAuthorizer::reset): (WebCore::DatabaseAuthorizer::createTable): (WebCore::DatabaseAuthorizer::createTempTable): (WebCore::DatabaseAuthorizer::dropTable): (WebCore::DatabaseAuthorizer::dropTempTable): (WebCore::DatabaseAuthorizer::allowAlterTable): (WebCore::DatabaseAuthorizer::createIndex): (WebCore::DatabaseAuthorizer::createTempIndex): (WebCore::DatabaseAuthorizer::dropIndex): (WebCore::DatabaseAuthorizer::dropTempIndex): (WebCore::DatabaseAuthorizer::createTrigger): (WebCore::DatabaseAuthorizer::createTempTrigger): (WebCore::DatabaseAuthorizer::dropTrigger): (WebCore::DatabaseAuthorizer::dropTempTrigger): (WebCore::DatabaseAuthorizer::createVTable): (WebCore::DatabaseAuthorizer::dropVTable): (WebCore::DatabaseAuthorizer::allowDelete): (WebCore::DatabaseAuthorizer::allowInsert): (WebCore::DatabaseAuthorizer::allowUpdate): (WebCore::DatabaseAuthorizer::allowRead): (WebCore::DatabaseAuthorizer::allowAnalyze): (WebCore::DatabaseAuthorizer::allowPragma): (WebCore::DatabaseAuthorizer::allowAttach): (WebCore::DatabaseAuthorizer::allowDetach): (WebCore::DatabaseAuthorizer::allowFunction): (WebCore::DatabaseAuthorizer::disable): (WebCore::DatabaseAuthorizer::enable): (WebCore::DatabaseAuthorizer::denyBasedOnTableName): Don't allow access to the WebKit meta info table as it should be invisible to scripts
  • storage/DatabaseAuthorizer.h: Added. (WebCore::DatabaseAuthorizer::lastActionWasInsert): (WebCore::DatabaseAuthorizer::lastActionIncreasedSize):
  • storage/DatabaseCallback.cpp: Added. Generic item to queue up for callbacks on the main thread for database activities that take place on a secondary thread (WebCore::DatabaseChangeVersionCallback::DatabaseChangeVersionCallback): (WebCore::DatabaseChangeVersionCallback::performCallback): (WebCore::DatabaseExecuteSqlCallback::DatabaseExecuteSqlCallback): (WebCore::DatabaseExecuteSqlCallback::performCallback):
  • storage/DatabaseCallback.h: Added. (WebCore::DatabaseCallback::~DatabaseCallback): (WebCore::DatabaseChangeVersionCallback::~DatabaseChangeVersionCallback): (WebCore::DatabaseExecuteSqlCallback::~DatabaseExecuteSqlCallback):
  • storage/DatabaseTask.h: Added. Generic work-item to be queued up on the background database thread (WebCore::DatabaseTask::isComplete): (WebCore::DatabaseOpenTask::exceptionCode): (WebCore::DatabaseOpenTask::openSuccessful): (WebCore::DatabaseTableNamesTask::tableNames):
  • storage/DatabaseTask.cpp: Added. (WebCore::DatabaseTask::DatabaseTask): (WebCore::DatabaseTask::~DatabaseTask): (WebCore::DatabaseTask::performTask): (WebCore::DatabaseTask::lockForSynchronousScheduling): Used when the main thread needs this task accomplished synchronously (WebCore::DatabaseTask::waitForSynchronousCompletion):

(WebCore::DatabaseOpenTask::DatabaseOpenTask):
(WebCore::DatabaseOpenTask::doPerformTask):

(WebCore::DatabaseExecuteSqlTask::DatabaseExecuteSqlTask):
(WebCore::DatabaseExecuteSqlTask::doPerformTask):

(WebCore::DatabaseChangeVersionTask::DatabaseChangeVersionTask):
(WebCore::DatabaseChangeVersionTask::doPerformTask):

(WebCore::DatabaseTableNamesTask::DatabaseTableNamesTask):
(WebCore::DatabaseTableNamesTask::doPerformTask):

  • storage/DatabaseThread.cpp: Added. The current design is that each Document will have its own DatabaseThread. This makes scripts on each individual document more response at the cost of adding more threads and potentially creating concurrency issues when the same database is open twice from two different documents (WebCore::DatabaseThread::DatabaseThread): (WebCore::DatabaseThread::~DatabaseThread): (WebCore::DatabaseThread::start): (WebCore::DatabaseThread::documentGoingAway): Called to shut the thread down when the document is destroyed (WebCore::DatabaseThread::databaseGoingAway): Remove all pending tasks for this database (WebCore::DatabaseThread::databaseThreadStart): (WebCore::DatabaseThread::databaseThread): (WebCore::DatabaseThread::dispatchNextTaskIdentifier): (WebCore::DatabaseThread::scheduleTask): (WebCore::DatabaseThread::scheduleImmediateTask): Schedule a task that gets to "cut to the front of the line" when the main thread requires a task be performed synchronously (WebCore::DatabaseThread::wakeWorkThread):
  • storage/DatabaseThread.h: Added.
  • storage/DatabaseTracker.cpp: Added. The DatabaseTracker is the master management of all databases. It will keep track of the filename for a given unique database, keep track of the total disk usage per-origin, and policys per database/origin (WebCore::DatabaseTracker::setDatabasePath): (WebCore::DatabaseTracker::databasePath): (WebCore::DatabaseTracker::tracker): (WebCore::DatabaseTracker::DatabaseTracker): (WebCore::DatabaseTracker::fullPathForDatabase): (WebCore::DatabaseTracker::populateOrigins): (WebCore::DatabaseTracker::origins): (WebCore::DatabaseTracker::databaseNamesForOrigin): (WebCore::DatabaseTracker::addDatabase): (WebCore::DatabaseTracker::deleteAllDatabases): (WebCore::DatabaseTracker::deleteAllDatabasesForOrigin):
  • storage/DatabaseTracker.h: Added.
  • storage/SQLCallback.h: Added. C++ version of the javascript executeSql() callback (WebCore::SQLCallback::~SQLCallback):
  • storage/SQLCallback.idl: Added.
  • storage/SQLResultSet.cpp: Added. C++ version of the javascript SQLResultSet object (WebCore::SQLResultSet::SQLResultSet): (WebCore::SQLResultSet::insertId): (WebCore::SQLResultSet::rowsAffected): (WebCore::SQLResultSet::errorCode): (WebCore::SQLResultSet::error): (WebCore::SQLResultSet::rows): (WebCore::SQLResultSet::setInsertId): (WebCore::SQLResultSet::setRowsAffected): (WebCore::SQLResultSet::setErrorCode): (WebCore::SQLResultSet::setErrorMessage):
  • storage/SQLResultSet.h: Added.
  • storage/SQLResultSet.idl: Added.
  • storage/SQLResultSetRowList.cpp: Added. C++ version of the javascript SQLResultSetRowList object (WebCore::SQLResultSetRowList::length):
  • storage/SQLResultSetRowList.h: Added. (WebCore::SQLResultSetRowList::columnNames): (WebCore::SQLResultSetRowList::values): (WebCore::SQLResultSetRowList::addColumn): (WebCore::SQLResultSetRowList::addResult):
  • storage/SQLResultSetRowList.idl: Added.
  • storage/VersionChangeCallback.h: Added. C++ version of the javascript changeVersion() callback (WebCore::VersionChangeCallback::~VersionChangeCallback):
  • storage/VersionChangeCallback.idl: Added.

2007-10-19 Brady Eidson <beidson@apple.com>

Reviewed by Oliver + Same

Forwarding header for the new wtf/Queue.h

  • ForwardingHeaders/wtf/Queue.h: Added.

2007-10-19 Anders Carlsson <beidson@apple.com>

Reviewed by Sam Weinig

Most of the Javascript binding support for the Storage API

  • bindings/js/JSCustomSQLCallback.cpp: Added. (WebCore::JSCustomSQLCallback::JSCustomSQLCallback): (WebCore::JSCustomSQLCallback::handleEvent):
  • bindings/js/JSCustomSQLCallback.h: Added. Add JSCustomSQLCallback which is an SQLCallback implementation that dispatches handleEvent to a JS function or a JS object with a handleEvent function.
  • bindings/js/JSCustomVersionChangeCallback.cpp: Added. (WebCore::JSCustomVersionChangeCallback::JSCustomVersionChangeCallback): (WebCore::JSCustomVersionChangeCallback::handleEvent):
  • bindings/js/JSCustomVersionChangeCallback.h: Added. Add JSCustomSQLCallback which is an SQLCallback implementation that dispatches handleEvent to a JS function or a JS object with a handleEvent function.
  • bindings/js/JSDatabaseCustom.cpp: Added. (WebCore::JSDatabase::executeSql): Custom implementation of executeSql that takes an array of parameters.

(WebCore::JSDatabase::changeVersion):

Custom implementation of changeVersion.

  • bindings/js/JSSQLResultSetRowListCustom.cpp: Added. (WebCore::JSSQLResultSetRowList::item): Custom method that returns a JS object that corresponds to a given row in the database.
  • bindings/scripts/CodeGeneratorJS.pm:
  • page/DOMWindow.cpp: (WebCore::DOMWindow::openDatabase):
  • page/DOMWindow.h:
  • page/DOMWindow.idl: Add openDatabase implementation.

2007-10-19 Brady Eidson <beidson@apple.com>

Reviewed by Oliver

Added tons of utility to the FileSystem abstractions, including moving
some stuff over from IconDatabase

  • platform/FileSystem.h:
  • platform/cf/FileSystemCF.cpp: Added. (WebCore::fileSystemRepresentation):
  • platform/mac/FileSystemMac.mm:
  • platform/posix/FileSystemPOSIX.cpp: Added. (WebCore::fileExists): (WebCore::deleteFile): (WebCore::fileSize): (WebCore::pathByAppendingComponent): (WebCore::makeAllDirectories):

2007-10-19 Timothy Hatcher <timothy@apple.com>

Reviewed by Adam Roben

Preliminary Web Inspector support for the Storage API
(This patch does not include the support artwork)

  • page/InspectorController.cpp: (WebCore::InspectorDatabaseResource::InspectorDatabaseResource): (WebCore::InspectorDatabaseResource::setScriptObject): (WebCore::databaseTableNames): Return the table names for a Database object. (WebCore::InspectorController::setWindowVisible): (WebCore::InspectorController::windowScriptObjectAvailable): (WebCore::InspectorController::populateScriptResources): (WebCore::InspectorController::addDatabaseScriptResource): Add the script object for the database. (WebCore::InspectorController::removeDatabaseScriptResource): Remove the script object for the database. (WebCore::InspectorController::clearDatabaseScriptResources): Remove all the database resources. (WebCore::InspectorController::didCommitLoad): Call clearDatabaseScriptResources(). (WebCore::InspectorController::didOpenDatabase): Make a new InspectorDatabaseResource and add it to m_databaseResources.
  • page/InspectorController.h:
  • page/inspector/Database.js: Added.
  • page/inspector/DatabasePanel.js: Added.
  • page/inspector/ResourceCategory.js: Make resource categories assume less about the resource.
  • page/inspector/inspector.css: Add styles for the database panel.
  • page/inspector/inspector.html: Include DatabasePanel.js
  • page/inspector/inspector.js: Support for adding and removing Database resources.

2007-10-19 Brady Eidson <beidson@apple.com>

Reviewed by Tim Hatcher

Added support for Chrome prompts required by the Storage API

  • page/Chrome.cpp: (WebCore::Chrome::runDatabaseSizeLimitPrompt):
  • page/Chrome.h:
  • page/ChromeClient.h:
  • platform/graphics/svg/SVGImageEmptyClients.h:

2007-10-19 Brady Eidson <beidson@apple.com>

Contributions and Review by Anders

Various SQLite tweaks in preparation for the storage API

  • loader/icon/SQLDatabase.cpp: (WebCore::SQLDatabase::~SQLDatabase): (WebCore::SQLDatabase::authorizerFunction): Static callback from sqlite for authorizer functions (WebCore::SQLDatabase::setAuthorizer): (WebCore::SQLDatabase::lock): (WebCore::SQLDatabase::unlock):
  • loader/icon/SQLDatabase.h:
  • loader/icon/SQLStatement.cpp: (WebCore::SQLStatement::prepare): Switch to prepare16_v2 (WebCore::SQLStatement::bindDouble): Added (WebCore::SQLStatement::bindValue): Bind a wrapped SQLValue object (described later) (WebCore::SQLStatement::bindParameterCount): Accessor to the sqlite3 API for validating statements
  • loader/icon/SQLStatement.h: (WebCore::SQLStatement::isPrepared):
  • platform/sql/SQLAuthorizer.cpp: Added. Fully virtual interface to implement your own SQLite authorizer
  • platform/sql/SQLAuthorizer.h: Added. (WebCore::SQLAuthorizer::~SQLAuthorizer): (WebCore::SQLAuthorizer::createTable): (WebCore::SQLAuthorizer::createTempTable): (WebCore::SQLAuthorizer::dropTable): (WebCore::SQLAuthorizer::dropTempTable): (WebCore::SQLAuthorizer::allowAlterTable): (WebCore::SQLAuthorizer::createIndex): (WebCore::SQLAuthorizer::createTempIndex): (WebCore::SQLAuthorizer::dropIndex): (WebCore::SQLAuthorizer::dropTempIndex): (WebCore::SQLAuthorizer::createTrigger): (WebCore::SQLAuthorizer::createTempTrigger): (WebCore::SQLAuthorizer::dropTrigger): (WebCore::SQLAuthorizer::dropTempTrigger): (WebCore::SQLAuthorizer::createView): (WebCore::SQLAuthorizer::createTempView): (WebCore::SQLAuthorizer::dropView): (WebCore::SQLAuthorizer::dropTempView): (WebCore::SQLAuthorizer::createVTable): (WebCore::SQLAuthorizer::dropVTable): (WebCore::SQLAuthorizer::allowDelete): (WebCore::SQLAuthorizer::allowInsert): (WebCore::SQLAuthorizer::allowUpdate): (WebCore::SQLAuthorizer::allowTransaction): (WebCore::SQLAuthorizer::allowSelect): (WebCore::SQLAuthorizer::allowRead): (WebCore::SQLAuthorizer::allowAttach): (WebCore::SQLAuthorizer::allowDetach): (WebCore::SQLAuthorizer::allowReindex): (WebCore::SQLAuthorizer::allowAnalyze): (WebCore::SQLAuthorizer::allowFunction):
  • platform/sql/SQLValue.cpp: Added. Contains a value for a SQLite database that can be one of a few types. For now, just a String or a double (WebCore::SQLValue::SQLValue): (WebCore::SQLValue::string): (WebCore::SQLValue::number):
  • platform/sql/SQLValue.h: Added. (WebCore::SQLValue::): (WebCore::SQLValue::SQLValue): (WebCore::SQLValue::type):

2007-10-19 Brady Eidson <beidson@apple.com>

Reviewed by Maciej

Changed IconDatabase over to use new FileSystem apis

  • loader/icon/IconDatabase.cpp: (WebCore::IconDatabase::open):

WebKit:

Reviewed by Tim Hatcher

Added support for Chrome prompts required by the Storage API
Added support API for future managing of databases from the WebKit client
Added preference and initialization for the databases path

  • Misc/WebDatabaseManager.h: Added. WebDatabaseManager is how a WebKit application can list and remove the current available databases
  • Misc/WebDatabaseManager.mm: Added. (+[WebDatabaseManager origins]): (+[WebDatabaseManager databasesWithOrigin:]): (+[WebDatabaseManager deleteAllDatabases]): (+[WebDatabaseManager deleteAllDatabasesWithOrigin:]): (+[WebDatabaseManager deleteDatabaseWithOrigin:named:]): (WebKitSetWebDatabasesPathIfNecessary): Setup the database path
  • Misc/WebDatabaseManagerPrivate.h: Added.
  • WebCoreSupport/WebChromeClient.h: Support for calling the delegate to run the prompt for an origin exceeding its size limit
  • WebCoreSupport/WebChromeClient.mm: (WebChromeClient::runDatabaseSizeLimitPrompt):
  • WebKit.xcodeproj/project.pbxproj:
  • WebView/WebUIDelegate.h:
  • WebView/WebView.mm: (-[WebView _commonInitializationWithFrameName:groupName:]): Setup the database path
  • WebView/WebViewInternal.h:

WebKitSite:

Reviewed by Tim Hatcher

Sample database API usage

  • misc/DatabaseExample.html: Added.

WebKit/win:

Reviewed by Anders

Keep windows building with new Chrome additions

  • WebChromeClient.cpp:
  • WebChromeClient.h:
3:21 PM Changeset in webkit [26786] by kmccullo
  • 7 edits in trunk/WebKitTools

Reviewed by Oliver and Tim.

  • Made use of RetainPtr to avoid retain and release issues and moved the log function to DebuggerDocumentPlatform, which seems to be a more logical place for it to live.
  • Also moved knownServers from the ServerConnection to DebuggerApplication to match the Windows code and because it makes sense that a connection knows its own server but not all of them.
  • Drosera/mac/DebuggerClient.h: Moved the log function to DebuggerDocumentPlatform.
  • Drosera/mac/DebuggerClient.mm: Ditto. Also do not release the server Because it's owned by an own Ptr in DebuggerDocument. Also moved the call for the server name up from the ServerConnection class. (-[DebuggerClient dealloc]): (-[DebuggerClient webView:didReceiveTitle:forFrame:]): Moved the call for the server name up from the ServerConnection.
  • Drosera/mac/DebuggerDocumentPlatform.mm: Made the server an OwnPtr. (DebuggerDocument::platformPause): (DebuggerDocument::platformResume): (DebuggerDocument::platformStepInto): (DebuggerDocument::platformEvaluateScript): (DebuggerDocument::getPlatformCurrentFunctionStack): (DebuggerDocument::getPlatformLocalScopeVariableNamesForCallFrame): (DebuggerDocument::platformValueForScopeVariableNamed): (DebuggerDocument::platformLog): Log directly from here. No need to call DebuggerClient.
  • Drosera/mac/ServerConnection.h: Removed the knownServers function. The way I see it, a ServerConnection should only know about its connection and the group of all possible servers should be kept by the application.
  • Drosera/mac/ServerConnection.mm: Removed knownServer but added currentServerName, it makes sense that the connection should know that name. (-[ServerConnection currentServerName]):
3:00 PM Changeset in webkit [26785] by hyatt
  • 2 edits in trunk/WebCore

Fix for ebay parser crash.

Reviewed by Beth

fast/invalid/table-residual-style-crash.html added as a test

  • html/HTMLParser.cpp: (WebCore::HTMLParser::handleResidualStyleCloseTagAcrossBlocks):
2:58 PM Changeset in webkit [26784] by hyatt
  • 4 adds in trunk/LayoutTests

Add new layout test for parser crash.

2:25 PM Changeset in webkit [26783] by zimmermann
  • 2 edits in trunk/JavaScriptCore

Reviewed by Anders.
Try to fix Qt/Win build slave, by including windows.h also on Qt/Win.

2:17 PM Changeset in webkit [26782] by weinig
  • 3 edits in trunk/WebCore

Fix Windows, Qt and GTK builds.

  • WebCore.pro:
  • WebCore.vcproj/WebCore.vcproj:
2:03 PM Changeset in webkit [26781] by zimmermann
  • 59 edits in trunk/LayoutTests

Rubberstamped by Oliver.

Land tiger baseline matching my MBP, as discussed with Oliver.
Mostly differences regarding the size of "(" / ")" characters.

1:53 PM Changeset in webkit [26780] by weinig
  • 21 edits
    2 adds in trunk

WebCore:

Reviewed by Darin.

Encapsulate the same origin check into the new SecurityOrigin class.

  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/kjs_window.cpp: (KJS::Window::isSafeScript):
  • dom/Document.cpp: (WebCore::Document::Document): (WebCore::Document::defaultEventHandler):
  • dom/Document.h: (WebCore::Document::securityOrigin):
  • loader/FrameLoader.cpp: (WebCore::FrameLoader::begin): (WebCore::FrameLoader::setOpener):
  • loader/FrameLoader.h:
  • platform/SecurityOrigin.cpp: Added. (WebCore::SecurityOrigin::SecurityOrigin): (WebCore::SecurityOrigin::clear): (WebCore::SecurityOrigin::isEmpty): (WebCore::SecurityOrigin::setForFrame): (WebCore::SecurityOrigin::setDomainFromDOM): (WebCore::SecurityOrigin::allowsAccessFrom): (WebCore::SecurityOrigin::isSecureTransitionTo):
  • platform/SecurityOrigin.h: Added.

LayoutTests:

Reviewed by Darin.

Update results after changing the warning message in isSafeScript to print the frame URL
rather than the security domain URL. This now also prints the warning when using data:
URLs because we no longer return early.

  • http/tests/security/dataURL/xss-DENIED-from-data-url-sub-frame-2-level-expected.txt:
  • http/tests/security/dataURL/xss-DENIED-from-data-url-sub-frame-expected.txt:
  • http/tests/security/dataURL/xss-DENIED-from-data-url-sub-frame-to-data-url-sub-frame-expected.txt:
  • http/tests/security/dataURL/xss-DENIED-from-javascript-url-window-open-expected.txt:
  • http/tests/security/dataURL/xss-DENIED-to-data-url-from-data-url-expected.txt:
  • http/tests/security/dataURL/xss-DENIED-to-data-url-sub-frame-2-level-expected.txt:
  • http/tests/security/dataURL/xss-DENIED-to-data-url-sub-frame-expected.txt:
  • http/tests/security/dataURL/xss-DENIED-to-data-url-sub-frame-uppercase-expected.txt:
  • http/tests/security/dataURL/xss-DENIED-to-data-url-window-open-expected.txt:
  • http/tests/security/javascriptURL/xss-DENIED-from-javascipt-url-in-foreign-domain-subframe-expected.txt:
  • http/tests/security/javascriptURL/xss-DENIED-from-javascipt-url-in-foreign-domain-window-open-expected.txt:
  • http/tests/security/javascriptURL/xss-DENIED-to-javascipt-url-in-foreign-domain-subframe-expected.txt:
  • http/tests/security/javascriptURL/xss-DENIED-to-javascipt-url-in-foreign-domain-window-open-expected.txt:
1:04 PM Changeset in webkit [26779] by kmccullo
  • 9 edits
    3 adds
    2 deletes in trunk/WebKitTools

Reviewed by Adam.

  • Integrated changes from mac drosera. Recently I've encapsulated out the server connection object from the rest of Drosera because it is very platform dependent right now and RPC is not implemented on windows. This functionality, of communicating with the WebKit server is the next area I will be focusing on in Windows.
  • Other changes and cleanup were made to organize the code and add notes on which parts still need work. Also some mac code is added and commented out, to act as pseudocode for the logic of those parts.
  • Drosera/DebuggerDocument.h: Make the ServerConnection live in a smart pointer.
  • Drosera/config.h: Added whitespace.
  • Drosera/win/DebuggerApplication.cpp: Removed. The functionality of these files got moved into Drosera.h/cpp
  • Drosera/win/DebuggerApplication.h: Removed.
  • Drosera/win/DebuggerClient.cpp: Lots of cleanup and restructuring happened here to better match the logic flow of the same code on the mac side and to use the new ServerConnection class. (DebuggerClient::DebuggerClient): Constructor that takes a server name. (DebuggerClient::initWithServerName): Initializer that will set up the class to use a ServerConnection object. This was necessary so I could create a DebuggerClient without having to initilaize it at construction. (DebuggerClient::QueryInterface): Moved from Drosera.cpp, the Client will be the UIDelegate and FrameLoadDelegate. (DebuggerClient::AddRef): For IUnknown. (DebuggerClient::Release): For IUnknown. (DebuggerClient::didFinishLoadForFrame): Part of the FrameLoadDelegate this still needs to set the global context of the server, but IWebFrame does not have an accessor for the global context yet. (DebuggerClient::windowScriptObjectAvailable): Part of FrameLoadDelegate this is a pass through for the same function in the document. (DebuggerClient::didReceiveTitle): Unimplemented part of FrameLoadDelegate this would change the title of the window. (DebuggerClient::createWebViewWithRequest): Part of the FrameLoadDelegate. This is about new windows via Window.open() and how their delegates are set. (DebuggerClient::runJavaScriptAlertPanelWithMessage): Part of the UIDelegate. Just a debug function for printing messages.
  • Drosera/win/DebuggerClient.h: Moved functionality from Drosera.h because the Client should be the UIDelegate and FrameLoadDelegate to match the delegates on mac. (DebuggerClient::webViewLoaded): Added accessor method.
  • Drosera/win/DebuggerDocumentPlatform.cpp: Added. I had apperently forgotten to add this file before. This is where the platform dependent versions of the Documents functions live. Most of these are unimplemented because some piece of functionality does not exist on Windows yet. (DebuggerDocument::platformPause): (DebuggerDocument::platformResume): (DebuggerDocument::platformStepInto): (DebuggerDocument::platformEvaluateScript): (DebuggerDocument::getPlatformCurrentFunctionStack): (DebuggerDocument::getPlatformLocalScopeVariableNamesForCallFrame): (DebuggerDocument::platformValueForScopeVariableNamed): (DebuggerDocument::platformLog):
  • Drosera/win/Drosera.cpp: Removed UIDelegate and FrameLoadDelegate responsibilities becaue they belong in the Client. Also I laid the groundwork for attaching Drosera to a WebKit process (attachWndProc): Now if a server is selected the Client becomes it's delegate. (Drosera::Drosera): Added the construction of the Client and dictionary of server names. (Drosera::initUI): This is no longer the delegates, the Client is. (Drosera::webViewLoaded): Now asks the Client instead of holding local state. (Drosera::applicationDidFinishLaunching): Placeholder for needed notification registration when it's possible to implement. (Drosera::serverLoaded): Ditto (Drosera::serverUnloaded): Ditto (Drosera::attach): Attach Drosera to the WebKit server.
  • Drosera/win/Drosera.h: Ditto for Drosera.cpp comment. (Drosera::getInst): (Drosera::setInst): (Drosera::knownServers):
  • Drosera/win/Drosera.vcproj/Drosera.vcproj: Removed DebuggerApplication and added the ServerConnection.
  • Drosera/win/DroseraPrefix.h: Added an ifndef check.
  • Drosera/win/ServerConnection.cpp: Added. This is the interesting part Most of the functions are completely unimlemented because they cannot connect with the WebKit server, because one does not exist on Windows yet. (ServerConnection::initWithServerName): (ServerConnection::~ServerConnection): (ServerConnection::setGlobalContext): (ServerConnection::pause): (ServerConnection::resume): (ServerConnection::stepInto): (ServerConnection::switchToServerNamed): (ServerConnection::applicationTerminating): (ServerConnection::serverConnectionDidDie): (ServerConnection::currentFrame):
  • Drosera/win/ServerConnection.h: Added. Ditto. (ServerConnection::ServerConnection):
11:12 AM Changeset in webkit [26778] by aliceli1
  • 1 edit in trunk/WebKitTools/ChangeLog

Reviewed by Darin.

Fix for these broken layout tests on Windows:


fast/forms/focus-selection-input.html
fast/forms/focus-selection-textarea.html
fast/forms/select-accesskey.html


  • DumpRenderTree/win/EventSender.cpp: (keyDownCallback): correct the VK code for alt key.
11:05 AM Changeset in webkit [26777] by aliceli1
  • 2 edits in trunk/WebKitTools

Reviewed by Darin.

  • DumpRenderTree/win/EventSender.cpp: (keyDownCallback): correct the VK code for alt key.
10:51 AM Changeset in webkit [26776] by sullivan
  • 2 edits in trunk/WebKit

Reviewed by Tim Hatcher


  • fixed <rdar://problem/5540325> REGRESSION (2.0.4-3): History menu looks odd after clearing history
  • History/WebHistory.mm: (-[WebHistoryPrivate removeAllItems]): This was fallout from r25275. We need to clear the orderedLastVisitedDays cache here, in addition to the other places where it's cleared.
10:33 AM Changeset in webkit [26775] by mitz
  • 2 edits in trunk/LayoutTests

Rubber-stamped by Sam Weinig.

removing a commented-out test and a test that no longer fails

  • platform/mac-leopard/Skipped:
10:14 AM Changeset in webkit [26774] by ddkilzer
  • 2 edits
    1 copy in trunk/LayoutTests

LayoutTests:

Reviewed by Darin.

Provide the functionality of js-test-post.js in a function named isSuccessfullyParsed().

  • fast/encoding/char-encoding.html: Updated to use js-test-post-function.js instead of local hack.
  • fast/js/resources/js-test-post-function.js: Copied from LayoutTests/fast/js/resources/js-test-post.js. Modified to create isSuccessfullyParsed() function.
8:13 AM Changeset in webkit [26773] by hausmann
  • 4 edits in trunk

Fix the Qt/Windows build: Added missing FontSelector.h include and re-order moc inclusion.

7:46 AM Changeset in webkit [26772] by hausmann
  • 2 edits in trunk/WebCore

Qt/Windows build fix: Threading.h uses int32_t but doesn't include stdint.h.

7:14 AM Changeset in webkit [26771] by hausmann
  • 2 edits in trunk/JavaScriptCore

Fix compilation on Windows when wchar_t is a typedef instead of a native type (triggered by -Zc:wchar_t-).
Don't provide the wchar_t overloads then as they conflict with the unsigned short ones.

4:28 AM Changeset in webkit [26770] by hausmann
  • 2 edits in trunk/JavaScriptCore

Another build fix for the windows/qt build: Apply the same fix as in revision 26686 also to kjs/config.h to disable the disallowctype feature.

4:12 AM Changeset in webkit [26769] by hausmann
  • 3 edits in trunk/WebKit/qt

Fix the windows/qt build by including config.h first to fix wtf/MathExtras.h inclusion.

3:38 AM Changeset in webkit [26768] by hausmann
  • 2 edits in trunk/WebCore

Fix the qt/windows build.

1:58 AM Changeset in webkit [26767] by eseidel
  • 2 edits in trunk/WebKitTools

2007-10-19 Eric Seidel <eric@webkit.org>

Reviewed by Mark Rowe.


Make the GtkLauncher code slightly more readable.

  • GtkLauncher/main.cpp: (setupMainMenu): Added. (setupMainWindowUI): Added. (main):
1:01 AM Changeset in webkit [26766] by mjs
  • 2 edits in trunk/WebKitTools

Rubber stamped by Adam.


  • don't delay-load WebKit in DumpRenderTree.
  • DumpRenderTree/win/DumpRenderTree.vcproj:
12:44 AM Manual Testing created by oliver@apple.com
Random manual tests

Oct 18, 2007:

10:10 PM Changeset in webkit [26765] by sfalken
  • 1 copy in tags/Safari-523.12.3b

New tag.

10:10 PM Changeset in webkit [26764] by sfalken
  • 1 edit in branches/Safari-3-branch/WebKit/win/WebKit.vcproj/VERSION

Bump versions for submit

10:09 PM Changeset in webkit [26763] by sfalken
  • 2 edits in branches/Safari-3-branch/JavaScriptCore

Merged fix from r26760.

7:45 PM Changeset in webkit [26762] by mitz
  • 2 edits in trunk/LayoutTests

Rubber-stamped by Mark Rowe.

removing tests that no longer fail

  • platform/mac-leopard/Skipped:
7:19 PM Changeset in webkit [26761] by justing
  • 4 edits
    2 adds in trunk

WebCore:

Reviewed by Kevin McCullough.

<rdar://problem/5483526>
GoogleDocs: A hang occurs when applying list styling to a selection containing a table and line breaks

  • editing/TextIterator.cpp: (WebCore::TextIterator::exitNode): For selection preservation, we must emit a character between every VisiblePosition. We weren't emitting a space after some tables, because we won't try to emit a space if shouldEmitNewlineAFterNode is true, even if no newline was emitted.

LayoutTests:

Reviewed by Kevin McCullough.


<rdar://problem/5483526>
GoogleDocs: A hang occurs when applying list styling to a selection containing a table and line breaks


Demonstrates fix for the hang:

  • editing/execCommand/5483526-expected.txt: Added.
  • editing/execCommand/5483526.html: Added.


Fixed selection endpoint (problems with selection painting prevent this
from being reflected in the pixel test results):

  • platform/mac/editing/execCommand/5432254-2-expected.txt:
7:14 PM Changeset in webkit [26760] by mjs
  • 2 edits in trunk/JavaScriptCore

Reviewed by Adam.


  • use declspec(thread) for fast thread-local storage on Windows


  • 2.2% speedup on sunspider (on Windows)
  • 7% speedup on the string section
  • 6% speedup on JS iBench


  • fixed <rdar://problem/5473084> PLT on Windows got 2.5% slower between r25406 and r25422
  • fixed at least some of <rdar://5527965? i-Bench JS was 14% slower in 310A11 than 310A10



  • wtf/FastMalloc.cpp: (WTF::getThreadHeap): (WTF::setThreadHeap): (WTF::TCMalloc_ThreadCache::GetCache): (WTF::TCMalloc_ThreadCache::GetCacheIfPresent): (WTF::TCMalloc_ThreadCache::CreateCacheIfNecessary):
5:49 PM Changeset in webkit [26759] by mitz
  • 2 edits in trunk/WebKit

Tiger build fix.

  • WebView/WebDataSource.mm: (-[WebDataSource _MIMETypeOfResponse:]):
5:33 PM Changeset in webkit [26758] by mitz
  • 13 edits in trunk

WebCore:

Reviewed by Adam Roben.

  • fix <rdar://problem/5313523> REGRESSION(Leopard): http/tests/incremental/slow-utf8-text.pl fails on Leopard
  • platform/network/mac/ResourceResponseMac.mm: (WebCore::ResourceResponse::doUpdateResourceResponse): Work around <rdar://problem/5321972> by testing for the case of a response with a MIME type of application/octet-stream and a Content-Type header starting with text/plain and setting the MIME type to text/plain in that case.

WebKit:

Reviewed by Adam Roben.

  • fix <rdar://problem/5313523> REGRESSION(Leopard): http/tests/incremental/slow-utf8-text.pl fails on Leopard
  • WebCoreSupport/WebFrameLoaderClient.mm: (WebFrameLoaderClient::makeDocumentView): Changed to use _responseMIMEType.
  • WebView/WebDataSource.mm: (-[WebDataSource _MIMETypeOfResponse:]): Added. Works around <rdar://problem/5321972> by testing for the case of an NSHTTPURLResponse with a MIMEType of application/octet-stream and a Content-Type header starting with text/plain and returning text/plain as the MIME type in that case. (-[WebDataSource _responseMIMEType]): Added. Used to get the correct response MIME type. (-[WebDataSource _isDocumentHTML]): Changed to use _responseMIMEType. (-[WebDataSource _makeRepresentation]): Ditto. (-[WebDataSource mainResource]): Ditto. (-[WebDataSource subresources]): Changed to use _MIMETypeOfResponse and pass the MIME type explicitly. (-[WebDataSource subresourceForURL:]): Ditto.
  • WebView/WebDataSourcePrivate.h:
  • WebView/WebFrameView.mm: (-[WebFrameView _makeDocumentViewForDataSource:]): Changed to use _responseMIMEType.
  • WebView/WebResource.mm: (-[WebResource _initWithData:URL:response:MIMEType:]): Changed this method to take a MIME type instead of extracting it from the response, so that WebDataSource could pass the correct MIME type.
  • WebView/WebResourcePrivate.h:

WebKitTools:

Reviewed by Adam Roben.

  • fix <rdar://problem/5313523> REGRESSION(Leopard): http/tests/incremental/slow-utf8-text.pl fails on Leopard
  • DumpRenderTree/mac/DumpRenderTree.mm: (dump): Changed to use _responseMIMEType.

LayoutTests:

Reviewed by Adam Roben.

  • removing fixed test
  • platform/mac-leopard/Skipped:
4:11 PM Changeset in webkit [26757] by bdash
  • 2 edits in trunk/WebCore

2007-10-18 Mark Rowe <mrowe@apple.com>

Fix the no-SVG build.

  • css/CSSPrimitiveValueMappings.h: Move the CSSPrimitiveValue implementations for LineCap, LineJoin and WindRule inside #if ENABLE(SVG).
2:59 PM Changeset in webkit [26756] by darin
  • 5 edits in trunk/WebCore

Reviewed by Anders.

  • some small tweaks to the threading implementation

I had trouble building on Windows. Either the problem went away by itself
or one of these changes fixed it.

  • platform/Threading.h: Eliminated the use of friend, and shared a single declaration for the initializeThreading function.
  • platform/pthreads/ThreadingPthreads.cpp: (WebCore::ThreadCondition::wait): Call impl() here.
  • platform/win/ThreadingWin.cpp: Got rid of two globals here with static constructors. Also added a typedef for the type of the function queue. (WebCore::functionQueueMutex): Added function. (WebCore::functionQueue): Ditto. (WebCore::callFunctionsOnMainThread): Use functions instead of using the globals directly. (WebCore::callOnMainThread): Ditto.
  • css/CSSParser.cpp: Had to touch this file to make things build.
2:35 PM Changeset in webkit [26755] by aroben
  • 2 edits in trunk/WebKit/win

Fix <rdar://5547784> ProgIDMacros.h should explicitly use wide strings

Reviewed by Adele.

  • ProgIDMacros.h: Always use wide strings instead of relying on the TEXT macro.
1:43 PM Changeset in webkit [26754] by sfalken
  • 1 copy in tags/Safari-523.12.2b

New tag.

1:43 PM Changeset in webkit [26753] by sfalken
  • 1 edit in branches/Safari-3-branch/WebKit/win/WebKit.vcproj/VERSION

Bump versions for submit

1:29 PM Changeset in webkit [26752] by aroben
  • 3 edits
    1 add in branches/Safari-3-branch/WebCore

Merge r26751

1:26 PM Changeset in webkit [26751] by aroben
  • 3 edits
    1 add in trunk/WebCore

Fix <rdar://5547462> Need to copy Inspector resources in Production builds

I also added an excludes file for the xcopy command to avoid copying
.svn folders.

Reviewed by Geoff.

  • WebCore.vcproj/WebCore.make: Make sure we copy the Inspector resources.
  • WebCore.vcproj/WebCore.vcproj: Pass /exclude:xcopy.excludes to xcopy.
  • WebCore.vcproj/xcopy.excludes: Added.
10:00 AM Changeset in webkit [26750] by darin
  • 4 edits in trunk

WebCore:

Reviewed by Sam.

  • page/DOMWindow.idl: Add ConvertUndefinedOrNullToNullString back for defaultValue.

LayoutTests:

Reviewed by Sam.

  • fast/dom/Window/alert-undefined-expected.txt: Back to expecting empty string for default value.
9:44 AM Changeset in webkit [26749] by zimmermann
  • 2 edits in trunk/WebCore

Build fix. Not reviewed.
Hopefully fix win build by including wtf/MathExtras.h.

9:27 AM Changeset in webkit [26748] by sfalken
  • 1 copy in tags/Safari-523.12.1b

New tag.

9:27 AM Changeset in webkit [26747] by sfalken
  • 1 edit in branches/Safari-3-branch/WebKit/win/WebKit.vcproj/VERSION

Bump versions for submit

9:21 AM Changeset in webkit [26746] by mitz
  • 3 edits
    4 adds in trunk

WebCore:

Reviewed by Nikolas Zimmermann.

Test: fast/text/word-break-soft-hyphen.html

  • rendering/RenderText.cpp: (WebCore::RenderText::calcPrefWidths): Changed to treat soft hyphens as word boundaries. This fixes the bug and is consistent with the fact that run rounding does occur at soft hyphens.

LayoutTests:

Reviewed by Nikolas Zimmermann.

  • fast/text/word-break-soft-hyphen.html: Added.
  • platform/mac/fast/text/word-break-soft-hyphen-expected.checksum: Added.
  • platform/mac/fast/text/word-break-soft-hyphen-expected.png: Added.
  • platform/mac/fast/text/word-break-soft-hyphen-expected.txt: Added.
8:19 AM Changeset in webkit [26745] by zimmermann
  • 10 edits in trunk

Reviewed by Anders.

Fix last layout test failure seen on buildbot "trunk-mac-ppc-release".
Problem: "svg/custom/mask-excessive-malloc.svg -> crashed"

Clamp any ImageBuffer allocation within SVG to the RenderView's visibleSize
to avoid excessive mallocs (in the testcase above 1000000x1000000)

2:57 AM Changeset in webkit [26744] by ap
  • 2 edits in trunk/WebCore

Windows build fix.

  • css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::applyProperty): Add braces around cases that have local variables now.
1:57 AM Changeset in webkit [26743] by ap
  • 2 edits in trunk/WebCore

Release build fix.

  • css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::applyProperty):
1:39 AM Changeset in webkit [26742] by ap
  • 8 edits
    1 add in trunk/WebCore

Reviewed by Darin.

Split most of CSSPrimitiveValue enum mapping out of CSSComputedStyleDeclaration::getPropertyCSSValue()
and CSSStyleSelector::applyProperty() (and their SVG counterparts). This should make the code more readable.

  • WebCore.xcodeproj/project.pbxproj:
  • css/CSSComputedStyleDeclaration.cpp: (WebCore::getPositionOffsetValue): (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
  • css/CSSPrimitiveValue.cpp: (WebCore::CSSPrimitiveValue::CSSPrimitiveValue): (WebCore::CSSPrimitiveValue::init):
  • css/CSSPrimitiveValue.h: (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
  • css/CSSPrimitiveValueMappings.h: Added. (WebCore::CSSPrimitiveValue::CSSPrimitiveValue): (WebCore::CSSPrimitiveValue::operator EBorderStyle): (WebCore::CSSPrimitiveValue::operator CompositeOperator): (WebCore::CSSPrimitiveValue::operator EAppearance): (WebCore::CSSPrimitiveValue::operator EBackgroundBox): (WebCore::CSSPrimitiveValue::operator EBackgroundRepeat): (WebCore::CSSPrimitiveValue::operator EBoxAlignment): (WebCore::CSSPrimitiveValue::operator EBoxDirection): (WebCore::CSSPrimitiveValue::operator EBoxLines): (WebCore::CSSPrimitiveValue::operator EBoxOrient): (WebCore::CSSPrimitiveValue::operator ECaptionSide): (WebCore::CSSPrimitiveValue::operator EClear): (WebCore::CSSPrimitiveValue::operator ECursor): (WebCore::CSSPrimitiveValue::operator EDisplay): (WebCore::CSSPrimitiveValue::operator EEmptyCell): (WebCore::CSSPrimitiveValue::operator EFloat): (WebCore::CSSPrimitiveValue::operator EKHTMLLineBreak): (WebCore::CSSPrimitiveValue::operator EListStylePosition): (WebCore::CSSPrimitiveValue::operator EListStyleType): (WebCore::CSSPrimitiveValue::operator EMarginCollapse): (WebCore::CSSPrimitiveValue::operator EMarqueeBehavior): (WebCore::CSSPrimitiveValue::operator EMarqueeDirection): (WebCore::CSSPrimitiveValue::operator EMatchNearestMailBlockquoteColor): (WebCore::CSSPrimitiveValue::operator ENBSPMode): (WebCore::CSSPrimitiveValue::operator EOverflow): (WebCore::CSSPrimitiveValue::operator EPageBreak): (WebCore::CSSPrimitiveValue::operator EPosition): (WebCore::CSSPrimitiveValue::operator EResize): (WebCore::CSSPrimitiveValue::operator ETableLayout): (WebCore::CSSPrimitiveValue::operator ETextAlign): (WebCore::CSSPrimitiveValue::operator ETextSecurity): (WebCore::CSSPrimitiveValue::operator ETextTransform): (WebCore::CSSPrimitiveValue::operator EUnicodeBidi): (WebCore::CSSPrimitiveValue::operator EUserDrag): (WebCore::CSSPrimitiveValue::operator EUserModify): (WebCore::CSSPrimitiveValue::operator EUserSelect): (WebCore::CSSPrimitiveValue::operator EVisibility): (WebCore::CSSPrimitiveValue::operator EWhiteSpace): (WebCore::CSSPrimitiveValue::operator EWordBreak): (WebCore::CSSPrimitiveValue::operator EWordWrap): (WebCore::CSSPrimitiveValue::operator LineCap): (WebCore::CSSPrimitiveValue::operator LineJoin): (WebCore::CSSPrimitiveValue::operator TextDirection): (WebCore::CSSPrimitiveValue::operator WindRule): (WebCore::CSSPrimitiveValue::operator EAlignmentBaseline): (WebCore::CSSPrimitiveValue::operator EColorInterpolation): (WebCore::CSSPrimitiveValue::operator EColorRendering): (WebCore::CSSPrimitiveValue::operator EDominantBaseline): (WebCore::CSSPrimitiveValue::operator EImageRendering): (WebCore::CSSPrimitiveValue::operator EPointerEvents): (WebCore::CSSPrimitiveValue::operator EShapeRendering): (WebCore::CSSPrimitiveValue::operator ETextAnchor): (WebCore::CSSPrimitiveValue::operator ETextRendering): (WebCore::CSSPrimitiveValue::operator EWritingMode):
  • css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::checkSelector): (WebCore::CSSStyleSelector::checkOneSelector): (WebCore::CSSRuleSet::addRulesFromSheet): (WebCore::convertToLength): (WebCore::CSSStyleSelector::applyDeclarations): (WebCore::CSSStyleSelector::applyProperty): (WebCore::CSSStyleSelector::mapBackgroundAttachment): (WebCore::CSSStyleSelector::mapBackgroundClip): (WebCore::CSSStyleSelector::mapBackgroundComposite): (WebCore::CSSStyleSelector::mapBackgroundOrigin): (WebCore::CSSStyleSelector::mapBackgroundRepeat): (WebCore::CSSStyleSelector::mapBackgroundXPosition): (WebCore::CSSStyleSelector::mapBackgroundYPosition):
  • ksvg2/css/SVGCSSComputedStyleDeclaration.cpp: (WebCore::CSSComputedStyleDeclaration::getSVGPropertyCSSValue):
  • ksvg2/css/SVGCSSStyleSelector.cpp: (WebCore::CSSStyleSelector::applySVGProperty):
1:01 AM Changeset in webkit [26741] by mjs
  • 3 edits in trunk/SunSpider

Reviewed by Eric.


  • Support Windows and Windows browsers.
  • hosted/sunspider-results.html: Display results correctly in IE.
  • sunspider: tweaks to work on Windows, and with spaces in the path.
12:30 AM Changeset in webkit [26740] by eseidel
  • 6 edits
    2 adds in trunk

2007-10-18 Eric Seidel <eric@webkit.org>

Reviewed by Maciej.

Fix crashers in SVGViewSpec::parseViewSpec
http://bugs.webkit.org/show_bug.cgi?id=15504

Test is blocked by bug 15503, landed as:

  • svg/dom/viewspec-parser.html-disabled
  • bindings/scripts/CodeGeneratorObjC.pm: support classes where all parents are interfaces
  • ksvg2/svg/SVGViewSpec.cpp: (WebCore::SVGViewSpec::parseViewSpec):
  • ksvg2/svg/SVGViewSpec.idl: Added.
12:27 AM Changeset in webkit [26739] by mjs
  • 2 edits in trunk/SunSpider

Rubber stamped by Oliver.

  • tests/string-tagcloud.js: Remove stray print()
12:17 AM Changeset in webkit [26738] by mjs
  • 2 edits
    3 adds in trunk/SunSpider

Reviewed by Oliver.


Add some string test cases.

  • tests/string-base64.js: Added. Does base64 encoding and decoding.
  • tests/string-tagcloud.js: Added. Parses a JSON string and generates tagcloud HTML markup based on the data.
  • tests/string-unpack-code.js: Added. Unpack compressed versions of four of the most popular JavaScript libraries.
  • tests/LIST: Added the new tests.

Oct 17, 2007:

10:50 PM Changeset in webkit [26737] by aroben
  • 3 edits in branches/Safari-3-branch/WebKitTools

Merge r26733

9:03 PM Changeset in webkit [26736] by sfalken
  • 1 copy in tags/Safari-523.12b

New tag.

9:03 PM Changeset in webkit [26735] by sfalken
  • 2 edits in branches/Safari-3-branch/WebKit/win

Bump versions for submit

8:56 PM Changeset in webkit [26734] by aroben
  • 2 edits in trunk/WebKitTools

Make it possible to have Windows-specific tests and results

When searching for tests to run and the Skipped file, we will only
look in platform/win and the cross-platform directory. When looking
for expected results, we will look in platform/win, then
platform/mac-leopard, then platform/mac, then finally the
cross-platform directory.

Reviewed by Sam.

  • Scripts/run-webkit-tests: (sub expectedDirectoryForTest): Search in mac-leopard and mac before searching in the cross-platform directory. (sub buildPlatformHierarchy): Removed some unneeded calls to dirname/basename.
8:53 PM Changeset in webkit [26733] by aroben
  • 3 edits in trunk/WebKitTools

Add back the call to register WebKit that we had before WebKitInitializer existed

This is needed to ensure that the right WebKit is used when
instantiating COM objects.

Reviewed by Oliver.

  • DumpRenderTree/win/debug_internal.vsprops: Define DEBUG_WEBKIT_HAS_SUFFIX.
  • DumpRenderTree/win/DumpRenderTree.cpp: (initialize):
8:28 PM Changeset in webkit [26732] by darin
  • 4 edits
    1 add in trunk

WebCore:

Reviewed by Darin, Adam, and Maciej.

http://bugs.webkit.org/show_bug.cgi?id=12988
First element (in document order) is not returned when other duplicate ID-ed elements were created first

Reset the element id cache when an id is added and there is a duplicate for that id.

  • dom/Document.cpp: (WebCore::Document::addElementById):

LayoutTests:

Reviewed by Darin, Adam, and Maciej.

Testcase for:
http://bugs.webkit.org/show_bug.cgi?id=12988
First element (in document order) is not returned when other duplicate ID-ed elements were created first

  • fast/dom/duplicate-ids-document-order.html: Added.
8:20 PM Changeset in webkit [26731] by aroben
  • 2 edits in branches/Safari-3-branch/WebKitTools

Merge r26730

8:17 PM Changeset in webkit [26730] by aroben
  • 2 edits in trunk/WebKitTools

Import File::Basename in webkitdirs since we use it

Reviewed by NOBODY.

  • Scripts/webkitdirs.pm:
6:07 PM Changeset in webkit [26729] by kmccullo
  • 2 edits in trunk/WebKitTools
  • Updated the tiger leaks list to make the internal bots green.
  • Scripts/run-webkit-tests:
5:18 PM Changeset in webkit [26728] by aroben
  • 2 edits in branches/Safari-3-branch/WebKitTools

Merge r26727

5:15 PM Changeset in webkit [26727] by aroben
  • 2 edits in trunk/WebKitTools

Build fix for VC++ Express

Reviewed by NOBODY.

  • FindSafari/FindSafari.vcproj: Explicitly link against advapi32.lib and ole32.lib.
5:10 PM Changeset in webkit [26726] by aroben
  • 2 edits in trunk/WebCore

Fix an ASSERT on launch on Windows

Fix dictated to me by Brady.

  • loader/icon/IconDatabase.cpp: (WebCore::IconDatabase::syncThreadMainLoop): Make sure we hold m_syncLock before going into the loop.
4:51 PM Changeset in webkit [26725] by bdash
  • 2 edits in trunk/WebCore

2007-10-17 Mark Rowe <mrowe@apple.com>

Mac build fix.

  • Configurations/WebCore.xcconfig: Make it possible to include CoreGraphics header files.
4:39 PM Changeset in webkit [26724] by aroben
  • 2 edits in trunk/WebKit/win

Fix for clean builds needed after r26683

Reviewed by NOBODY.

  • WebView.cpp: Remove #include of non-existant file.
4:10 PM Changeset in webkit [26723] by aroben
  • 3 edits in trunk/WebCore

Windows build fix

Reviewed by NOBODY.

  • platform/graphics/AffineTransform.h: Don't #include ApplicationServices.h.
  • platform/graphics/cg/GraphicsContextCG.cpp: Add an #include that's needed now that we're not #including ApplicationServices.h.
3:57 PM Changeset in webkit [26722] by bdash
  • 3 edits
    1 add in trunk/WebCore

2007-10-17 Mark Rowe <mrowe@apple.com>

Gtk build fix. Move non-pthread stubs from Threading.h to ThreadingNone.cpp to prevent
multiple-definition link errors.

  • WebCore.pro:
  • platform/Threading.h:
  • platform/ThreadingNone.cpp: Added. (WebCore::createThread): (WebCore::waitForThreadCompletion): (WebCore::detachThread): (WebCore::Mutex::Mutex): (WebCore::Mutex::~Mutex): (WebCore::Mutex::lock): (WebCore::Mutex::tryLock): (WebCore::Mutex::unlock): (WebCore::ThreadCondition::ThreadCondition):
3:37 PM Changeset in webkit [26721] by aliceli1
  • 4 edits in trunk/LayoutTests

Rubber-stamped by Adele.

Correct uses of initKeyboardEvent for tests that test accesskey.
Accesskey modifier is ctrl for mac and alt for other platforms.

  • fast/events/access-key-self-destruct.html:
  • fast/forms/access-key.html:
  • fast/forms/legend-access-key.html:
2:25 PM Changeset in webkit [26720] by darin
  • 3 edits
    3 adds in trunk

JavaScriptCore:

Reviewed by Mark Rowe.

Test: fast/js/regexp-non-character.html

  • pcre/pcre_compile.c: (check_escape): Take out the checks for valid characters in the \u sequences -- not needed and actively harmful.

LayoutTests:

Reviewed by Mark Rowe.

  • fast/js/regexp-non-character-expected.txt: Added.
  • fast/js/regexp-non-character.html: Added.
  • fast/js/resources/regexp-non-character.js: Added.
2:24 PM Changeset in webkit [26719] by tristan
  • 6 edits in branches/Safari-2.0-dashboard/WebCore

Fixed merge of r24938 and r24946 by initializing the security policy URL
in the right place. Tests from Aaron Sigel now pass.


<rdar://problem/5471815> [WebKitForDashboard clone] data: URLs can gain access to frames in foreign domains

  • khtml/ecma/kjs_window.cpp: (Window::isSafeScript):
  • khtml/khtml_part.cpp: (KHTMLPart::begin): (KHTMLPart::URL): (KHTMLPart::setOpener):
  • khtml/khtml_part.h:
  • khtml/xml/dom_docimpl.cpp: (DocumentImpl::DocumentImpl): (DocumentImpl::initSecurityPolicyURL):
  • khtml/xml/dom_docimpl.h: (DOM::DocumentImpl::securityPolicyURL):
2:15 PM Changeset in webkit [26718] by darin
  • 1 edit in trunk/JavaScriptCore/ChangeLog

Remove stray change marker.

2:13 PM Changeset in webkit [26717] by darin
  • 1 edit in trunk/WebCore/ChangeLog

Remove stray merge marker.

2:05 PM Changeset in webkit [26716] by andersca
  • 10 edits
    2 adds in trunk

JavaScriptCore:

Reviewed by Oliver.

  • wtf/Platform.h: #define USE_PTHREADS on Mac.

WebCore:

Reviewed by Oliver.

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


  • config.h: #define USE_PTHREADS on Windows.


  • loader/icon/IconDatabase.cpp: (WebCore::IconDatabase::getOrCreateIconRecord): (WebCore::IconDatabase::getOrCreatePageURLRecord): Update for mutex changes.


  • platform/Threading.h: (WebCore::): (WebCore::ThreadSafeShared::ThreadSafeShared): (WebCore::ThreadSafeShared::ref): (WebCore::ThreadSafeShared::deref): (WebCore::ThreadSafeShared::hasOneRef): (WebCore::ThreadSafeShared::refCount): (WebCore::ThreadSafeShared::isThreadSafe): Add a new Shared base class that uses a mutex to manage its refcount.


(WebCore::createThread):
(WebCore::waitForThreadCompletion):
(WebCore::detachThread):
New functions for thread creation.


(WebCore::Mutex::Mutex):
(WebCore::Mutex::~Mutex):
(WebCore::Mutex::lock):
(WebCore::Mutex::tryLock):
(WebCore::Mutex::unlock):
Move the definitions to ThreadingPthreads.cpp


(WebCore::ThreadCondition::ThreadCondition):
(WebCore::ThreadCondition::~ThreadCondition):
(WebCore::ThreadCondition::wait):
(WebCore::ThreadCondition::signal):
(WebCore::ThreadCondition::broadcast):
Move the definitions to ThreadingPthreads.cpp


  • platform/pthreads: Added.
  • platform/pthreads/ThreadingPthreads.cpp: Added. Add pthread specific implementation of the thread creation functions, Mutex and ThreadCondition.

win:

Update for locking primitive changes.

  • WebIconDatabase.cpp: (WebIconDatabase::scheduleNotificationDelivery):
2:01 PM Changeset in webkit [26715] by ggaren
  • 8 edits in trunk/JavaScriptCore

Reviewed by Darin Adler.


Merged DeclaredFunctionImp into FunctionImp (the base class) because
the distinction between the two was unused.


Removed codeType() from FunctionImp because FunctionImp and its
subclasses all returned FunctionCode, so it was unused, practically
speaking.


Removed a different codeType() from GlobalFuncImp because it was unused.
(Perhaps it was vestigial from a time when GlobalFuncImp used to
inherit from FunctionImp.)

  • bindings/runtime_method.cpp:
  • bindings/runtime_method.h:
  • kjs/function.cpp: (KJS::): (KJS::FunctionImp::FunctionImp): (KJS::FunctionImp::callAsFunction): (KJS::FunctionImp::construct): (KJS::FunctionImp::execute): (KJS::FunctionImp::processVarDecls):
  • kjs/function.h: (KJS::FunctionImp::implementsConstruct): (KJS::FunctionImp::scope):
  • kjs/function_object.cpp: (FunctionProtoFunc::callAsFunction): (FunctionObjectImp::construct):
  • kjs/nodes.cpp: (FuncDeclNode::processFuncDecl): (FuncExprNode::evaluate):
1:29 PM Changeset in webkit [26714] by aroben
  • 2 edits
    1 add in branches/Safari-3-branch/WebKitTools

Merge r26708

1:29 PM Changeset in webkit [26713] by aroben
  • 13 edits
    6 deletes in branches/Safari-3-branch

Merge r26707

1:29 PM Changeset in webkit [26712] by aroben
  • 4 edits
    3 adds in branches/Safari-3-branch

Merge r26706

1:28 PM Changeset in webkit [26711] by aroben
  • 18 edits in branches/Safari-3-branch

Merge r26684

1:28 PM Changeset in webkit [26710] by hyatt
  • 9 edits in trunk/WebCore

Add support for creating a layer when a transform is in effect. Add support to RenderStyle for
handing back a computed AffineTransform.

Reviewed by Mitz Pettel

  • css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::adjustRenderStyle):
  • rendering/RenderBox.cpp: (WebCore::RenderBox::setStyle):
  • rendering/RenderObject.cpp: (WebCore::RenderObject::RenderObject): (WebCore::RenderObject::requiresLayer): (WebCore::RenderObject::setStyle):
  • rendering/RenderObject.h: (WebCore::RenderObject::hasTransform): (WebCore::RenderObject::setHasTransform):
  • rendering/RenderStyle.cpp: (WebCore::RenderStyle::applyTransform):
  • rendering/RenderStyle.h: (WebCore::RenderStyle::hasTransform):
  • rendering/RenderTableCell.cpp: (WebCore::RenderTableCell::requiresLayer):
  • rendering/RenderTableRow.h: (WebCore::RenderTableRow::requiresLayer):
1:24 PM Changeset in webkit [26709] by darin
  • 2 edits in trunk/WebKit

Reviewed by Mark Rowe.

  • fix <rdar://problem/5183775> Uninitialized memory in -[WebDynamicScrollBarsView updateScrollers]
  • WebView/WebDynamicScrollBarsView.m: (-[WebDynamicScrollBarsView updateScrollers]): Change code path so it doesn't dispatch a method that returns an NSSize passing a nil object. It's safe to do that for functions that return integers or pointers, but not structures.
1:12 PM Changeset in webkit [26708] by aroben
  • 2 edits
    1 add in trunk/WebKitTools

Add a new nightly launcher script for Windows

This new script is for versions of Safari that don't delay-load
WebKit. I had to make FindSafari be able to print out the nightly
launcher script on stdout because Windows shell scripts can't capture
the output from a command into an environment variable.

Reviewed by Steve.

  • FindSafari/FindSafari.cpp: (_tmain): Added /printSafariLauncher option.
  • Scripts/run-webkit-nightly.cmd: Added.
1:12 PM Changeset in webkit [26707] by aroben
  • 13 edits
    6 deletes in trunk

Stop delay-loading WebKit in DRT and teskjs

JavaScriptCore:

Make testkjs not delay-load WebKit

Soon, delay-loading WebKit will be impossible (because we will be
using declspec(thread) for thread-local storage). This change
prepares testkjs for the future.

Reviewed by Sam.

  • JavaScriptCore.vcproj/JavaScriptCore.sln: Removed WebKitInitializer, added FindSafari.
  • JavaScriptCore.vcproj/testkjs/testkjs.vcproj: Don't link against WebKitInitializer, don't delay-load WebKit.
  • kjs/testkjs.cpp: Don't use WebKitInitializer.

WebKitTools:

Replace WebKitInitializer with FindSafari

We now rely on setting the PATH environment variable to tell Windows
where to find WebKit and its dependencies (similar to
DYLD_FRAMEWORK_PATH on Mac).

This change also make DumpRenderTree no longer delay-load WebKit.

Reviewed by Sam.

  • DumpRenderTree/DumpRenderTree.sln: Removed WebKitInitializer, added FindSafari.
  • DumpRenderTree/win/DumpRenderTree.cpp: Don't use WebKitInitializer.
  • DumpRenderTree/win/DumpRenderTree.vcproj: Don't link against WebKitInitializer, don't delay-load WebKit.
  • Scripts/run-javascriptcore-tests: Call setPathForRunningWebKitApp.
  • Scripts/run-webkit-tests: Ditto.
  • Scripts/webkitdirs.pm: (sub setPathForRunningWebKitApp): Added.
  • WebKitInitializer/WebKitInitializer.cpp: Removed.
  • WebKitInitializer/WebKitInitializer.h: Removed.
  • WebKitInitializer/WebKitInitializer.vcproj: Removed.
  • WebKitInitializer/debug.vsprops: Removed.
  • WebKitInitializer/debug_internal.vsprops: Removed.
  • WebKitInitializer/release.vsprops: Removed.

WebKit/win:

Remove WebKitInitializer

Reviewed by Sam.

  • WebKit.vcproj/WebKit.sln:
1:11 PM Changeset in webkit [26706] by aroben
  • 4 edits
    3 adds in trunk

Fix Bug 15532: run-safari fails if Safari is installed in a non-default location

WebKitTools:

Fix Bug 15532: run-safari fails if Safari is installed in a non-default location

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

FindSafari simply prints the location of an installed Safari.exe on
stdout.

Reviewed by Darin.

  • FindSafari/FindSafari.cpp: Copied from WebKitTools/WebKitInitializer/WebKitInitializer.cpp. (getStringValue): (getWebViewCLSID): (getInstalledWebKitDirectory): (_tmain):
  • FindSafari/FindSafari.vcproj: Added.
  • Scripts/webkitdirs.pm: (sub installedSafariPath): Added. Calls FindSafari on Windows.

WebKit/win:

Add FindSafari

Reviewed by Darin.

  • WebKit.vcproj/WebKit.sln:
12:47 PM Changeset in webkit [26705] by hyatt
  • 8 edits in trunk/WebCore

Add support for mapping of the transform CSS property into RenderStyles. Everything is now ready for the front
end to use.

Reviewed by Mitz Pettel

  • WebCore.xcodeproj/project.pbxproj:
  • css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::applyProperty):
  • css/CSSTransformValue.h: (WebCore::CSSTransformValue::type): (WebCore::CSSTransformValue::values):
  • platform/graphics/AffineTransform.cpp: (WebCore::AffineTransform::skew):
  • platform/graphics/AffineTransform.h:
  • rendering/RenderStyle.cpp: (WebCore::StyleTransformData::StyleTransformData): (WebCore::StyleTransformData::operator==): (WebCore::StyleTransformData::transformDataEquivalent):
  • rendering/RenderStyle.h: (WebCore::TransformOperation::~TransformOperation): (WebCore::TransformOperation::operator!=): (WebCore::TransformOperation::isScaleOperation): (WebCore::TransformOperation::isRotateOperation): (WebCore::TransformOperation::isSkewOperation): (WebCore::TransformOperation::isTranslateOperation): (WebCore::TransformOperation::isMatrixOperation): (WebCore::ScaleTransformOperation::ScaleTransformOperation): (WebCore::ScaleTransformOperation::isScaleOperation): (WebCore::ScaleTransformOperation::operator==): (WebCore::ScaleTransformOperation::apply): (WebCore::RotateTransformOperation::RotateTransformOperation): (WebCore::RotateTransformOperation::isRotateOperation): (WebCore::RotateTransformOperation::operator==): (WebCore::RotateTransformOperation::apply): (WebCore::SkewTransformOperation::SkewTransformOperation): (WebCore::SkewTransformOperation::isSkewOperation): (WebCore::SkewTransformOperation::operator==): (WebCore::SkewTransformOperation::apply): (WebCore::TranslateTransformOperation::TranslateTransformOperation): (WebCore::TranslateTransformOperation::isTranslateOperation): (WebCore::TranslateTransformOperation::operator==): (WebCore::TranslateTransformOperation::apply): (WebCore::MatrixTransformOperation::MatrixTransformOperation): (WebCore::MatrixTransformOperation::isMatrixOperation): (WebCore::MatrixTransformOperation::operator==): (WebCore::MatrixTransformOperation::apply): (WebCore::StyleTransformData::operator!=): (WebCore::RenderStyle::transform): (WebCore::RenderStyle::setTransform): (WebCore::RenderStyle::initialTransform):
12:30 PM Changeset in webkit [26704] by aroben
  • 6 edits in trunk

Windows build fix part 2.

JavaScriptCore:

Windows build fix part 2.

Fix was by Darin, reviewed by Anders and Adam.

  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj: Add FastMallocPCRE.cpp to the project, and let Visual Studio have its way with the post-build step.
  • pcre/pcre.h: Don't DLL export the entry points just because this is Win32 -- this is an internal copy of PCRE and should be private.
  • pcre/pcre_compile.c: Fix an uninitialized variable warning -- there's no real problem but it's better to quiet the compiler by tweaking the code slightly than turn off the warning entirely.

WebCore:

  • page/Frame.cpp: I had to touch this file when fixing the Windows build. Checking it in in case it helps others, too.
11:33 AM Changeset in webkit [26703] by eseidel
  • 2 edits in trunk/WebCore

2007-10-17 Eric Seidel <eric@webkit.org>

Reviewed by Mark Rowe.


Remove a couple more uses of svg_dynamic_cast.

No functional changes, no tests.

  • ksvg2/svg/SVGPatternElement.cpp: (WebCore::SVGPatternElement::buildPattern):
11:05 AM Changeset in webkit [26702] by bdash
  • 2 edits in trunk/WebCore

2007-10-17 Mark Rowe <mrowe@apple.com>

Reviewed by Eric and Geoff.

<rdar://problem/5453743> Repro ASSERT in CachedResource::setEncodedSize() loading image in background tab
http://bugs.webkit.org/show_bug.cgi?id=15191

  • loader/DocLoader.cpp: (WebCore::DocLoader::setAutoLoadImages): Don't start a load if the CachedImage is already loading.
10:54 AM Changeset in webkit [26701] by aroben
  • 3 edits in trunk/JavaScriptCore

Windows build fix.

Reviewed by Anders.

  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj: Disable some mismatched signed/unsigned comparison warnings.
  • pcre/pcre_exec.c: (match): #if-out some labels that don't seem to exist.
10:51 AM Changeset in webkit [26700] by justing
  • 5 edits
    4 adds in trunk

WebCore:

Reviewed by Harrison.


<rdar://problem/5481523>
GoogleDocs: Safari hangs when indenting a particular table twice


Fixed by fixing problems with the selection preservation done by IndentOutdentCommand.
It is now more difficult to create selections that cause hangs. Those are covered by:
<rdar://problem/5543472>

  • editing/IndentOutdentCommand.cpp: (WebCore::indexForVisiblePosition): Compute indices from the first VisiblePosition in the document, instead of the first Position. Use rangeCompliantEquivalents when creating the Range that we pass to rangeLength. Tell TextIterator::rangeLength that we're doing selection preservation, so that it will emit characters between all VisiblePositions. (WebCore::IndentOutdentCommand::indentRegion): Fixed a bug where the range and location passed to rangeFromLocationAndLength were reversed. Tell rangeFromLocationAndLength that we're doing doing selection preservation, as above.
  • editing/TextIterator.cpp: (WebCore::CharacterIterator::CharacterIterator): (WebCore::TextIterator::rangeLength): Rename emitSpacesForReplacedElements to forSelectionPreservation, to match the name of the boolean inside TextIterator and to match its meaning after r25522. (WebCore::TextIterator::rangeFromLocationAndLength): Ditto.

LayoutTests:

Reviewed by Harrison.

<rdar://problem/5481523>
GoogleDocs: Safari hangs when indenting a particular table twice

  • editing/execCommand/5481523.html: Added.
  • platform/mac/editing/execCommand/5481523-expected.checksum: Added.
  • platform/mac/editing/execCommand/5481523-expected.png: Added.
  • platform/mac/editing/execCommand/5481523-expected.txt: Added.
12:45 AM Changeset in webkit [26699] by bdash
  • 3 edits in trunk/JavaScriptCore

2007-10-17 Mark Rowe <mrowe@apple.com>

Gtk build fix.

  • JavaScriptCore.pri: Add FastMallocPCRE.cpp.
  • pcre/pcre_get. #if out two functions that depend on pcre_get_stringnumber, which is currently unavailable for UTF-16.
12:12 AM Changeset in webkit [26698] by mjs
  • 4 edits
    3 adds in trunk/SunSpider

Reviewed by Anders.

  • TODO: Updated with info on how to do the stats properly.
  • hosted/sunspider-driver.html: Reduce timeout from 500 to 200 to avoid overly slowing down the benchmark.

Added some 3D-related test cases.


  • tests/3d-cube.js: Added.
  • tests/3d-morph.js: Added.
  • tests/3d-raytrace.js: Added.
  • tests/LIST:

Oct 16, 2007:

10:38 PM Changeset in webkit [26697] by darin
  • 22 edits
    1 move
    8 deletes in trunk/JavaScriptCore

Reviewed by Geoff.

  • merged PCRE changes between 6.4 and 6.5
  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
  • JavaScriptCore.xcodeproj/project.pbxproj: Removed pcre_config.c, pcre_globals.c, pcre_info.c, pcre_maketables.c, pcre_printint.src, pcre_refcount.c, pcre_study.c, pcre_try_flipped.c, pcre_ucp_findchar.c, pcre_version.c, and ucptable.c. Added pcre_ucp_searchfuncs.c.
  • pcre/AUTHORS:
  • pcre/LICENCE:
  • pcre/MERGING:
  • pcre/dftables.c:
  • pcre/pcre-config.h:
  • pcre/pcre.h:
  • pcre/pcre.pri:
  • pcre/pcre_compile.c:
  • pcre/pcre_exec.c:
  • pcre/pcre_fullinfo.c:
  • pcre/pcre_get.c:
  • pcre/pcre_internal.h:
  • pcre/pcre_maketables.c:
  • pcre/pcre_ord2utf8.c:
  • pcre/pcre_tables.c:
  • pcre/pcre_ucp_searchfuncs.c: Copied from pcre/pcre_ucp_findchar.c.
  • pcre/pcre_xclass.c:
  • pcre/ucp.h:
  • pcre/ucpinternal.h:
  • pcre/ucptable.c: Updated with new versions from the PCRE 6.5 release, merged with changes.
  • pcre/pcre_config.c: Removed.
  • pcre/pcre_globals.c: Removed.
  • pcre/pcre_info.c: Removed.
  • pcre/pcre_printint.src: Removed.
  • pcre/pcre_refcount.c: Removed.
  • pcre/pcre_study.c: Removed.
  • pcre/pcre_try_flipped.c: Removed.
  • pcre/pcre_ucp_findchar.c: Removed.
  • pcre/pcre_version.c: Removed.
9:51 PM Changeset in webkit [26696] by darin
  • 5 edits in trunk/WebCore

Reviewed by Mitz.

  • <rdar://problem/5404359> UI thread stall (>60sec) in MLANG running stress test (related to font data caching)
  • platform/Font.cpp: (WebCore::Font::glyphDataForCharacter): Check for a null value for fontData rather than for glyph to detect non-cached entries in the glyph data.
  • platform/gtk/GlyphPageTreeNodeGtk.cpp: (WebCore::GlyphPage::fill):
  • platform/mac/GlyphPageTreeNodeMac.cpp: (WebCore::GlyphPage::fill):
  • platform/win/GlyphPageTreeNodeWin.cpp: (WebCore::GlyphPage::fill): Set fontData to 0 for missing glyph entries. Also fixed the Windows and GTK versions to return the proper value for haveGlyphs.
8:47 PM Changeset in webkit [26695] by bdash
  • 3 edits in trunk/WebCore

2007-10-16 Mark Rowe <mrowe@apple.com>

Gtk build fix. Replace use of assert with ASSERT_NOT_REACHED.

  • platform/gtk/FontCacheGtk.cpp: (WebCore::FontCache::platformInit):
7:02 PM Changeset in webkit [26694] by ddkilzer
  • 2 edits in trunk/WebKit

WebCore:

Reviewed by Timothy.

<rdar://problem/5544354> Wrong delegate method called in WebFrameLoaderClient::dispatchDidReceiveServerRedirectForProvisionalLoad()

  • WebCoreSupport/WebFrameLoaderClient.mm: (WebFrameLoaderClient::dispatchDidReceiveServerRedirectForProvisionalLoad): Fixed selector name.
5:57 PM Changeset in webkit [26693] by kmccullo
  • 5 edits in trunk/WebKitTools

Reviewed by Sam.

  • Minor mac improvements based on observations I made while implementing the Windows code.
  • Drosera/mac/DebuggerApplication.mm: Attach does not need to create the server then hand it to the Client who will retain it, it should just be the client who creates and owns the server. (-[DebuggerApplication attach:]):
  • Drosera/mac/DebuggerClient.h: Can now be created with just a server name.
  • Drosera/mac/DebuggerClient.mm: Creates the server. (-[DebuggerClient initWithServerName:]):
  • Drosera/mac/ServerConnection.mm: Does not need to include 2 header files, but can instead forward declare what it needs.
5:36 PM Changeset in webkit [26692] by aliceli1
  • 2 edits in trunk/LayoutTests

removing fixed tests

  • platform/win/Skipped:
4:52 PM Changeset in webkit [26691] by darin
  • 2 edits in trunk/WebCore

Reviewed by Adam.

  • bindings/objc/WebScriptObject.h: Fix wording and formatting.
4:35 PM Changeset in webkit [26690] by ggaren
  • 5 edits in trunk/JavaScriptCore

Reviewed by Darin Adler.

Removed KJS_VERBOSE because it was getting in the way of readability,
and the messages didn't seem very helpful.

  • kjs/function.cpp: (KJS::FunctionImp::callAsFunction): (KJS::FunctionImp::passInParameters):
  • kjs/lookup.h: (KJS::lookupPut):
  • kjs/object.cpp: (KJS::JSObject::put):
  • kjs/value.h:
4:29 PM Changeset in webkit [26689] by ggaren
  • 4 edits in trunk/JavaScriptCore

Reviewed by Darin Adler.


Removed the Parameter class because it was a redundant wrapper around
Identifier.

  • kjs/function.cpp: (KJS::FunctionImp::passInParameters): (KJS::FunctionImp::getParameterName):
  • kjs/nodes.cpp: (FunctionBodyNode::addParam):
  • kjs/nodes.h: (KJS::FunctionBodyNode::):
4:25 PM Changeset in webkit [26688] by ggaren
  • 34 edits in trunk/JavaScriptCore

Reviewed by Darin Adler.


Global replace of assert with ASSERT.

3:34 PM Changeset in webkit [26687] by aliceli1
  • 6 edits in trunk/LayoutTests

Rubber-stamped by Adele.

fixing incorrect usage of JS String search method.

  • editing/deleting/delete-by-word-001.html:
  • editing/deleting/delete-by-word-002.html:
  • fast/forms/input-text-option-delete.html:
  • fast/forms/listbox-onchange.html:
  • fast/forms/listbox-selection.html:
3:02 PM Changeset in webkit [26686] by darin
  • 2 edits in trunk/WebCore
  • try to fix the Qt build
  • config.h: Don't use DisallowCType.h, since it's incompatible with some C++ headers that are used in some Qt-specific source files.
2:53 PM Changeset in webkit [26685] by darin
  • 2 edits in trunk/WebKitTools

Reviewed by Geoff Garen.

  • Scripts/run-webkit-tests: Added --add-platform-exceptions; useful when you want to turn failing tests into platform-specific test results. Also did a number of tweaks, including fixing a potential bug where expectedDirectoryForTest would take the type of results into account only some of the time.
2:43 PM Changeset in webkit [26684] by aroben
  • 18 edits in trunk

Rename WebKit_debug.dll to WebKit.dll for the Debug configuration

JavaScriptCore:

Updated testkjs for the rename of WebKit_debug.dll to WebKit.dll for the Debug configuration

Reviewed by Kevin McCullough.

  • JavaScriptCore.vcproj/debug.vsprops: Added WebKitDLLConfigSuffix.
  • JavaScriptCore.vcproj/debug_internal.vsprops: Ditto.
  • JavaScriptCore.vcproj/release.vsprops: Ditto.
  • JavaScriptCore.vcproj/testkjs/testkjs.vcproj: Use WebKitDLLConfigSuffix when referring to WebKit.dll, and fixed a typo in the name of icuuc36[_debug].dll.

WebKitTools:

Updated for rename of WebKit_debug.dll to WebKit.dll for the Debug configuration

Reviewed by Kevin McCullough.

  • DumpRenderTree/win/DumpRenderTree.vcproj: Use WebKitDLLConfigSuffix when referring to WebKit.dll.
  • DumpRenderTree/win/debug.vsprops: Added WebKitDLLConfigSuffix.
  • DumpRenderTree/win/debug_internal.vsprops: Ditto.
  • DumpRenderTree/win/release.vsprops: Ditto.
  • Scripts/run-safari: Don't pass /debug to Safari anymore because we never have a _debug suffix on WebKit.dll.
  • WebKitInitializer/WebKitInitializer.cpp: (initializeWebKit): Only use the _debug suffix for WebKit.dll when specified.
  • WebKitInitializer/debug_internal.vsprops: Added DEBUG_WEBKIT_HAS_SUFFIX preprocessor definition.

WebKit/win:

Rename WebKit_debug.dll to WebKit.dll for the Debug configuration

This is needed so that we can stop having Safari delay-load WebKit,
which in turn is needed so that Maciej can land a JavaScript speedup
which breaks delay-loading.

Reviewed by Kevin McCullough.

  • WebKit.vcproj/WebKit.vcproj: Use WebKitDLLConfigSuffix for the name of our DLL and module definition file.
  • WebKit.vcproj/debug.vsprops: Added WebKitDLLConfigSuffix.
  • WebKit.vcproj/debug_internal.vsprops: Ditto.
  • WebKit.vcproj/release.vsprops: Ditto.
2:40 PM Changeset in webkit [26683] by darin
  • 13 edits
    2 deletes in trunk

WebCore:

Reviewed by Adele.

  • editing/Editor.h:
  • editing/Editor.cpp: (WebCore::execTranspose): Added. (WebCore::Editor::transpose): Added. This has the transpose implementation from WebCoreFrameBridge and WebHTMLView, translated into WebCore-style C++ and with a special case for the end of a paragraph.
  • page/Frame.h: Removed unused command() function member.
  • page/FramePrivate.h: Removed unused m_command data member.
  • page/Frame.cpp: Ditto.
  • page/mac/WebCoreFrameBridge.h: Removed rangeOfCharactersAroundCaret method.
  • page/mac/WebCoreFrameBridge.mm: Ditto.
  • WebCore.pro: Removed CommandByName.h/cpp.
  • WebCore.vcproj/WebCore.vcproj: Ditto.
  • WebCore.xcodeproj/project.pbxproj: Ditto.
  • editing/CommandByName.cpp: Removed.
  • editing/CommandByName.h: Removed.

WebKit:

Reviewed by Adele.

  • moved transpose command implementation into WebCore
  • WebView/WebHTMLView.mm: Removed transpose: and replaced it with standard WebCore forwarding.
2:35 PM Changeset in webkit [26682] by ggaren
  • 8 edits
    4 adds in trunk

JavaScriptCore:

Reviewed by Maciej Stachowiak.


Re-structured variable and function declaration code.


Command-line JS iBench shows no regression.


Here are the changes:

  1. Function declarations are now processed at the same time as var declarations -- namely, immediately upon entry to an execution context. This does not match Firefox, which waits to process a function declaration until the declaration's containing block executes, but it does match IE and the ECMA spec. (10.1.3 states that var and function declarations should be processed at the same time -- namely, "On entering an execution context." 12.2 states that "A Block does not define a new execution scope.")
  1. Declaration processing proceeds iteratively now, rather than recursively, storing the nodes is finds in stacks. This will later facilitate an optimization to hold on to the gathered declaration nodes, rather than re-fetching them in every function call. [ http://bugs.webkit.org/show_bug.cgi?id=14868 ]

Modified these tests because they expected the incorrect Mozilla
behavior described above:

  • tests/mozilla/ecma_3/Function/scope-001.js:
  • tests/mozilla/js1_5/Scope/regress-184107.js:

LayoutTests:

Reviewed by Maciej Stachowiak.


Layout tests for http://bugs.webkit.org/show_bug.cgi?id=15478
Declare vars and functions iteratively upon entering an execution context

  • fast/js/function-declarations-expected.txt: Added.
  • fast/js/function-declarations.html: Added.
  • fast/js/var-declarations-expected.txt: Added.
  • fast/js/var-declarations.html: Added.
2:18 PM Changeset in webkit [26681] by aliceli1
  • 3 edits in trunk/LayoutTests

Reviewed by Adele.

Fix <rdar://5134108> "fast/forms/select-accesskey.html and focus-selection-input.html fail on Windows"

Adding code to choose the right accesskey modifier based on a useragent check for existance of mac platform.

  • fast/forms/focus-selection-input.html:
  • fast/forms/select-accesskey.html:
1:53 PM Changeset in webkit [26680] by darin
  • 2 edits in trunk/JavaScriptCore
  • try to fix the GTK build
  • kjs/ustring.cpp: Include ASCIICType.h, not ASCIICtype.h.
1:44 PM Changeset in webkit [26679] by darin
  • 2 edits in trunk/JavaScriptCore
  • try to fix the Windows build
  • kjs/date_object.cpp: (KJS::parseDate): A couple instances of isspace were in here. Not sure why it wasn't failing elsewhere. Changed to isASCIISpace.
1:34 PM Changeset in webkit [26678] by darin
  • 2 edits in trunk/JavaScriptCore
  • try to fix the GTK build
  • kjs/ustring.cpp: Include ASCIICType.h.
1:28 PM Changeset in webkit [26677] by darin
  • 9 edits in trunk

WebKitTools:

Reviewed by Adele.

  • DumpRenderTree/win/EventSender.cpp: (keyDownCallback): Remove now-unneeded control/alt key hack; the tests have been updated.

LayoutTests:

Reviewed by Adele.

  • <rdar://problem/5102974> Layout tests fail on Windows because they have hard-coded Mac-specific modifier keys
  • <rdar://problem/5075449> fast/forms/listbox-onchange.html is failing on Windows due to modifier key differences
  • <rdar://problem/5134134> test 12 in fast/forms/listbox-selection.html fails on Windows
  • editing/deleting/delete-by-word-001.html: Use control key instead of alt key to delete a word on non-Mac platforms. Also use character 8 instead of 127.
  • editing/deleting/delete-by-word-002.html: Ditto.
  • fast/forms/input-text-option-delete.html: Ditto.
  • fast/forms/listbox-onchange.html: Use control key instead of meta key to toggle a single list item on non-Mac platforms.
  • fast/forms/listbox-selection.html: Ditto.
1:13 PM Changeset in webkit [26676] by darin
  • 31 edits
    6 adds in trunk

JavaScriptCore:

Reviewed by Maciej and Geoff (and looked over by Eric).

  • wtf/ASCIICType.h: Added.
  • wtf/DisallowCType.h: Added.
  • kjs/config.h: Include DisallowCType.h.
  • kjs/date_object.cpp: (KJS::skipSpacesAndComments): (KJS::findMonth): (KJS::parseDate):
  • kjs/function.cpp: (KJS::decode):
  • kjs/ustring.cpp: (KJS::UString::toDouble): Use ASCIICType.h functions instead of ctype.h ones.

WebCore:

Reviewed by Maciej and Geoff (and looked over by Eric).

  • ForwardingHeaders/wtf/ASCIICType.h: Added.
  • ForwardingHeaders/wtf/DisallowCType.h: Added.
  • WebCorePrefix.h: Get rid of inclusion of <ctype.h>.
  • config.h: Include DisallowCType.h.
  • css/CSSParser.cpp: (WebCore::ParseString::lower):
  • css/CSSPrimitiveValue.cpp: (WebCore::isCSSTokenizerIdentifier):
  • css/CSSStyleDeclaration.cpp: (WebCore::propertyID):
  • html/HTMLSelectElement.cpp: (WebCore::stripLeadingWhiteSpace):
  • html/HTMLTokenizer.cpp: (WebCore::tagMatch):
  • loader/FTPDirectoryParser.cpp: (WebCore::parseOneFTPLine):
  • loader/TextResourceDecoder.cpp: (WebCore::TextResourceDecoder::checkForHeadCharset):
  • platform/DeprecatedCString.cpp: (WebCore::DeprecatedCString::lower): (WebCore::DeprecatedCString::upper): (WebCore::DeprecatedCString::find): (WebCore::DeprecatedCString::contains):
  • platform/DeprecatedString.cpp: (WebCore::equalCaseInsensitive): (WebCore::isCharacterAllowedInBase): (WebCore::DeprecatedString::find): (WebCore::DeprecatedString::contains): (WebCore::toIntegralType):
  • platform/DeprecatedString.h: (WebCore::DeprecatedChar::isSpace): (WebCore::DeprecatedChar::lower): (WebCore::DeprecatedChar::upper):
  • platform/KURL.cpp: (WebCore::KURL::parse):
  • platform/StringImpl.cpp: (WebCore::isSpace): (WebCore::StringImpl::containsOnlyWhitespace): (WebCore::StringImpl::isLower): (WebCore::StringImpl::lower): (WebCore::StringImpl::find): (WebCore::StringImpl::reverseFind): (WebCore::equalIgnoringCase):
  • platform/TextEncodingRegistry.cpp: (WebCore::TextEncodingNameHash::equal): (WebCore::TextEncodingNameHash::hash): (WebCore::atomicCanonicalTextEncodingName):
  • platform/mac/KeyEventMac.mm: (WebCore::keyIdentifierForKeyEvent):
  • platform/win/KeyEventWin.cpp: (WebCore::keyIdentifierForWindowsKeyCode):
  • platform/win/PopupMenuWin.cpp: (WebCore::isASCIIPrintable): (WebCore::PopupWndProc):
  • plugins/win/PluginViewWin.cpp: (WebCore::capitalizeRFC822HeaderFieldName):
  • rendering/RenderText.cpp: (WebCore::RenderText::widthFromCache): Use ASCIICType.h functions instead of ctype.h ones.

WebKit:

Reviewed by Maciej and Geoff (and looked over by Eric).

  • ForwardingHeaders/wtf/ASCIICType.h: Added.
  • ForwardingHeaders/wtf/DisallowCType.h: Added.
  • WebKitPrefix.h: Include DisallowCType.h.
  • Misc/WebNSURLExtras.mm: (-[NSURL _web_URLWithLowercasedScheme]): Use toASCIILower.
  • WebView/WebHTMLView.mm: (-[WebHTMLView callWebCoreCommand:]): Use toASCIIUpper. (-[WebTextCompleteController filterKeyDown:]): Add a list of specific character codes, instead of using ispunct.
1:05 PM Changeset in webkit [26675] by hyatt
  • 1 edit in trunk/WebCore/css/CSSStyleSelector.cpp

Fix build bustage caused by merge with changes to CSSStyleSelector.cpp

1:04 PM Changeset in webkit [26674] by mitz
  • 3 edits
    4 adds in trunk

WebCore:

Reviewed by Dave Hyatt.

Test: fast/block/float/marquee-shrink-to-avoid-floats.html

  • rendering/RenderObject.cpp: (WebCore::RenderObject::shrinkToAvoidFloats): Changed to return 'true' for <marquee>s with auto width.

LayoutTests:

Reviewed by Dave Hyatt.

  • fast/block/float/marquee-shrink-to-avoid-floats.html: Added.
  • platform/mac/fast/block: Added.
  • platform/mac/fast/block/float: Added.
  • platform/mac/fast/block/float/marquee-shrink-to-avoid-floats-expected.checksum: Added.
  • platform/mac/fast/block/float/marquee-shrink-to-avoid-floats-expected.png: Added.
  • platform/mac/fast/block/float/marquee-shrink-to-avoid-floats-expected.txt: Added.
12:51 PM Changeset in webkit [26673] by bdakin
  • 4 edits
    4 adds in trunk

WebCore:

Reviewed by Darin.

Fix for <rdar://problem/5517118> REGRESSION: 9A570 - Safari renders
Amazon seller page way too small

The font size at Amazon was way too small because the calls to
getComputedStyle and getPropertyValue did not cause the div to
attach because there was a pending stylesheet. The fix is to call
updateLayoutIgnorePendingStylesheets() instead of just
updateLayout().

  • css/CSSComputedStyleDeclaration.cpp: (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):

LayoutTests:

Reviewed by Darin.

Fix for <rdar://problem/5517118> REGRESSION: 9A570 - Safari renders
Amazon seller page way too small

  • fast/css/pendingStylesheetFontSize.html: Added.
  • platform/mac/fast/css/pendingStylesheetFontSize-expected.checksum: Added.
  • platform/mac/fast/css/pendingStylesheetFontSize-expected.png: Added.
  • platform/mac/fast/css/pendingStylesheetFontSize-expected.txt: Added.
12:48 PM Changeset in webkit [26672] by sfalken
  • 2 edits in branches/Safari-3-branch/WebKit/win

Merged fix from r26667.

12:48 PM Changeset in webkit [26671] by kmccullo
  • 2 edits in trunk/WebKitTools
  • Updated leaks list because our internal bot upgraded it's version of leopard and one of the leaks was fixed between that revision and the bot's previous version of leopard.
  • Scripts/run-webkit-tests:
12:46 PM Changeset in webkit [26670] by sfalken
  • 2 edits in branches/Safari-3-branch/WebCore

Merged fix from r26664.

12:46 PM Changeset in webkit [26669] by sfalken
  • 2 edits in branches/Safari-3-branch/WebCore

Merged fix from r26662.

12:45 PM Changeset in webkit [26668] by kmccullo
  • 9 edits
    2 adds
    1 delete in trunk/WebKitTools

Reviewed by Tim.

  • I encapsulated out the server connecton functionality because it is a specific part of Drosera that will be platform dependant until the WebScriptDebugServer can be moved into WebCore and C++. But if it is encapsulated out it can be easily replaced on Windows. So the majority of this patch is moving preexisting functionality.
  • Also I removed the prefix header and changed to use config.h because it is more standard on how we use config.h in windows and it didn't make much sense to keep the prefix header and the config.h
  • Drosera/DebuggerDocument.cpp: (DebuggerDocument::DebuggerDocument):
  • Drosera/DebuggerDocument.h:
  • Drosera/config.h:
  • Drosera/mac/DebuggerApplication.mm: (-[DebuggerApplication attach:]):
  • Drosera/mac/DebuggerClient.h:
  • Drosera/mac/DebuggerClient.mm: (-[DebuggerClient initWithServerConnection:]): (-[DebuggerClient dealloc]): (-[DebuggerClient windowDidLoad]): (-[DebuggerClient windowWillClose:]): (-[DebuggerClient webView:didFinishLoadForFrame:]): (-[DebuggerClient webView:didReceiveTitle:forFrame:]):
  • Drosera/mac/DebuggerDocumentPlatform.mm: (DebuggerDocument::platformPause): (DebuggerDocument::platformResume): (DebuggerDocument::platformStepInto): (DebuggerDocument::platformEvaluateScript): (DebuggerDocument::getPlatformCurrentFunctionStack): (DebuggerDocument::getPlatformLocalScopeVariableNamesForCallFrame): (DebuggerDocument::platformValueForScopeVariableNamed): (DebuggerDocument::platformLog):
  • Drosera/mac/Drosera.pch: Removed.
  • Drosera/mac/Drosera.xcodeproj/project.pbxproj:
  • Drosera/mac/ServerConnection.h: Added.
  • Drosera/mac/ServerConnection.mm: Added. (-[ServerConnection initWithServerName:]): (-[ServerConnection dealloc]): (-[ServerConnection setGlobalContext:]): (-[ServerConnection pause]): (-[ServerConnection resume]): (-[ServerConnection stepInto]): (-[ServerConnection switchToServerNamed:]): (-[ServerConnection applicationTerminating:]): (-[ServerConnection serverConnectionDidDie:]): (-[ServerConnection webView:didLoadMainResourceForDataSource:]): (-[ServerConnection webView:didParseSource:baseLineNumber:fromURL:sourceId:forWebFrame:]): (-[ServerConnection webView:failedToParseSource:baseLineNumber:fromURL:withError:forWebFrame:]): (-[ServerConnection webView:didEnterCallFrame:sourceId:line:forWebFrame:]): (-[ServerConnection webView:willExecuteStatement:sourceId:line:forWebFrame:]): (-[ServerConnection webView:willLeaveCallFrame:sourceId:line:forWebFrame:]): (-[ServerConnection webView:exceptionWasRaised:sourceId:line:forWebFrame:]): (-[ServerConnection currentFrame]): (-[ServerConnection webScriptAttributeKeysForScriptObject:]): (-[ServerConnection knownServers]):
12:36 PM Changeset in webkit [26667] by honeycutt
  • 2 edits in trunk/WebKit/win

2007-10-15 Jon Honeycutt <jhoneycutt@apple.com>

Reviewed by Ollie.

<rdar://5530789>: REGRESSION(303-310A19): Crash opening .wma files with
MediaPlayer for the first time

Failure to setup the stream in PluginView::didReceiveResponse will lead,
in a full-page plugin, to the main document load being cancelled. This
is the case with at least two versions of Windows Media Player, which
cancels the stream and brings up its own "Welcome to Windows Media
Player" dialog.


As part of the main document load cancellation, m_pluginView is set to
null, and the crash came from dereferencing this pointer. This patch
adds a null check.

  • WebFrame.cpp: (WebFrame::finishedLoading): Fix some typos (WebFrame::committedLoad): Added a null check
12:06 PM Changeset in webkit [26666] by hyatt
  • 4 edits in trunk/WebCore

Get transform-origin(x/y) mapped into the front end RenderStyle. Adds a new StyleTransformData struct that
holds transform-origin (and that will also eventually hold the parsed transform operations as well).

Reviewed by Beth

  • css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::applyProperty):
  • rendering/RenderStyle.cpp: (WebCore::StyleTransformData::StyleTransformData): (WebCore::StyleTransformData::operator==): (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData): (WebCore::StyleRareNonInheritedData::operator==): (WebCore::RenderStyle::RenderStyle): (WebCore::RenderStyle::diff):
  • rendering/RenderStyle.h: (WebCore::StyleTransformData::operator!=): (WebCore::RenderStyle::transformOriginX): (WebCore::RenderStyle::transformOriginY): (WebCore::RenderStyle::setTransformOriginX): (WebCore::RenderStyle::setTransformOriginY): (WebCore::RenderStyle::initialTransformOriginX): (WebCore::RenderStyle::initialTransformOriginY):
11:30 AM Changeset in webkit [26665] by adele
  • 4 edits in trunk

WebCore:

Reviewed by Alice.

Fix for <rdar://problem/5538793> REGRESSION: Failing layout test: fast/forms/select-change-listbox-to-popup.html (due to landing feature branch)

  • html/HTMLSelectElement.cpp: (WebCore::HTMLSelectElement::parseMappedAttribute): When switching between types of select elements, call setRecalcListItems since recalcListItems updates the default selection in different ways for the different controls.

LayoutTests:

Reviewed by Alice.

Updating with correct results for:
<rdar://problem/5538793> REGRESSION: Failing layout test: fast/forms/select-change-listbox-to-popup.html (due to landing feature branch)

  • platform/mac/fast/forms/select-change-listbox-to-popup-expected.txt:
11:22 AM Changeset in webkit [26664] by aliceli1
  • 2 edits in trunk/WebCore

rubber-stamped by Darin.

flipping my previous fix around so that mac is special-cased instead of win.

  • dom/Document.cpp: (WebCore::Document::defaultEventHandler):
11:21 AM Changeset in webkit [26663] by hyatt
  • 3 edits in trunk/WebCore

Clean up transform parsing. Fix a crash, ditch the extra parse context class, and use RefPtr/PassRefPtr more
to simplify the code.

Reviewed by aroben

  • css/CSSParser.cpp: (WebCore::CSSParser::parseValue): (WebCore::CSSParser::parseTransform):
  • css/CSSParser.h:
10:57 AM Changeset in webkit [26662] by aliceli1
  • 2 edits in trunk/WebCore

Reviewed by Adele.

fixed <rdar://5085596> Accesskeys don't work


  • dom/Document.cpp: (WebCore::Document::defaultEventHandler): accesskey modifier is platform-depedent.
9:55 AM Changeset in webkit [26661] by sullivan
  • 4 edits in trunk/WebKit

Reviewed by Adam Roben


Cleaned up localizable strings

  • English.lproj/Localizable.strings: updated
  • StringsNotToBeLocalized.txt: updated
  • WebKit.xcodeproj/project.pbxproj: StringsNotToBeLocalized.txt recently moved but project file wasn't updated to match; now it is
9:00 AM Changeset in webkit [26660] by bdash
  • 1 copy in tags/WebCore-419.2.5-dashboard/WebCore

New tag (part 2).

8:59 AM Changeset in webkit [26659] by bdash
  • 1 add in tags/WebCore-419.2.5-dashboard

New tag (part 1).

8:57 AM Changeset in webkit [26658] by bdash
  • 2 edits in branches/Safari-2.0-dashboard/WebCore

Versioning

8:57 AM Changeset in webkit [26657] by bdash
  • 3 edits in branches/Safari-2.0-dashboard/WebCore

2007-10-16 Mark Rowe <mrowe@apple.com>

Reinstate equalIgnoringCase that was added as part of r25691 but subsequently rolled out.
Other merged changes depend on it existing.

4:19 AM Changeset in webkit [26656] by ddkilzer
  • 1 edit in trunk/WebKit/ChangeLog-2007-10-14

Removed conflict markers.

12:34 AM Changeset in webkit [26655] by sfalken
  • 3 edits in branches/Safari-3-branch/WebCore

Merged fix from r26651.

12:04 AM Changeset in webkit [26654] by ap
  • 2 edits
    1 move
    2 deletes in trunk/LayoutTests

Reviewed by Maciej.

http://bugs.webkit.org/show_bug.cgi?id=15506
editing/pasteboard/paste-into-anchor-text.html accesses an external resource

Removed the external resource reference and made the test dump as text.

  • editing/pasteboard/paste-into-anchor-text-expected.txt: Copied from platform/mac/editing/pasteboard/paste-into-anchor-text-expected.txt.
  • editing/pasteboard/paste-into-anchor-text.html:
  • platform/mac/editing/pasteboard/paste-into-anchor-text-expected.checksum: Removed.
  • platform/mac/editing/pasteboard/paste-into-anchor-text-expected.png: Removed.
  • platform/mac/editing/pasteboard/paste-into-anchor-text-expected.txt: Removed.

Oct 15, 2007:

10:53 PM Changeset in webkit [26653] by ddkilzer
  • 1 edit
    1 add in trunk/WebKitTools

WebKitTools:

Reviewed by Eric.

  • Scripts/bisect-builds: Added.
10:17 PM Changeset in webkit [26652] by bdash
  • 2 edits in trunk/WebCore

2007-10-15 Mark Rowe <mrowe@apple.com>

Reviewed by John.

<rdar://problem/5494040> Reproducible assertion failure in WebCore::IconDatabase::iconForPageURL

A race condition between icon database import and Safari asking for an icon for the empty URL
was resulting in a PageURLRecord being created for a URL that can never be retained. By enforcing
that PageURLRecord's cannot be created for the empty URL we can prevent the assertion from failing.

  • loader/icon/IconDatabase.cpp: (WebCore::IconDatabase::iconForPageURL): (WebCore::IconDatabase::getOrCreatePageURLRecord): Bail out early if the URL is empty. (WebCore::IconDatabase::performURLImport): Don't create the PageURLRecord if the URL is empty.
9:51 PM Changeset in webkit [26651] by honeycutt
  • 3 edits in trunk/WebCore

2007-10-15 Jon Honeycutt <jhoneycutt@apple.com>

Reviewed by Ollie.

Use OwnPtr for m_deliveryData, and fix a bug where we were memmove()ing
over m_deliveryData instead of its data buffer

  • plugins/win/PluginStreamWin.cpp: (WebCore::PluginStreamWin::~PluginStreamWin): Don't delete m_deliveryData (WebCore::PluginStreamWin::deliverData): Fix memmove() call (WebCore::PluginStreamWin::didReceiveData): Assign using OwnPtr::set()
  • plugins/win/PluginStreamWin.h: Use OwnPtr
9:14 PM Changeset in webkit [26650] by bdash
  • 4 edits in branches/Safari-3-branch

Versioning.

9:11 PM Changeset in webkit [26649] by bdash
  • 1 copy in tags/Safari-4523.12

New tag.

8:42 PM Changeset in webkit [26648] by sfalken
  • 2 edits in branches/Safari-3-branch/WebCore

Merged fix from r26646.

8:39 PM Changeset in webkit [26647] by bdash
  • 2 edits in branches/Safari-3-branch/WebKit

Merge r26645.

8:39 PM Changeset in webkit [26646] by sfalken
  • 2 edits in trunk/WebCore

Reviewed by Oliver.

Add missing null check.

  • platform/network/cf/AuthenticationCF.cpp: (WebCore::core):
8:30 PM Changeset in webkit [26645] by kdecker
  • 2 edits in trunk/WebKit

Reviewed by Darin Adler.


Fixed: <rdar://problem/5520541> REGRESSION: Broken image when forwarding certain email on Tiger


  • WebCoreSupport/WebFrameBridge.mm: The problem was that we were loading Mail's WebKit plug-in too soon, which borked some necessary housekeeping on behalf of Mail. The fix is to add a quirk that treats Tiger Mail's WebKit plug-in like a Netscape plug-in, thus ensuring the plug-in will load during first layout and not attach time. For this plug-in, loading at first layout is expected and is consistent with Safari 2 behavior.
7:34 PM Changeset in webkit [26644] by bdash
  • 3 edits in trunk/WebCore

2007-10-15 Mark Rowe <mrowe@apple.com>

Fix the no-SVG build again. Add new transform CSS properties to the switch statements.

  • css/CSSComputedStyleDeclaration.cpp: (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
  • css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::applyProperty):
6:53 PM Changeset in webkit [26643] by bdash
  • 1 copy in tags/WebCore-419.2.3-dashboard/WebCore

New tag (part 2).

6:53 PM Changeset in webkit [26642] by bdash
  • 1 add in tags/WebCore-419.2.3-dashboard

New tag (part 1).

6:51 PM Changeset in webkit [26641] by bdash
  • 2 edits in branches/Safari-2.0-dashboard/WebCore

Versioning.

6:49 PM Changeset in webkit [26640] by bdash
  • 8 edits in branches/Safari-2.0-dashboard/WebCore

2007-10-15 Mark Rowe <mrowe@apple.com>

Roll out r25691, the merge of r24938 and r24946.

6:30 PM Changeset in webkit [26639] by mjs
  • 3 edits
    21 adds in trunk

JavaScriptCore:

Reviewed by Darin.


  • kjs/testkjs.cpp: (TestFunctionImp::callAsFunction): Implement "load" for compatibility with SpiderMonkey. (TestFunctionImp::): ditto (doIt): ditto (kjsmain): Drop useless --> from output.

SunSpider:

Reviewed by Darin.


A start on a new JavaScript benchmark, with standalone and
browser-hosted drivers.


The test content is still incomplete and the drivers could use
some more features but there is enough here to make a good start.


The drivers compute a 95% confidence interval on the mean for the
whole test, each category, and each individual test to make it
easier to tell whether differences are statistically
significant. The confidence interval can be narrowed by running
the test more times.


  • TODO: Added. Remaining things that need to be done.
  • sunspider: Added. Perl script that acts as the standalone test driver.
  • resources/sunspider-standalone-driver.js: Added. JavaScript part of standalone test driver.
  • resources/sunspider-analyze-results.js: Added. JavaScript statistical analysis code.
  • resources/TEMPLATE.html: Added. Template for browser-hosted tests.
  • make-hosted: Added. Script to generate browser-hosted tests.
  • hosted/sunspider.html: Added. Start page for browser-hosted test.
  • hosted/sunspider-driver.html: Added. Driver for browser-hosted tests.
  • hosted/sunspider-results.html: Added. Results page for browser-hosted tests.
  • hosted/sunspider-record-result.js: Added. Helper file for browser-hosted tests.
  • tests/LIST: Added. List of tests to use.
  • tests/bitops-3bit-bits-in-byte.js: Added. Some initial test content.
  • tests/bitops-bits-in-byte.js: Added. Ditto.
  • tests/bitops-bitwise-and.js: Added. Ditto.
  • tests/math-cordic.js: Added. Ditto.

WebKitTools:

Reviewed by Darin.

  • Scripts/run-sunspider: Added. Wrapper to run sunspider on the current development or release build of JavaScriptCore.
4:54 PM Changeset in webkit [26638] by darin
  • 4 edits in trunk/WebCore

Reviewed by Mitz.

  • platform/Font.h:
  • platform/Font.cpp: (WebCore::WidthIterator::advance): Eliminated uneeded attemptFontSubstitution and cluster parameters to the glyphDataForCharacter function. (WebCore::Font::glyphDataForCharacter): Removed the cluster parameter and attemptFontSubstitution parameter. Removed the isUpper check before calling toUpper in the small caps code path. Split up the inner loop into separate copies for non-small-caps and small caps. Broke out the system fallback page handling so it's not inside the loop. Changed system fallback so it uses the character and breaks it up into UTF-16 as needed, instead of using a passed-in "character cluster".
  • platform/TextStyle.h: (WebCore::TextStyle::TextStyle): Removed attemptFontSubstitution. (WebCore::TextStyle::applyWordRounding): Ditto.
4:52 PM Changeset in webkit [26637] by ggaren
  • 6 edits in trunk/LayoutTests

Fixed layout test for reals. Changed \r\n to \n, fixing mass confusion.

  • fast/js/do-while-expression-value-expected.txt:
  • fast/js/do-while-expression-value.html:
  • fast/js/nested-function-scope.html:
  • fast/js/while-expression-value-expected.txt:
  • fast/js/while-expression-value.html:
4:18 PM Changeset in webkit [26636] by honeycutt
  • 2 edits in trunk/WebCore

2007-10-15 Jon Honeycutt <jhoneycutt@apple.com>

Reviewed by Ollie.

Remove an operator precedence warning on Windows

  • editing/markup.cpp: (WebCore::escapeContentText): Use (a) | (b) (WebCore::appendEscapedContent): Use (a) | (b)
3:59 PM Changeset in webkit [26635] by kmccullo
  • 5 edits in trunk

WebCore:

Reviewed by Darin.

  • <rdar://problem/5238818> window.resizeTo doesn't restrict the resized window to the size of the screen
  • Now we take the doc into account when resizing.
  • Also I found an issue where we would resize to outside the window, because the resize would be smaller than the window size but the location of the window would make the resize go off-screen. Now we move the window back into the screen.
  • bindings/js/kjs_window.cpp: (KJS::adjustWindowRect): (KJS::WindowFunc::callAsFunction):

LayoutTests:

Reviewed by Darin.

  • <rdar://problem/5238818> window.resizeTo doesn't restrict the resized window to the size of the screen
  • Now we take the dock into account when resizing.
  • Also I found an issue where we would resize to outside the window, because the resize would be smaller than the window size but the location of the window would make the resize go off-screen. Now we move the window back into the screen.
  • fast/dom/Window/window-resize-expected.txt:
  • fast/dom/Window/window-resize.html:
3:36 PM Changeset in webkit [26634] by sfalken
  • 2 edits in branches/Safari-3-branch/WebCore

Merged fix from r26632.

3:34 PM Changeset in webkit [26633] by bdash
  • 2 edits in trunk/WebKitTools

2007-10-15 Mark Rowe <mrowe@apple.com>

Reviewed by Sam.

Fix 'run-webkit-tests --qt' complaining about the --qt argument.

  • Scripts/webkitdirs.pm:
  • Change checkArgv to remove the options from @ARGV to prevent them from interfering with further option processing.
  • Fix logic error in determineIsQt that would prevent it from bailing out early.
  • Change isOSX to mean OS X and not Qt or Gtk. Most of our uses of isOSX assume that this is the meaning already, so this change fixes several broken areas of the scripts including 'run-webkit-tests --qt' on a Mac incorrectly using the Mac results, and 'run-webkit-tests --gtk' attempting to build the Mac DumpRenderTree.
3:27 PM Changeset in webkit [26632] by honeycutt
  • 2 edits in trunk/WebCore

2007-10-15 Jon Honeycutt <jhoneycutt@apple.com>

Reviewed by Anders.

<rdar://5510700> Repro crash loading embedded Windows Media Player
content

Anders noticed that the older Windows Media Player plugin (npdsplay.dll)
will crash if it receives its resource requests out of order, whereas we
were immediately fulfilling untargeted, non-JavaScript requests and
scheduling targeted or JavaScript resource requests. Implement his
suggested fix, which is to schedule PluginRequests for all resource
requests

  • plugins/win/PluginViewWin.cpp: (WebCore::getString): (WebCore::PluginViewWin::performRequest): If this non-JavaScript request has no target, create a stream for it (WebCore::PluginViewWin::load): Schedule PluginRequests for all resource requests
3:12 PM Changeset in webkit [26631] by bdash
  • 2 edits in trunk/WebCore

2007-10-15 Mark Rowe <mrowe@apple.com>

Gtk and Qt build fix. Add new .cpp file to project.

  • WebCore.pro:
2:59 PM Changeset in webkit [26630] by sullivan
  • 2 edits in trunk/WebCore
  • platform/mac/FontDataMac.mm: D'oh! Added missing #import to fix build
2:42 PM Changeset in webkit [26629] by sullivan
  • 4 edits in trunk/WebKit

Reviewed by Geoff Garen


Replaced NS_DURING/NS_HANDLER with @try/@catch throughout WebKit

I made the following changes:

  • replaced NS_DURING with @try, and added opening brace if there wasn't one
  • replaced NS_HANDLER with @catch (NSException *localException), and added braces if there weren't any
  • removed NS_ENDHANDLER, and added a closing brace if there wasn't one
  • in a couple of places, fixed indentation therein
  • Misc/WebIconDatabase.mm: (objectFromPathForKey):
  • WebView/WebHTMLView.mm: (-[WebHTMLView drawSingleRect:]): (-[WebHTMLView beginDocument]): (-[WebHTMLView deleteToMark:]):
  • WebView/WebView.mm: (-[WebView initWithCoder:]):
2:41 PM Changeset in webkit [26628] by sullivan
  • 2 edits in trunk/WebCore

Reviewed by Geoff

  • platform/mac/FontDataMac.mm: (WebCore::FontData::smallCapsFontData): replace NS_DURING/NS_HANDLER with WebCore-style BEGIN/END_BLOCK_OBJC_EXCEPTIONS
2:25 PM Changeset in webkit [26627] by ggaren
  • 2 edits in trunk/LayoutTests

Changed line ending style of results file to fix layout test that was
failing locally on my machine.


  • fast/js/nested-function-scope-expected.txt:
2:15 PM Changeset in webkit [26626] by hyatt
  • 7 edits
    2 adds in trunk/WebCore

The CSS WG has been discussing the concept of rotation. In the latest draft specification, two properties
have been introduced: rotation and rotation-point. I believe these properties should be generalized to
allow for arbitrary transformations (e.g., translation, skew, rotate, scale).

This patch adds support for the back-end parsing of two new CSS properties: transform and transform-origin.
They are directly analogous to the properties specified by the CSS WG, except that they are designed to allow
for arbitrary affine transforms rather than just rotation.

Reviewed by Beth Dakin

  • WebCore.xcodeproj/project.pbxproj:
  • WebCore.vcproj/WebCore.vcproj:
  • css/CSSComputedStyleDeclaration.cpp: (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
  • css/CSSParser.cpp: (WebCore::CSSParser::parseValue): (WebCore::TransformParseContext:::m_list): (WebCore::TransformParseContext::list): (WebCore::TransformParseContext::failed): (WebCore::TransformParseContext::addValue): (WebCore::TransformOperationInfo::TransformOperationInfo): (WebCore::TransformOperationInfo::type): (WebCore::TransformOperationInfo::argCount): (WebCore::TransformOperationInfo::unit): (WebCore::TransformOperationInfo::unknown): (WebCore::TransformOperationInfo::hasCorrectArgCount): (WebCore::CSSParser::parseTransform): (WebCore::CSSParser::parseTransformOrigin):
  • css/CSSParser.h:
  • css/CSSPropertyNames.in:
  • css/CSSTransformValue.cpp: Added. (WebCore::CSSTransformValue::CSSTransformValue): (WebCore::CSSTransformValue::~CSSTransformValue): (WebCore::CSSTransformValue::addValue): (WebCore::CSSTransformValue::cssText):
  • css/CSSTransformValue.h: Added. (WebCore::CSSTransformValue::):
1:58 PM Changeset in webkit [26625] by ggaren
  • 2 edits in trunk/JavaScriptCore

Removed unnecessary #include.

  • API/JSObjectRef.cpp:
1:57 PM Changeset in webkit [26624] by ggaren
  • 2 edits in trunk/JavaScriptCore

Double-reverse build fix. My tree was out of date.

  • kjs/nodes.cpp: (NumberNode::evaluate):
1:53 PM Changeset in webkit [26623] by bdash
  • 3 edits in trunk/WebCore

2007-10-15 Mark Rowe <mrowe@apple.com>

Reviewed by Oliver.

Fix the no-SVG build.

  • DerivedSources.make: Use the correct file as input to generate CSSPropertyNames.h.
  • rendering/RenderObject.cpp: (WebCore::objectIsRelayoutBoundary):
1:47 PM Changeset in webkit [26622] by ggaren
  • 2 edits in trunk/JavaScriptCore

Build fix.

  • kjs/nodes.cpp: (NumberNode::evaluate):
1:44 PM Changeset in webkit [26621] by ggaren
  • 5 edits
    2 adds in trunk

JavaScriptCore:

Reviewed by Darin Adler.


Removed surprising self-named "hack" that made nested functions
available as named properties of their containing functions, and placed
containing function objects in the scope chains of nested functions.


There were a few reasons to remove this "hack:"

  1. It contradicted FF, IE, and the ECMA spec.
  1. It incurred a performance penalty, since merely parsing a function required parsing its body for nested functions (and so on).
  1. SVN history contains no explanation for why it was added. It was just legacy code in a large merge a long, long time ago.

[ Patch broken off from http://bugs.webkit.org/show_bug.cgi?id=14868 ]

  • kjs/nodes.cpp: (FuncDeclNode::processFuncDecl):

LayoutTests:

Reviewed by Darin Adler.


Removed surprising self-named "hack" that made nested functions
available as named properties of their containing functions, and placed
containing function objects in the scope chains of nested functions.


[ Patch broken off from http://bugs.webkit.org/show_bug.cgi?id=14868 ]

Changed this test to reflect correct behavior:

  • fast/js/kde/function-expected.txt:
  • fast/js/kde/resources/function.js: (Also removed tab characters.)

Added this test to flesh out the behavior more:

  • fast/js/nested-function-scope-expected.txt: Added.
  • fast/js/nested-function-scope.html: Added.
1:41 PM Changeset in webkit [26620] by ggaren
  • 4 edits in trunk/JavaScriptCore

Reviewed by Darin Adler.


Removed the concept of AnonymousCode. It was unused, and it doesn't
exist in the ECMA spec.


[ Patch broken off from http://bugs.webkit.org/show_bug.cgi?id=14868 ]

  • kjs/Context.cpp: (KJS::Context::Context):
  • kjs/function.h: (KJS::):
  • kjs/nodes.cpp: (ReturnNode::execute):
1:40 PM Changeset in webkit [26619] by ggaren
  • 3 edits
    2 adds in trunk

JavaScriptCore:

Reviewed by Darin Adler.


Made function parameters DontDelete. This matches FF and the vague
description in ECMA 10.1.3. It's also required in order to make
symbol table based lookup of function parameters valid. (If the
parameters aren't DontDelete, you can't guarantee that you'll find
them later in the symbol table.)

[ Patch broken off from http://bugs.webkit.org/show_bug.cgi?id=14868 ]

  • kjs/function.cpp: (KJS::FunctionImp::passInParameters):

LayoutTests:

Committed revision 26618.

Made function parameters DontDelete.

  • fast/js/delete-function-parameter-expected.txt: Added.
  • fast/js/delete-function-parameter.html: Added.
1:39 PM Changeset in webkit [26618] by ggaren
  • 2 edits in trunk/JavaScriptCore

Reviewed by Maciej Stachowiak.


Some Vector optimizations. These are especially important when using
Vector as a stack for implementing recursive algorithms iteratively.


[ Broken off from http://bugs.webkit.org/show_bug.cgi?id=14868 ]

  1. Added shrink(), which is a version of resize() that you can call to save a branch / improve code generation and inlining when you know that the vector is not getting bigger.


  1. Changed subclassing relationship in VectorBuffer to remove a call to fastFree() in the destructor for the inlineCapacity != 0 template specialization. This brings inline Vectors one step closer to true stack-allocated arrays.


Also changed abort() to CRASH(), since the latter works better.

  • wtf/Vector.h: (WTF::VectorBufferBase::allocateBuffer): (WTF::VectorBufferBase::deallocateBuffer): (WTF::VectorBufferBase::VectorBufferBase): (WTF::VectorBufferBase::~VectorBufferBase): (WTF::): (WTF::VectorBuffer::VectorBuffer): (WTF::VectorBuffer::~VectorBuffer): (WTF::VectorBuffer::deallocateBuffer): (WTF::VectorBuffer::releaseBuffer): (WTF::Vector::clear): (WTF::Vector::removeLast): (WTF::::operator): (WTF::::fill): (WTF::::shrink):
1:36 PM Changeset in webkit [26617] by ggaren
  • 4 edits
    4 adds in trunk

JavaScriptCore:

Reviewed by Maciej Stachowiak.


Fixed http://bugs.webkit.org/show_bug.cgi?id=15490
Iteration statements sometimes incorrectly evaluate to the empty value
(KDE r670547).


[ Broken off from http://bugs.webkit.org/show_bug.cgi?id=14868 ]


This patch is a merge of KDE r670547, with substantial modification
for performance.


It fixes do-while statements to evaluate to a value. (They used
to evaluate to the empty value in all cases.)

It also fixes SourceElementsNode to maintain the value of abnormal
completions like "break" and "continue."


It also re-works the main execution loop in SourceElementsNode so that
it (1) makes a little more sense and (2) avoids unnecessary work. This
is a .28% speedup on command-line JS iBench.

  • kjs/nodes.cpp: (DoWhileNode::execute): (SourceElementsNode::execute):

LayoutTests:

Reviewed by Maciej Stachowiak.


Layout tests for http://bugs.webkit.org/show_bug.cgi?id=15490
Iteration statements sometimes incorrectly evaluate to the empty value
(KDE r670547)

  • fast/js/do-while-expression-value-expected.txt: Added.
  • fast/js/do-while-expression-value.html: Added.
  • fast/js/while-expression-value-expected.txt: Added.
  • fast/js/while-expression-value.html: Added.
12:02 PM Changeset in webkit [26616] by darin
  • 5 edits in trunk

WebCore:

Reviewed by Sam.

Test: fast/dom/Window/alert-undefined.html

  • page/DOMWindow.idl: Remove ConvertUndefinedOrNullToNullString from alert, confirm, and prompt. It turns out that the default behavior is what the other browsers do (browsers tested: IE 7, Firefox 2).

LayoutTests:

Reviewed by Sam.

  • fast/dom/Window/alert-undefined.html: Added tests of null and both confirm and prompt.
  • fast/dom/Window/alert-undefined-expected.txt: Updated.
11:47 AM Changeset in webkit [26615] by darin
  • 4 edits in trunk/WebKitTools

Reviewed by Sam.

  • added logging of window.prompt and window.confirm
  • DumpRenderTree/mac/UIDelegate.mm: (-[UIDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:]): Implement the recommended delegate rather than the deprecated one. (-[UIDelegate webView:runJavaScriptConfirmPanelWithMessage:initiatedByFrame:]): Added. (-[UIDelegate webView:runJavaScriptTextInputPanelWithPrompt:defaultText:initiatedByFrame:]): Added.
  • DumpRenderTree/win/UIDelegate.h:
  • DumpRenderTree/win/UIDelegate.cpp: (UIDelegate::runJavaScriptAlertPanelWithMessage): Got rid of unnecessary check for null string. (UIDelegate::runJavaScriptConfirmPanelWithMessage): Added. (UIDelegate::runJavaScriptTextInputPanelWithPrompt): Added. (UIDelegate::webViewAddMessageToConsole): Got rid of unnecessary check for null string.
11:39 AM Changeset in webkit [26614] by adele
  • 3 edits
    2 adds in trunk

WebCore:

Reviewed by Darin.

Fix for http://bugs.webkit.org/show_bug.cgi?id=15252
<rdar://problem/5498184> REGRESSION: <select multiple> doesn't scroll to top when old options are removed and new ones are added, leaving listbox empty-looking

  • rendering/RenderListBox.cpp: (WebCore::RenderListBox::calcHeight): If the scrollbar is disabled, make sure the scroll offset gets reset to 0. In general, we don't want to unnecessarily adjust the scroll offset, but in this case, there won't be an obvious way for the user to adjust the scroller position once it's disabled.

LayoutTests:

Reviewed by Darin.

Test for http://bugs.webkit.org/show_bug.cgi?id=15252
<rdar://problem/5498184> REGRESSION: <select multiple> doesn't scroll to top when old options are removed and new ones are added, leaving listbox empty-looking

  • fast/forms/listbox-scroll-after-options-removed-expected.txt: Added.
  • fast/forms/listbox-scroll-after-options-removed.html: Added.
11:17 AM Changeset in webkit [26613] by sfalken
  • 1 edit in branches/Safari-3-branch/WebCore/ChangeLog

Merged fix from r26610.

11:16 AM Changeset in webkit [26612] by sfalken
  • 2 edits in branches/Safari-3-branch/WebCore

Merged fix from r26608.

11:15 AM Changeset in webkit [26611] by sfalken
  • 2 edits in branches/Safari-3-branch/WebCore

Merged fix from r26607.

11:01 AM Changeset in webkit [26610] by honeycutt
  • 1 edit in trunk/WebCore/ChangeLog

Fixing a date in the ChangeLog

10:25 AM Changeset in webkit [26609] by aliceli1
  • 10 edits
    4 adds in trunk

WebKitTools:

Reviewed by Sam Weinig.

Fixed <rdar://5382546> layoutTestController.setCustomPolicyDelegate is unimplemented causing tests to fail

  • DumpRenderTree/win/DumpRenderTree.cpp: (runTest): Like on mac, before running each test, set the webview's policy delegate to null (main): allocate the global policy delegate for DRT's custom use
  • DumpRenderTree/win/DumpRenderTree.vcproj: Adding files to project
  • DumpRenderTree/win/DumpRenderTreeWin.h: declaring global DRT policy delegate
  • DumpRenderTree/win/LayoutTestControllerWin.cpp: (LayoutTestController::setCustomPolicyDelegate): set the webview's policy delegate to DRT's custom one if the test requests it.
  • DumpRenderTree/win/PolicyDelegate.cpp: Added. Implementation is a direct port of DumpRenderTree/mac/PolicyDelegate.mm (PolicyDelegate::PolicyDelegate): (PolicyDelegate::QueryInterface): (PolicyDelegate::AddRef): (PolicyDelegate::Release): (PolicyDelegate::decidePolicyForNavigationAction):
  • DumpRenderTree/win/PolicyDelegate.h: Added. (PolicyDelegate::decidePolicyForNewWindowAction): (PolicyDelegate::decidePolicyForMIMEType): (PolicyDelegate::unableToImplementPolicyWithError):

win:

Reviewed by Sam Weinig.

Fixed <rdar://5382546> layoutTestController.setCustomPolicyDelegate is unimplemented causing tests to fail

  • DefaultPolicyDelegate.cpp: Added. Implementation is a direct port of WebKit/DefaultDelegates/WebDefaultPolicyDelegate.m (DefaultPolicyDelegate::DefaultPolicyDelegate): (DefaultPolicyDelegate::~DefaultPolicyDelegate): (DefaultPolicyDelegate::sharedInstance): (DefaultPolicyDelegate::createInstance): (DefaultPolicyDelegate::QueryInterface): (DefaultPolicyDelegate::AddRef): (DefaultPolicyDelegate::Release): (DefaultPolicyDelegate::decidePolicyForNavigationAction): (DefaultPolicyDelegate::decidePolicyForNewWindowAction): (DefaultPolicyDelegate::decidePolicyForMIMEType): (DefaultPolicyDelegate::unableToImplementPolicyWithError):
  • DefaultPolicyDelegate.h: Added.
  • WebFrame.cpp: (WebFrame::dispatchDecidePolicyForNavigationAction): Implemented default action
  • WebKit.vcproj/WebKit.vcproj: Adding files to project

LayoutTests:

removing fixed test

  • platform/win/Skipped:
10:20 AM Changeset in webkit [26608] by honeycutt
  • 2 edits in trunk/WebCore

2007-10-12 Jon Honeycutt <jhoneycutt@apple.com>

Reviewed by Maciej.

Return a more appropriate error from NPN_RequestRange, which is
currently unimplemented

  • plugins/win/npapi.cpp: return NPERR_STREAM_NOT_SEEKABLE (NPN_RequestRead):
10:15 AM Changeset in webkit [26607] by honeycutt
  • 2 edits in trunk/WebCore

2007-10-15 Jon Honeycutt <jhoneycutt@apple.com>

Reviewed by Maciej.

Add a missing function pointer to the m_browserFuncs structure

  • plugins/win/PluginPackageWin.cpp: (WebCore::PluginPackageWin::load):
9:46 AM Changeset in webkit [26606] by kmccullo
  • 3 edits in trunk/LayoutTests

Reviewed by Sam.

  • <rdar://problem/5536630> fast/dom/Window/new-window-opener.html fails
  • This test used to pass because of a mistake in js-test-pre.js. Now that the js file has been fixed this test has been updated, some of the test cases fail because DRT does not implement delegate methods for the bars for each WebView.
  • See <rdar://problem/5538752> DumpRenderTree does not have a UIDelegate for each WebView.
  • Also changed the test to correctly wait for the window to close before starting a new testcase. This is necessary because all the windows have the same name and cannot override the settings of a pre-existing window.
  • fast/dom/Window/new-window-opener-expected.txt:
  • fast/dom/Window/new-window-opener.html:
8:59 AM Changeset in webkit [26605] by hausmann
  • 4 edits
    6 adds in trunk/WebCore

Fix the compilation of the Font code in the Qt port by adding the necessary stubs to support downloadable fonts through the @font-face rules.

8:58 AM Changeset in webkit [26604] by hausmann
  • 4 edits in trunk/WebCore

Adapt to the latest API changes in the SVG API/Code.

8:58 AM Changeset in webkit [26603] by hausmann
  • 2 edits in trunk/JavaScriptCore

Fix compilation with gcc 4.3 by including 'limits' due to the use of std::numeric_limits.

3:04 AM Changeset in webkit [26602] by oliver
  • 164 edits
    76 adds
    71 deletes in trunk/LayoutTests

Reset svg pixel tests to a tiger baseline and move them to platform/mac

RS=Maciej

Note: See TracTimeline for information about the timeline view.