I downloaded an installer for 4.1.2.2 but for some reason the file was corrupted (although it is good enough to get through most of the install process) Install process run as expected, asking for the usual options, uninstalled the previous version and then stopped with error 1335 reporting that the cab file was damaged. This left me without any LO version (the previous was uninstalled and the new one wasn't installed because of the corrupted file). I suggest that file verification is done BEFORE uninstalling the previous version. If there is some problem with the new installer at least the user can continue to work with the currently installed version.
This one is related, but not identical to, bug 117492. This one suggests to make some check before old version uninstallation phase. Possibly that could be done moving RemoveExistingProducts Action from before InstallInitialize (as it is now) to the position just following InstallInitialize - provided it's InstallInitialize which verifies the package integrity (needs checking), see [1] for discussion of RemoveExistingProducts placement. Unlike the problems with bug 117492, which requires major changes in many aspects of installer generation, this change might turn out to be safe. [1] https://docs.microsoft.com/en-us/windows/desktop/Msi/removeexistingproducts-action