|
Oilpan: Prepare to move SQLError to oilpan heap.
Without this CL, a SQLError object can be constructed in a database thread,
moved to main/worker thread, and referred by JavaScript object in the
main/worker thread.
We can't move object ownership over threads in Oilpan. So, we should not
construct SQLError objects in a database thread. Unlike the SQLResultSet case
[1], SQLError is created by multiple classes and it's hard to make sure they
create SQLError in a context thread.
So, this CL introduce SQLErrorData, which is an immutable data container. We can
construct a SQLErrorData object in a database thread, and move it to a context
thread, then construct a SQLError with the SQLErrorData object.
Note:
* Change the return type of AbstractSQLStatementBackend::sqlError from
PassRefPtr<SQLError> to SQLErrorData* because the function doesn't release the
ownership of the SQLErrorData object.
[1] https://src.chromium.org/viewvc/blink?revision=169929&view=revision
BUG= 347902
Committed: https://src.chromium.org/viewvc/blink?view=rev&revision=169989
Total comments: 6
|
Unified diffs |
Side-by-side diffs |
Delta from patch set |
Stats (+94 lines, -61 lines) |
Patch |
 |
M |
Source/modules/webdatabase/AbstractSQLStatementBackend.h
|
View
|
|
1 chunk |
+1 line, -1 line |
0 comments
|
Download
|
 |
M |
Source/modules/webdatabase/AbstractSQLTransactionBackend.h
|
View
|
|
1 chunk |
+1 line, -1 line |
0 comments
|
Download
|
 |
M |
Source/modules/webdatabase/ChangeVersionWrapper.h
|
View
|
|
3 chunks |
+4 lines, -3 lines |
0 comments
|
Download
|
 |
M |
Source/modules/webdatabase/ChangeVersionWrapper.cpp
|
View
|
|
2 chunks |
+5 lines, -5 lines |
0 comments
|
Download
|
 |
M |
Source/modules/webdatabase/Database.cpp
|
View
|
|
2 chunks |
+3 lines, -2 lines |
0 comments
|
Download
|
 |
M |
Source/modules/webdatabase/SQLError.h
|
View
|
1
|
2 chunks |
+29 lines, -6 lines |
0 comments
|
Download
|
 |
M |
Source/modules/webdatabase/SQLError.idl
|
View
|
|
1 chunk |
+1 line, -0 lines |
0 comments
|
Download
|
 |
M |
Source/modules/webdatabase/SQLStatement.cpp
|
View
|
|
1 chunk |
+5 lines, -3 lines |
0 comments
|
Download
|
 |
M |
Source/modules/webdatabase/SQLStatementBackend.h
|
View
|
|
3 chunks |
+3 lines, -3 lines |
0 comments
|
Download
|
 |
M |
Source/modules/webdatabase/SQLStatementBackend.cpp
|
View
|
|
7 chunks |
+11 lines, -11 lines |
0 comments
|
Download
|
 |
M |
Source/modules/webdatabase/SQLTransaction.h
|
View
|
|
2 chunks |
+2 lines, -2 lines |
0 comments
|
Download
|
 |
M |
Source/modules/webdatabase/SQLTransaction.cpp
|
View
|
1
|
3 chunks |
+8 lines, -6 lines |
0 comments
|
Download
|
 |
M |
Source/modules/webdatabase/SQLTransactionBackend.h
|
View
|
|
4 chunks |
+4 lines, -4 lines |
0 comments
|
Download
|
 |
M |
Source/modules/webdatabase/SQLTransactionBackend.cpp
|
View
|
|
7 chunks |
+17 lines, -14 lines |
0 comments
|
Download
|
Total messages: 11 (0 generated)
|