Bernhard Kölbl (@besentv) commented about dlls/windows.media.speech/synthesizer.c:
static HRESULT WINAPI synthesizer2_get_Options( ISpeechSynthesizer2 *iface, ISpeechSynthesizerOptions **value ) {
- FIXME("iface %p, value %p stub.\n", iface, value);
- return E_NOTIMPL;
- struct synthesizer *impl = impl_from_ISpeechSynthesizer2(iface);
- WARN("iface %p, value %p semi-stub.\n", iface, value);
- if (!impl->options)
- {
struct synthesizer_options *options;
HRESULT hr = synthesizer_options_allocate(&options);
if (FAILED(hr)) return hr;
if (InterlockedCompareExchangePointer((void **)&impl->options, options, NULL) != NULL)
`!= NULL` seems redundant.