Fixed #23074 -- Avoided leaking savepoints in atomic.

Thanks Chow Loong Jin for the report and the initial patch.
Fixed #23113 -- ChoiceInput.render should take specified attrs into account.

Thanks to Tim Graham for the review.