New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Installer should warn about downgrades #5037
Comments
Comment 2 by leonarddr on 2015-04-14 07:08 |
Comment 3 by jteh on 2015-04-14 09:56 In short, the full uninstaller would do a lot of pointless file removal and would probably cause breakage unless the user rebooted. |
Comment 4 by jteh on 2015-06-23 04:27 Specifics: When the installer detects that the copy of NVDA being installed has an earlier timestamp than the existing copy (probably using the timestamps of nvda_slave.exe), it will display a dialog with the title "Warning" and the message:
There will be two buttons: "Proceed with installation (not recommended)" and "Cancel". |
Comment 6 by James Teh <jamie@... on 2015-07-15 07:17
Changes:
|
Comment 7 by James Teh <jamie@... on 2015-07-31 03:16
Changes:
|
Comment 8 by leonarddr on 2015-08-20 12:10 |
Comment 9 by jteh on 2015-08-20 23:04 |
Comment 10 by jteh on 2015-08-20 23:05 |
Comment 11 by leonarddr on 2015-08-21 07:03 |
Comment 12 by jteh on 2015-08-21 07:12 |
…ly installed, you will now be warned that this is not recommended and that NVDA should be completely uninstalled before proceeding. Fixes #5037.
Reported by jteh on 2015-04-14 06:57
(Spun off #308.)
While downgrading is generally discouraged, it does happen. When upgrading, we can (and should) unregister the previous install using the version being installed, as newer versions will always know about the past. However, when downgrading, this is bad because the version being installed (the downgrade) may fail to unregister something registered by a later version. This can cause severe issues in extreme cases; e.g. #308, where it could cause a security issue. Therefore, when downgrading, we should unregister the installation using the previous copy (the one we're about to overwrite).
Detecting downgrades is non-trivial due to snapshots. The best we can probably do is check the date of the executables.
Blocking #308
The text was updated successfully, but these errors were encountered: