GH-1060 update tweaks

* download to multimc folder hierarchy
* use rename, not copy
* keep backup after update
* clean previous backup before update
* it's not 'copy', it's 'replace'
This commit is contained in:
Petr Mrázek
2015-06-09 23:23:46 +02:00
parent 22c5ced5dc
commit 15b7c3039a
6 changed files with 58 additions and 40 deletions

View File

@ -27,8 +27,8 @@
namespace GoUpdate
{
DownloadTask::DownloadTask(Status status, QObject *parent)
: Task(parent)
DownloadTask::DownloadTask(Status status, QString target, QObject *parent)
: Task(parent), m_updateFilesDir(target)
{
m_status = status;

View File

@ -30,7 +30,12 @@ class DownloadTask : public Task
Q_OBJECT
public:
explicit DownloadTask(Status status, QObject* parent = 0);
/**
* Create a download task
*
* target is a template - XXXXXX at the end will be replaced with a random generated string, ensuring uniqueness
*/
explicit DownloadTask(Status status, QString target, QObject* parent = 0);
/// Get the directory that will contain the update files.
QString updateFilesDir();

View File

@ -68,7 +68,7 @@ struct Operation
{
static Operation CopyOp(QString fsource, QString fdest, int fmode=0644)
{
return Operation{OP_COPY, fsource, fdest, fmode};
return Operation{OP_REPLACE, fsource, fdest, fmode};
}
static Operation DeleteOp(QString file)
{
@ -84,7 +84,7 @@ struct Operation
//! Specifies the type of operation that this is.
enum Type
{
OP_COPY,
OP_REPLACE,
OP_DELETE,
} type;