Perf: Use `Error#stack` without throwing when available

Fixes #636.
I know it's a very easy to understand code, but I would rename `e` to something like `error`, for readability only.