I rewrote the Log macro to use a stack-based Data DataStream. Recursive logs now come out in call order. No more deadlocks. Yay. Probably as fast or faster since I moved the lock. Also simplified the Windows debug version; should still work. david