Taxonomy terms submit handler checks for
<?php
if ($current_parent_count == 1 && isset($form_state['values']['parent'][0])) {
?>
If the parent field has been to set to multiple = FALSE via a form alter this causes side effects as the isset fails.
Patch attached to corrrect this behaviour.