i should have known that pack m0 would skip newlines
fix backtrace for callback inside callback

i.e. when we're calling defer, we might already be inside a defer
(inception!)