Fix #776 - Change how batch_permission_check works

Will now check stage one after the other, rather than both at once.

Same as #1058 but for 2.4.