| Index: chrome/renderer/safe_browsing/phishing_classifier.cc
|
| diff --git a/chrome/renderer/safe_browsing/phishing_classifier.cc b/chrome/renderer/safe_browsing/phishing_classifier.cc
|
| index 1fa068eecd1470892e4687e9a6f7902be3c5eba2..2c5f70a5017ddb96d281cf076a7315c5227eecbb 100644
|
| --- a/chrome/renderer/safe_browsing/phishing_classifier.cc
|
| +++ b/chrome/renderer/safe_browsing/phishing_classifier.cc
|
| @@ -53,15 +53,23 @@ PhishingClassifier::~PhishingClassifier() {
|
| void PhishingClassifier::set_phishing_scorer(const Scorer* scorer) {
|
| CheckNoPendingClassification();
|
| scorer_ = scorer;
|
| - url_extractor_.reset(new PhishingUrlFeatureExtractor);
|
| - dom_extractor_.reset(
|
| - new PhishingDOMFeatureExtractor(render_view_, clock_.get()));
|
| - term_extractor_.reset(new PhishingTermFeatureExtractor(
|
| - &scorer_->page_terms(),
|
| - &scorer_->page_words(),
|
| - scorer_->max_words_per_term(),
|
| - scorer_->murmurhash3_seed(),
|
| - clock_.get()));
|
| + if (scorer_) {
|
| + url_extractor_.reset(new PhishingUrlFeatureExtractor);
|
| + dom_extractor_.reset(
|
| + new PhishingDOMFeatureExtractor(render_view_, clock_.get()));
|
| + term_extractor_.reset(new PhishingTermFeatureExtractor(
|
| + &scorer_->page_terms(),
|
| + &scorer_->page_words(),
|
| + scorer_->max_words_per_term(),
|
| + scorer_->murmurhash3_seed(),
|
| + clock_.get()));
|
| + } else {
|
| + // We're disabling client-side phishing detection, so tear down all
|
| + // of the relevant objects.
|
| + url_extractor_.reset();
|
| + dom_extractor_.reset();
|
| + term_extractor_.reset();
|
| + }
|
| }
|
|
|
| bool PhishingClassifier::is_ready() const {
|
|
|