hbisect.py: don't rely on __del__ to write the current state.
This is yet another page of the "Thou shalt not do too much inside
__del__ methods" book, in the "demandload and __del__ don't go well
together" chapter.
The bisect extension is broken in 0.9.1:
$ hg bisect init
$ hg bisect bad
Fatal Python error: Interpreter not initialized (version mismatch?)
Aborted
(yes, I tripled checked my instalation to make sure the problem is not
there)
It's been broken since revision fe1689273f84 moved the import of the
binascii module into a demandload.
(In details: the first time that "hg bisect bad" (or good) is called,
there are still no revisions saved in .hg/bisect/*, so bisect.__init__
doesn't call hg.bin on anything. So, when we reach __del__, the
binascii module still hasn't been imported and we get that "nice"
message above.)
#header#
<title>#repo|escape#: shortlog</title>
<link rel="alternate" type="application/rss+xml"
href="?cmd=changelog;style=rss" title="RSS feed for #repo|escape#">
</head>
<body>
<div class="buttons">
<a href="?cl=#rev#">changelog</a>
<a href="?cmd=tags">tags</a>
<a href="?mf=#manifest|short#;path=/">manifest</a>
#archives%archiveentry#
<a type="application/rss+xml" href="?style=rss">rss</a>
</div>
<h2>shortlog for #repo|escape#</h2>
<form action="#">
<p>
<label for="search1">search:</label>
<input type="hidden" name="cmd" value="changelog">
<input name="rev" id="search1" type="text" size="30">
navigate: <small class="navigate">#changenav%navshortentry#</small>
</p>
</form>
#entries%shortlogentry#
<form action="#">
<p>
<label for="search2">search:</label>
<input type="hidden" name="cmd" value="changelog">
<input name="rev" id="search2" type="text" size="30">
navigate: <small class="navigate">#changenav%navshortentry#</small>
</p>
</form>
#footer#