| Index: components/autofill/content/renderer/autofill_agent.cc
|
| diff --git a/components/autofill/content/renderer/autofill_agent.cc b/components/autofill/content/renderer/autofill_agent.cc
|
| index e233d106484d074fd3e691c6aa492bbbd637b3ca..788e01b767f5e90a137f7a131b8ac468beeb5011 100644
|
| --- a/components/autofill/content/renderer/autofill_agent.cc
|
| +++ b/components/autofill/content/renderer/autofill_agent.cc
|
| @@ -312,6 +312,14 @@ void AutofillAgent::FocusedNodeChanged(const WebNode& node) {
|
| element_ = *element;
|
| }
|
|
|
| +void AutofillAgent::OnDestruct() {
|
| + // As described in http://crbug.com/608100, there might be an AutofillAgent
|
| + // method in-progress lower on the stack. Destroying |this| would cause
|
| + // use-after-free once the lower stack frame becomes active. Instead, a task
|
| + // needs to be posted to delete this.
|
| + base::ThreadTaskRunnerHandle::Get()->DeleteSoon(FROM_HERE, this);
|
| +}
|
| +
|
| void AutofillAgent::FocusChangeComplete() {
|
| WebDocument doc = render_frame()->GetWebFrame()->document();
|
| WebElement focused_element;
|
|
|