These variables are all accessed from multiple threads. Also fix some minor leaks in error code paths.