move the call_depth decrement so it happens unconditionally and can still return to 0 when called with dso!=NULL. ok millert