fix rescue and ensure blocks (close #374)
changes
Merge branch 'master' into smart-text