Ok, here's what's going on:

```
#2  0x000000010061ede8 in SoundDevicePortAudio::writeProcess (this=0x103666430) at src/sounddeviceportaudio.cpp:458
#3  0x00000001006242bb in SoundManager::writeProcess (this=0x109000220) at src/soundmanager.cpp:504
#4  0x0000000100620223 in SoundDevicePortAudio::callbackProcessClkRef (this=0x103666430, framesPerBuffer=64, out=0x13c56ac10, in=0x0, timeInfo=0x130701a90, statusFlags=0) at src/sounddeviceportaudio.cpp:809
```

The master callback is calling the master device's readProcess/writeProcess methods -- since masters don't have input/output FIFOs, these are NULL and readProcess/writeProcess dereference them without checking. 

This is because setupDevices() has not assigned m_pClkRefDevice yet (because SoundManager is still opening the devices) yet the SoundManager callback code for the master callback uses m_pClkRefDevice to decide whether to call readProcess/writeProcess on a SoundDevice.