self.root can return None - make sure we notice