Hi,
the tests are failing on both wine and windows with following message: msvcr120.c:303: Test failed: execution timed out, critical section probably not functioning correctly msvcr120: 155 tests executed (0 marked as todo, 1 failure), 0 skipped. It takes ~14 seconds to run the tests here. You also left "#include "stdio.h" line in the tests.
The change in critical_section class implementation looks good for me.
Cheers, Piotr