Hi Axel, I found out what's happening now...it wasn't the window looper that was the problem (directly). SpaceMonitor seems to have a BStatusBar subclass that implements double buffered drawing. In the window constructor it creates this class, and then updates its max value via BStatusBar::SetMaxValue(); SetMaxValue() then updates the max and calls Invalidate(), apparently on the not locked offscreen BBitmap's looper thread. This is what triggers the debugger call. So my question is...should SetMaxValue() be doing a LockLooper() / UnlockLooper() around the Invalidate() ? This doesn't seem to crash in R5, and I know it generally hits the debugger if you do something not lock-safe there. Regards, Rene