https://github.com/aktau/gomig/blob/a63d309848907a72782dd94e...
It's not the prettiest, but I needed it fixed soon. Will refactor later :).
Read about it here as well: http://blog.golang.org/defer-panic-and-recover