pollymc/launcher
flow d2fdbec41d
fix: move file deletion to the end of the instance update
This makes it harder for problems in the updating process to affect the
current instance. Network issues, for instance, will no longer put the
instance in an invalid state.

Still, a possible improvement to this would be passing that logic to
InstanceStaging instead, to be handled with the instance commiting
directly. However, as it is now, the code would become very spaguetti-y,
and given that the override operation in the commiting could also put
the instance into an invalid state, it seems to me that, in order to
fully error-proof this, we would need to do a copy operation on the
whole instance, in order to modify the copy, and only in the end
override everything an once with a rename. That also has the possibility
of corrupting the instance if done without super care, however, so I
think we may need to instead create an automatic backup system, with an
undo command of sorts, or something like that. This doesn't seem very
trivial though, so it'll probably need to wait until another PR. In the
meantime, the user is advised to always backup their instances before
doing this kind of action, as always.

What a long commit message o.O

Signed-off-by: flow <flowlnlnln@gmail.com>
2022-09-20 18:36:09 -03:00
..
icons
java refactor: restructure tests 2022-09-11 22:29:01 +02:00
launch
meta refactor: restructure tests 2022-09-11 22:29:01 +02:00
minecraft refactor: change the way instance names are handled 2022-09-20 18:36:08 -03:00
modplatform fix: move file deletion to the end of the instance update 2022-09-20 18:36:09 -03:00
mojang refactor: restructure tests 2022-09-11 22:29:01 +02:00
net fix: emit signals when aborting NetJob 2022-09-10 09:10:16 -03:00
news
pathmatcher
resources
screenshots
settings refactor: restructure tests 2022-09-11 22:29:01 +02:00
tasks feat: add canAbort() status change in Task 2022-09-20 18:36:09 -03:00
tools
translations
ui fix(ui): hook up abort status signal in ProgressDialog 2022-09-20 18:36:09 -03:00
updater
Application.cpp Added Launch Demo button. 2022-09-15 18:44:18 -03:00
Application.h Added Launch Demo button. 2022-09-15 18:44:18 -03:00
ApplicationMessage.cpp
ApplicationMessage.h
BaseInstaller.cpp
BaseInstaller.h
BaseInstance.cpp chore: add helper function for copying managed pack data between insts. 2022-09-20 18:32:36 -03:00
BaseInstance.h chore: add helper function for copying managed pack data between insts. 2022-09-20 18:32:36 -03:00
BaseVersion.h
BaseVersionList.cpp
BaseVersionList.h
CMakeLists.txt feat: add override helper functions 2022-09-20 18:36:08 -03:00
Commandline.cpp
Commandline.h
DefaultVariable.h
DesktopServices.cpp
DesktopServices.h
Exception.h
ExponentialSeries.h
FileSystem.cpp fix: use std::wstring for Windows filenames 2022-09-12 13:07:24 -03:00
FileSystem.h
Filter.cpp
Filter.h
GZip.cpp
GZip.h
HoeDown.h
install_prereqs.cmake.in
InstanceCopyTask.cpp refactor: change the way instance names are handled 2022-09-20 18:36:08 -03:00
InstanceCopyTask.h
InstanceCreationTask.cpp fix: move file deletion to the end of the instance update 2022-09-20 18:36:09 -03:00
InstanceCreationTask.h fix: move file deletion to the end of the instance update 2022-09-20 18:36:09 -03:00
InstanceImportTask.cpp feat(ui): improve info dialog before updating an instance 2022-09-20 18:36:09 -03:00
InstanceImportTask.h fix: hook up setAbortStatus in instance import tasks 2022-09-20 18:36:09 -03:00
InstanceList.cpp fix: some abort-related issues 2022-09-20 18:36:09 -03:00
InstanceList.h refactor: change the way instance names are handled 2022-09-20 18:36:08 -03:00
InstancePageProvider.h
InstanceTask.cpp refactor: change the way instance names are handled 2022-09-20 18:36:08 -03:00
InstanceTask.h refactor: change the way instance names are handled 2022-09-20 18:36:08 -03:00
JavaCommon.cpp
JavaCommon.h
Json.cpp
Json.h
KonamiCode.cpp
KonamiCode.h
LaunchController.cpp fix: show 'demo' instead of 'offline' in log when in demo mode 2022-09-15 18:44:18 -03:00
LaunchController.h Added Launch Demo button. 2022-09-15 18:44:18 -03:00
Launcher.in
LoggedProcess.cpp
LoggedProcess.h
main.cpp
MessageLevel.cpp
MessageLevel.h
MMCStrings.cpp
MMCStrings.h
MMCTime.cpp
MMCTime.h
MMCZip.cpp
MMCZip.h
ModDownloadTask.cpp
ModDownloadTask.h
NullInstance.h
ProblemProvider.h
QObjectPtr.h
RecursiveFileSystemWatcher.cpp
RecursiveFileSystemWatcher.h
RWStorage.h
SeparatorPrefixTree.h
SkinUtils.cpp
SkinUtils.h
UpdateController.cpp
UpdateController.h
Usable.h
Version.cpp
Version.h
VersionProxyModel.cpp
VersionProxyModel.h
WatchLock.h