| Index: chrome/browser/plugins/plugin_finder.h
|
| diff --git a/chrome/browser/plugins/plugin_finder.h b/chrome/browser/plugins/plugin_finder.h
|
| index 0b6d1dee162bd09d32cd52044fb795c2577a8dfd..bc6515daa2a6e0709bd93d3bf752bf7705dc6495 100644
|
| --- a/chrome/browser/plugins/plugin_finder.h
|
| +++ b/chrome/browser/plugins/plugin_finder.h
|
| @@ -41,7 +41,7 @@ class PluginFinder {
|
| void Init();
|
|
|
| #if defined(ENABLE_PLUGIN_INSTALLATION)
|
| - void ReinitializePlugins(const base::DictionaryValue& json_metadata);
|
| + void ReinitializePlugins(scoped_ptr<base::DictionaryValue> json_metadata);
|
|
|
| // Finds a plug-in for the given MIME type and language (specified as an IETF
|
| // language tag, i.e. en-US). If found, sets |installer| to the
|
| @@ -82,7 +82,7 @@ class PluginFinder {
|
| // Returns NULL if the plug-in list couldn't be parsed.
|
| static base::DictionaryValue* LoadPluginList();
|
|
|
| - void InitInternal();
|
| + void InitInternal(scoped_ptr<base::DictionaryValue> plugin_list);
|
|
|
| scoped_ptr<base::DictionaryValue> plugin_list_;
|
| #if defined(ENABLE_PLUGIN_INSTALLATION)
|
| @@ -91,6 +91,11 @@ class PluginFinder {
|
|
|
| std::map<std::string, PluginMetadata*> identifier_plugin_;
|
|
|
| + // Version of the metadata information. We use this to consolidate multiple
|
| + // sources (baked into resource and fetched from a URL), making sure that we
|
| + // don't overwrite newer versions with older ones.
|
| + int version_;
|
| +
|
| // Synchronization for the above member variables is
|
| // required since multiple threads can be accessing them concurrently.
|
| base::Lock mutex_;
|
|
|