Changeset 57034 in webkit


Ignore:
Timestamp:
Apr 2, 2010 5:06:57 PM (14 years ago)
Author:
eric@webkit.org
Message:

2010-04-02 Michael Nordman <Michael Nordman>

Reviewed by Nate Chapin.

Set the close policy used by the DatabaseCloseTask in a constructor argument
instead of hard coding it.
https://bugs.webkit.org/show_bug.cgi?id=37037

No new tests, new new functionality.

  • storage/Database.cpp: This callsite passes in DoNotRemoveFromDatabaseContext to retain its current behavior. (WebCore::Database::markAsDeletedAndClose):
  • storage/DatabaseTask.cpp: (WebCore::DatabaseCloseTask::DatabaseCloseTask): (WebCore::DatabaseCloseTask::doPerformTask):
  • storage/DatabaseTask.h: (WebCore::DatabaseCloseTask::create):

2010-04-02 Michael Nordman <Michael Nordman>

Reviewed by Nate Chapin.

Set the close policy used by the DatabaseCloseTask at this callsite to
RemoveDatabaseFromContext. This restores its behavior to what it was prior to
r56293.
https://bugs.webkit.org/show_bug.cgi?id=37037

  • src/WebDatabase.cpp: (WebKit::WebDatabase::closeDatabaseImmediately):
Location:
trunk
Files:
6 edited

Legend:

Unmodified
Added
Removed
  • trunk/WebCore/ChangeLog

    r57033 r57034  
     12010-04-02  Michael Nordman  <michaeln@google.com>
     2
     3        Reviewed by Nate Chapin.
     4
     5        Set the close policy used by the DatabaseCloseTask in a constructor argument
     6        instead of hard coding it.
     7        https://bugs.webkit.org/show_bug.cgi?id=37037
     8
     9        No new tests, new new functionality.
     10
     11        * storage/Database.cpp: This callsite passes in DoNotRemoveFromDatabaseContext to retain its current behavior.
     12        (WebCore::Database::markAsDeletedAndClose):
     13        * storage/DatabaseTask.cpp:
     14        (WebCore::DatabaseCloseTask::DatabaseCloseTask):
     15        (WebCore::DatabaseCloseTask::doPerformTask):
     16        * storage/DatabaseTask.h:
     17        (WebCore::DatabaseCloseTask::create):
     18
    1192010-04-02  James Robinson  <jamesr@chromium.org>
    220
  • trunk/WebCore/storage/Database.cpp

    r56825 r57034  
    385385
    386386    DatabaseTaskSynchronizer synchronizer;
    387     OwnPtr<DatabaseCloseTask> task = DatabaseCloseTask::create(this, &synchronizer);
     387    OwnPtr<DatabaseCloseTask> task = DatabaseCloseTask::create(this, DoNotRemoveDatabaseFromContext, &synchronizer);
    388388
    389389    m_scriptExecutionContext->databaseThread()->scheduleImmediateTask(task.release());
  • trunk/WebCore/storage/DatabaseTask.cpp

    r56293 r57034  
    111111// Closes the database.
    112112
    113 DatabaseCloseTask::DatabaseCloseTask(Database* database, DatabaseTaskSynchronizer* synchronizer)
     113DatabaseCloseTask::DatabaseCloseTask(Database* database, Database::ClosePolicy closePolicy, DatabaseTaskSynchronizer* synchronizer)
    114114    : DatabaseTask(database, synchronizer)
     115    , m_closePolicy(closePolicy)
    115116{
    116117}
     
    118119void DatabaseCloseTask::doPerformTask()
    119120{
    120     // Tell the database not to call back to the context thread; we'll handle it.
    121     database()->close(Database::DoNotRemoveDatabaseFromContext);
     121    database()->close(m_closePolicy);
    122122}
    123123
  • trunk/WebCore/storage/DatabaseTask.h

    r53595 r57034  
    3030
    3131#if ENABLE(DATABASE)
     32#include "Database.h"
    3233#include "ExceptionCode.h"
    3334#include "PlatformString.h"
     
    4041namespace WebCore {
    4142
    42 class Database;
    4343class DatabaseTask;
    4444class DatabaseThread;
     
    111111class DatabaseCloseTask : public DatabaseTask {
    112112public:
    113     static PassOwnPtr<DatabaseCloseTask> create(Database* db, DatabaseTaskSynchronizer* synchronizer)
     113    static PassOwnPtr<DatabaseCloseTask> create(Database* db, Database::ClosePolicy closePolicy, DatabaseTaskSynchronizer* synchronizer)
    114114    {
    115         return new DatabaseCloseTask(db, synchronizer);
     115        return new DatabaseCloseTask(db, closePolicy, synchronizer);
    116116    }
    117117
    118118private:
    119     DatabaseCloseTask(Database*, DatabaseTaskSynchronizer*);
     119    DatabaseCloseTask(Database*, Database::ClosePolicy, DatabaseTaskSynchronizer*);
    120120
    121121    virtual void doPerformTask();
     
    123123    virtual const char* debugTaskName() const;
    124124#endif
     125
     126    Database::ClosePolicy m_closePolicy;
    125127};
    126128
  • trunk/WebKit/chromium/ChangeLog

    r57028 r57034  
     12010-04-02  Michael Nordman  <michaeln@google.com>
     2
     3        Reviewed by Nate Chapin.
     4
     5        Set the close policy used by the DatabaseCloseTask at this callsite to
     6        RemoveDatabaseFromContext. This restores its behavior to what it was prior to
     7        r56293.
     8        https://bugs.webkit.org/show_bug.cgi?id=37037
     9
     10        * src/WebDatabase.cpp:
     11        (WebKit::WebDatabase::closeDatabaseImmediately):
     12
    1132010-04-02  Evan Stade  <estade@chromium.org>
    214
  • trunk/WebKit/chromium/src/WebDatabase.cpp

    r54506 r57034  
    120120        if (databaseThread && !databaseThread->terminationRequested()) {
    121121            database->stop();
    122             databaseThread->scheduleTask(DatabaseCloseTask::create(database, 0));
     122            databaseThread->scheduleTask(DatabaseCloseTask::create(database, Database::RemoveDatabaseFromContext, 0));
    123123        }
    124124    }
Note: See TracChangeset for help on using the changeset viewer.