Index: chrome/browser/sync/glue/non_frontend_data_type_controller.h |
diff --git a/chrome/browser/sync/glue/non_frontend_data_type_controller.h b/chrome/browser/sync/glue/non_frontend_data_type_controller.h |
index 9d9d6092fa60ce2ac8c8d62999788e2cccdc09b6..f9245632271cd2aa3930023ff5db308fb5296247 100644 |
--- a/chrome/browser/sync/glue/non_frontend_data_type_controller.h |
+++ b/chrome/browser/sync/glue/non_frontend_data_type_controller.h |
@@ -78,6 +78,9 @@ class NonFrontendDataTypeController : public DataTypeController { |
// Posts the given task to the backend thread, i.e. the thread the |
// datatype lives on. Return value: True if task posted successfully, |
// false otherwise. |
+ // NOTE: The StopAssociationAsync() implementation relies on the fact that |
+ // implementations of this API do not hold any references to the DTC while |
+ // the task is executing. See http://crbug.com/127706. |
virtual bool PostTaskOnBackendThread( |
const tracked_objects::Location& from_here, |
const base::Closure& task) = 0; |
@@ -176,10 +179,6 @@ class NonFrontendDataTypeController : public DataTypeController { |
bool abort_association_; |
base::WaitableEvent abort_association_complete_; |
- // Barrier to ensure that the datatype has been stopped on the DB thread |
- // from the UI thread. |
- base::WaitableEvent datatype_stopped_; |
- |
// This is added for debugging purpose. |
// TODO(lipalani): Remove this after debugging. |
base::WaitableEvent start_association_called_; |