| Index: sql/statement_unittest.cc
|
| diff --git a/sql/statement_unittest.cc b/sql/statement_unittest.cc
|
| index ffa8aef1f80d4f2e4fecf3a1532834e9d15fb4a2..3d32862c79276730c4333a58c71f1b2c208d5f77 100644
|
| --- a/sql/statement_unittest.cc
|
| +++ b/sql/statement_unittest.cc
|
| @@ -4,6 +4,7 @@
|
|
|
| #include <string>
|
|
|
| +#include "base/bind.h"
|
| #include "base/file_util.h"
|
| #include "base/files/scoped_temp_dir.h"
|
| #include "sql/connection.h"
|
| @@ -13,28 +14,12 @@
|
|
|
| namespace {
|
|
|
| -class StatementErrorHandler : public sql::ErrorDelegate {
|
| - public:
|
| - StatementErrorHandler(int* error, std::string* sql_text)
|
| - : error_(error),
|
| - sql_text_(sql_text) {}
|
| -
|
| - virtual ~StatementErrorHandler() {}
|
| -
|
| - virtual int OnError(int error, sql::Connection* connection,
|
| - sql::Statement* stmt) OVERRIDE {
|
| - *error_ = error;
|
| - const char* sql_txt = stmt ? stmt->GetSQLStatement() : NULL;
|
| - *sql_text_ = sql_txt ? sql_txt : "no statement available";
|
| - return error;
|
| - }
|
| -
|
| - private:
|
| - int* error_;
|
| - std::string* sql_text_;
|
| -
|
| - DISALLOW_COPY_AND_ASSIGN(StatementErrorHandler);
|
| -};
|
| +void CaptureErrorCallback(int* error_pointer, std::string* sql_text,
|
| + int error, sql::Statement* stmt) {
|
| + *error_pointer = error;
|
| + const char* text = stmt ? stmt->GetSQLStatement() : NULL;
|
| + *sql_text = text ? text : "no statement available";
|
| +}
|
|
|
| class SQLStatementTest : public testing::Test {
|
| public:
|
| @@ -45,7 +30,8 @@ class SQLStatementTest : public testing::Test {
|
| ASSERT_TRUE(db_.Open(temp_dir_.path().AppendASCII("SQLStatementTest.db")));
|
| // The error delegate will set |error_| and |sql_text_| when any sqlite
|
| // statement operation returns an error code.
|
| - db_.set_error_delegate(new StatementErrorHandler(&error_, &sql_text_));
|
| + db_.set_error_callback(base::Bind(&CaptureErrorCallback,
|
| + &error_, &sql_text_));
|
| }
|
|
|
| virtual void TearDown() {
|
|
|