Index: chrome/browser/speech/extension_api/tts_engine_extension_api.cc |
diff --git a/chrome/browser/speech/extension_api/tts_engine_extension_api.cc b/chrome/browser/speech/extension_api/tts_engine_extension_api.cc |
index 2774e50da019c1a20afdc56714e5e49081b07d5c..8ed12c623300ca06a61169c0069ccb1de90017e9 100644 |
--- a/chrome/browser/speech/extension_api/tts_engine_extension_api.cc |
+++ b/chrome/browser/speech/extension_api/tts_engine_extension_api.cc |
@@ -188,8 +188,8 @@ void ExtensionTtsEngineSpeak(Utterance* utterance, |
bool sends_end_event = |
(event_types.find(constants::kEventTypeEnd) != event_types.end()); |
- ListValue args; |
- args.Set(0, Value::CreateStringValue(utterance->text())); |
+ scoped_ptr<ListValue> args(new ListValue()); |
+ args->Set(0, Value::CreateStringValue(utterance->text())); |
// Pass through most options to the speech engine, but remove some |
// that are handled internally. |
@@ -208,24 +208,23 @@ void ExtensionTtsEngineSpeak(Utterance* utterance, |
if (options->HasKey(constants::kOnEventKey)) |
options->Remove(constants::kOnEventKey, NULL); |
- args.Set(1, options); |
- args.Set(2, Value::CreateIntegerValue(utterance->id())); |
- std::string json_args; |
- base::JSONWriter::Write(&args, &json_args); |
+ args->Set(1, options); |
+ args->Set(2, Value::CreateIntegerValue(utterance->id())); |
utterance->profile()->GetExtensionEventRouter()->DispatchEventToExtension( |
extension->id(), |
events::kOnSpeak, |
- json_args, |
+ args.Pass(), |
utterance->profile(), |
GURL()); |
} |
void ExtensionTtsEngineStop(Utterance* utterance) { |
+ scoped_ptr<ListValue> args(new ListValue()); |
utterance->profile()->GetExtensionEventRouter()->DispatchEventToExtension( |
utterance->extension_id(), |
events::kOnStop, |
- "[]", |
+ args.Pass(), |
utterance->profile(), |
GURL()); |
} |