Index: Source/modules/speech/SpeechRecognition.cpp |
diff --git a/Source/modules/speech/SpeechRecognition.cpp b/Source/modules/speech/SpeechRecognition.cpp |
index d81aa2c39bb27c27fc8c47816f62d219ded98328..84027e379a956bd78395875e13b461dfaa63b280 100644 |
--- a/Source/modules/speech/SpeechRecognition.cpp |
+++ b/Source/modules/speech/SpeechRecognition.cpp |
@@ -108,21 +108,21 @@ void SpeechRecognition::didEndAudio() |
dispatchEvent(Event::create(EventTypeNames::audioend)); |
} |
-void SpeechRecognition::didReceiveResults(const Vector<RefPtr<SpeechRecognitionResult> >& newFinalResults, const Vector<RefPtr<SpeechRecognitionResult> >& currentInterimResults) |
+void SpeechRecognition::didReceiveResults(const WillBeHeapVector<RefPtrWillBeMember<SpeechRecognitionResult> >& newFinalResults, const WillBeHeapVector<RefPtrWillBeMember<SpeechRecognitionResult> >& currentInterimResults) |
{ |
unsigned long resultIndex = m_finalResults.size(); |
for (size_t i = 0; i < newFinalResults.size(); ++i) |
m_finalResults.append(newFinalResults[i]); |
- Vector<RefPtr<SpeechRecognitionResult> > results = m_finalResults; |
+ WillBeHeapVector<RefPtrWillBeMember<SpeechRecognitionResult> > results = m_finalResults; |
for (size_t i = 0; i < currentInterimResults.size(); ++i) |
results.append(currentInterimResults[i]); |
dispatchEvent(SpeechRecognitionEvent::createResult(resultIndex, results)); |
} |
-void SpeechRecognition::didReceiveNoMatch(PassRefPtr<SpeechRecognitionResult> result) |
+void SpeechRecognition::didReceiveNoMatch(PassRefPtrWillBeRawPtr<SpeechRecognitionResult> result) |
{ |
dispatchEvent(SpeechRecognitionEvent::createNoMatch(result)); |
} |
@@ -194,6 +194,7 @@ SpeechRecognition::~SpeechRecognition() |
void SpeechRecognition::trace(Visitor* visitor) |
{ |
visitor->trace(m_grammars); |
+ visitor->trace(m_finalResults); |
} |
} // namespace WebCore |