[webkit-reviews] review denied: [Bug 111695] Implement Web Speech Synthesis for Chromium : [Attachment 191939] Patch
bugzilla-daemon at webkit.org
bugzilla-daemon at webkit.org
Thu Mar 7 16:09:17 PST 2013
Adam Barth <abarth at webkit.org> has denied review:
Bug 111695: Implement Web Speech Synthesis for Chromium
https://bugs.webkit.org/show_bug.cgi?id=111695
Attachment 191939: Patch
https://bugs.webkit.org/attachment.cgi?id=191939&action=review
------- Additional Comments from Adam Barth <abarth at webkit.org>
View in context: https://bugs.webkit.org/attachment.cgi?id=191939&action=review
> Source/WebCore/platform/PlatformSpeechSynthesis.h:43
> - static PassRefPtr<PlatformSpeechSynthesis> create(SpeechSynthesis*);
> + static PassRefPtr<PlatformSpeechSynthesis> create(SpeechSynthesis*,
ScriptExecutionContext*);
Code in the platform directory can't depend on parts of WebCore outside the
platform directory.
> Source/WebCore/platform/PlatformSpeechSynthesis.h:52
> - SpeechSynthesis* m_speechSynthsis;
> + SpeechSynthesis* m_speechSynthesis;
> + ScriptExecutionContext* m_context;
These raw pointers look worrying. What prevents us from using them after the
objects they point to are freed?
> Source/WebCore/platform/chromium/SpeechSynthesisController.h:54
> +class SpeechSynthesisController : public Supplement<Page> {
This is very unlikely to be the correct pattern to use for this functionality.
Instead, the speech synthesizer should be part of the Platform API (i.e., in
Source/Platform/chromium/public). There isn't any reason to have a Page
dependency here for Chromium.
> Source/WebCore/platform/mac/PlatformSpeechSynthesisMac.mm:42
> -PlatformSpeechSynthesis::PlatformSpeechSynthesis(SpeechSynthesis* synthesis)
> +PlatformSpeechSynthesis::PlatformSpeechSynthesis(SpeechSynthesis* synthesis,
ScriptExecutionContext*)
Notice that the apple-mac port doesn't have a Page dependency.
More information about the webkit-reviews
mailing list