Index: chrome/browser/extensions/component_loader.cc |
diff --git a/chrome/browser/extensions/component_loader.cc b/chrome/browser/extensions/component_loader.cc |
index 99129d8cb5d6462731be9853019ede3c714dc399..1af5cf1194f7583c4b8517c5a5c192f2302447f7 100644 |
--- a/chrome/browser/extensions/component_loader.cc |
+++ b/chrome/browser/extensions/component_loader.cc |
@@ -327,15 +327,23 @@ void ComponentLoader::AddNetworkSpeechSynthesisExtension() { |
#if defined(OS_CHROMEOS) |
std::string ComponentLoader::AddChromeVoxExtension() { |
+ base::FilePath chromevox_path; |
+ PathService::Get(chrome::DIR_RESOURCES, &chromevox_path); |
+ chromevox_path = |
+ chromevox_path.Append(extension_misc::kChromeVoxExtensionPath); |
+ |
const CommandLine* command_line = CommandLine::ForCurrentProcess(); |
- int idr = command_line->HasSwitch(chromeos::switches::kGuestSession) ? |
- IDR_CHROMEVOX_GUEST_MANIFEST : IDR_CHROMEVOX_MANIFEST; |
+ const char* manifest_filename = |
+ command_line->HasSwitch(chromeos::switches::kGuestSession) ? |
+ extension_misc::kChromeVoxGuestManifestFilename : |
+ extension_misc::kChromeVoxManifestFilename; |
+ |
+ std::string error; |
+ scoped_ptr<base::DictionaryValue> manifest( |
+ file_util::LoadManifest(chromevox_path, manifest_filename, &error)); |
+ CHECK(manifest) << error; |
- // TODO(dtseng): Guest mode manifest for ChromeVox Next pending work to |
- // generate manifests. |
- if (command_line->HasSwitch(chromeos::switches::kEnableChromeVoxNext)) |
- idr = IDR_CHROMEVOX2_MANIFEST; |
- return Add(idr, base::FilePath(extension_misc::kChromeVoxExtensionPath)); |
+ return Add(manifest.release(), chromevox_path); |
} |
std::string ComponentLoader::AddChromeOsSpeechSynthesisExtension() { |