Do not call EndDialog outside the dialog procedure.
fix picked from commit 0.4.15-dev-511-g 90456e54a4
This hang/crash in 2nd stage setup did *not* affect our official carrier-releaser isos that
we host on sourceforge, because those come bundled with Gecko already and therefore always
skipped the download.
Most users were safe in the past therefore.
Still everyone that would like to build an iso by himself could potentially run
into those crashes, and it did not only happen upon user-driven cancellation,
but also often crashed upon network failure / timeout.
A very important fix therefore.
For some unknown reason the likelihood of this crash gradually increased from
0.4.7 where it happened almost never, until 0.4.14 where it crashed much more likely.
Not well understood, maybe depends on memory layout or something similar.