summaryrefslogtreecommitdiffstats
path: root/components/autofill
diff options
context:
space:
mode:
authorkouhei@chromium.org <kouhei@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-07-11 03:18:25 +0000
committerkouhei@chromium.org <kouhei@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-07-11 03:18:25 +0000
commit3609c96371a606f24bb3134c02c74dbe251be28c (patch)
tree0b4b0846ca89b2fc1cf394d1e39bd7a4e17a961e /components/autofill
parent63f021880e7b818d51f0c1dfc99f47633c764644 (diff)
downloadchromium_src-3609c96371a606f24bb3134c02c74dbe251be28c.zip
chromium_src-3609c96371a606f24bb3134c02c74dbe251be28c.tar.gz
chromium_src-3609c96371a606f24bb3134c02c74dbe251be28c.tar.bz2
Flush form cache when next document is loaded to avoid Document leak.
This should fix a document leak from r270279. BUG=392121 Review URL: https://codereview.chromium.org/380533003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@282524 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'components/autofill')
-rw-r--r--components/autofill/content/renderer/autofill_agent.cc5
-rw-r--r--components/autofill/content/renderer/autofill_agent.h2
2 files changed, 7 insertions, 0 deletions
diff --git a/components/autofill/content/renderer/autofill_agent.cc b/components/autofill/content/renderer/autofill_agent.cc
index cde97a0..db3def1 100644
--- a/components/autofill/content/renderer/autofill_agent.cc
+++ b/components/autofill/content/renderer/autofill_agent.cc
@@ -180,6 +180,11 @@ void AutofillAgent::DidFinishDocumentLoad(WebLocalFrame* frame) {
ProcessForms(*frame);
}
+void AutofillAgent::DidCommitProvisionalLoad(WebLocalFrame* frame,
+ bool is_new_navigation) {
+ form_cache_.ResetFrame(*frame);
+}
+
void AutofillAgent::FrameDetached(WebFrame* frame) {
form_cache_.ResetFrame(*frame);
}
diff --git a/components/autofill/content/renderer/autofill_agent.h b/components/autofill/content/renderer/autofill_agent.h
index dafcd70..1ff747d 100644
--- a/components/autofill/content/renderer/autofill_agent.h
+++ b/components/autofill/content/renderer/autofill_agent.h
@@ -59,6 +59,8 @@ class AutofillAgent : public content::RenderViewObserver,
// content::RenderViewObserver:
virtual bool OnMessageReceived(const IPC::Message& message) OVERRIDE;
virtual void DidFinishDocumentLoad(blink::WebLocalFrame* frame) OVERRIDE;
+ virtual void DidCommitProvisionalLoad(blink::WebLocalFrame* frame,
+ bool is_new_navigation) OVERRIDE;
virtual void FrameDetached(blink::WebFrame* frame) OVERRIDE;
virtual void FrameWillClose(blink::WebFrame* frame) OVERRIDE;
virtual void WillSubmitForm(blink::WebLocalFrame* frame,