Careful destroy

Especially in the event where you're creating the parser but the state is `NULL` because `malloc` returns `NULL`.