Fix do_commit() behavior