windows: add windows behavior on broken pager
Apparently, Windows has "better" behavior than Unix in this case. This is an
edge case that led me down a rabbit hole, only to find a bug in the Python
documentation... I am not planning on trying to reproduce the same behavior
on Unix systems since it's not really useful, but other people are welcome to!
Differential Revision: https://phab.mercurial-scm.org/D11000
mergestate: use dirstate.update_file API in recordupdates()
Let's use the new single function to replace multiple different functions. This
is part of dirstate API refactor to make it more clearer and generic so that it
can be replicated in Rust.
Differential Revision: https://phab.mercurial-scm.org/D11077