Fix region view destroy bug

This actually needs to happen in `region.empty()` too (See #1920) .. I wonder if it'd be better to always call `region.empty()` but add a preventDestroy param to empty too, and forward that?