If I'm not mistaken then this branch is the one where `lease_expire_waiters == []`, while in the branch above (97-114) lease_expire_waiters is not empty. I was only trying to make that a bit more explicit by changing it to [].
In the branch above, when there are lease_expire_waiters (which requested drop master), first the LeaseExpired messages are ignored (110-113). Later on, if no other node takes over, lines 101-107 are executed. 101-107 could be considered the main change in this pull request.