Nikolay Sivov (@nsivov) commented about dlls/mfreadwrite/writer.c:
default:
LeaveCriticalSection(&writer->cs);
return MF_E_INVALIDINDEX;
- }
- if (!entry->transform)
- {
LeaveCriticalSection(&writer->cs);
return MF_E_INVALIDINDEX;
- }
- IMFTransform_AddRef((*transform = entry->transform));
- if (category)
*category = entry->category;
- LeaveCriticalSection(&writer->cs);
It's better to consolidate exit path, we now have 4 return points that have to release the lock.