- fixed memory leak (in error case)
- use _exit after fork