Index: chrome/browser/extensions/extension_service.cc |
diff --git a/chrome/browser/extensions/extension_service.cc b/chrome/browser/extensions/extension_service.cc |
index 53d907bdea0a0b73b68cfd1b1c42553fc75b9a17..94e4b52f31bbeb0dfbed429d87bdb733fdd389fe 100644 |
--- a/chrome/browser/extensions/extension_service.cc |
+++ b/chrome/browser/extensions/extension_service.cc |
@@ -474,8 +474,7 @@ void ExtensionService::LoadGreylistFromPrefs() { |
} |
} |
-bool ExtensionService::UpdateExtension(const std::string& id, |
- const base::FilePath& extension_path, |
+bool ExtensionService::UpdateExtension(const extensions::CRXFileInfo& file, |
bool file_ownership_passed, |
CrxInstaller** out_crx_installer) { |
CHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); |
@@ -487,6 +486,8 @@ bool ExtensionService::UpdateExtension(const std::string& id, |
return false; |
} |
+ const std::string& id = file.extension_id; |
+ |
const extensions::PendingExtensionInfo* pending_extension_info = |
pending_extension_manager()->GetById(id); |
@@ -498,8 +499,7 @@ bool ExtensionService::UpdateExtension(const std::string& id, |
// that would do it for us. |
if (!GetFileTaskRunner()->PostTask( |
FROM_HERE, |
- base::Bind( |
- &extensions::file_util::DeleteFile, extension_path, false))) |
+ base::Bind(&extensions::file_util::DeleteFile, file.path, false))) |
NOTREACHED(); |
return false; |
@@ -557,7 +557,7 @@ bool ExtensionService::UpdateExtension(const std::string& id, |
installer->set_delete_source(file_ownership_passed); |
installer->set_install_cause(extension_misc::INSTALL_CAUSE_UPDATE); |
- installer->InstallCrx(extension_path); |
+ installer->InstallCrxFile(file); |
if (out_crx_installer) |
*out_crx_installer = installer.get(); |