mirror of
https://github.com/overte-org/overte.git
synced 2025-08-09 15:09:24 +02:00
Merge pull request #12468 from huffman/fix/reject-invalid-manual-backup-names
Fix/reject invalid manual backup names
This commit is contained in:
commit
3c39c92879
3 changed files with 21 additions and 10 deletions
|
@ -22,8 +22,8 @@ BraceWrapping:
|
||||||
|
|
||||||
AccessModifierOffset: -4
|
AccessModifierOffset: -4
|
||||||
AllowShortFunctionsOnASingleLine: InlineOnly
|
AllowShortFunctionsOnASingleLine: InlineOnly
|
||||||
BreakConstructorInitializers: BeforeColon
|
BreakConstructorInitializers: AfterColon
|
||||||
BreakConstructorInitializersBeforeComma: true
|
BreakConstructorInitializersBeforeComma: false
|
||||||
IndentCaseLabels: true
|
IndentCaseLabels: true
|
||||||
ReflowComments: false
|
ReflowComments: false
|
||||||
Cpp11BracedListStyle: false
|
Cpp11BracedListStyle: false
|
||||||
|
|
|
@ -1,9 +1,10 @@
|
||||||
//
|
//
|
||||||
// DomainContentBackupManager.cpp
|
// DomainContentBackupManager.cpp
|
||||||
// libraries/octree/src
|
// libraries/domain-server/src
|
||||||
//
|
//
|
||||||
// Created by Brad Hefta-Gaub on 8/21/13.
|
// Created by Ryan Huffman on 1/01/18.
|
||||||
// Copyright 2013 High Fidelity, Inc.
|
// Adapted from OctreePersistThread
|
||||||
|
// Copyright 2018 High Fidelity, Inc.
|
||||||
//
|
//
|
||||||
// Distributed under the Apache License, Version 2.0.
|
// Distributed under the Apache License, Version 2.0.
|
||||||
// See the accompanying file LICENSE or http://www.apache.org/licenses/LICENSE-2.0.html
|
// See the accompanying file LICENSE or http://www.apache.org/licenses/LICENSE-2.0.html
|
||||||
|
@ -44,6 +45,7 @@ static const QString DATETIME_FORMAT { "yyyy-MM-dd_HH-mm-ss" };
|
||||||
static const QString DATETIME_FORMAT_RE { "\\d{4}-\\d{2}-\\d{2}_\\d{2}-\\d{2}-\\d{2}" };
|
static const QString DATETIME_FORMAT_RE { "\\d{4}-\\d{2}-\\d{2}_\\d{2}-\\d{2}-\\d{2}" };
|
||||||
static const QString AUTOMATIC_BACKUP_PREFIX { "autobackup-" };
|
static const QString AUTOMATIC_BACKUP_PREFIX { "autobackup-" };
|
||||||
static const QString MANUAL_BACKUP_PREFIX { "backup-" };
|
static const QString MANUAL_BACKUP_PREFIX { "backup-" };
|
||||||
|
static const QString MANUAL_BACKUP_NAME_RE { "[a-zA-Z0-9\\-_ ]+" };
|
||||||
|
|
||||||
void DomainContentBackupManager::addBackupHandler(BackupHandlerPointer handler) {
|
void DomainContentBackupManager::addBackupHandler(BackupHandlerPointer handler) {
|
||||||
_backupHandlers.push_back(std::move(handler));
|
_backupHandlers.push_back(std::move(handler));
|
||||||
|
@ -567,9 +569,17 @@ void DomainContentBackupManager::createManualBackup(MiniPromise::Promise promise
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
QRegExp nameRE { MANUAL_BACKUP_NAME_RE };
|
||||||
bool success;
|
bool success;
|
||||||
QString path;
|
|
||||||
std::tie(success, path) = createBackup(MANUAL_BACKUP_PREFIX, name);
|
if (!nameRE.exactMatch(name)) {
|
||||||
|
qDebug() << "Cannot create manual backup with invalid name: " << name;
|
||||||
|
success = false;
|
||||||
|
} else {
|
||||||
|
QString path;
|
||||||
|
std::tie(success, path) = createBackup(MANUAL_BACKUP_PREFIX, name);
|
||||||
|
}
|
||||||
|
|
||||||
promise->resolve({
|
promise->resolve({
|
||||||
{ "success", success }
|
{ "success", success }
|
||||||
|
|
|
@ -1,9 +1,10 @@
|
||||||
//
|
//
|
||||||
// DomainContentBackupManager.h
|
// DomainContentBackupManager.h
|
||||||
// libraries/octree/src
|
// libraries/domain-server/src
|
||||||
//
|
//
|
||||||
// Created by Brad Hefta-Gaub on 8/21/13.
|
// Created by Ryan Huffman on 1/01/18.
|
||||||
// Copyright 2013 High Fidelity, Inc.
|
// Adapted from OctreePersistThread
|
||||||
|
// Copyright 2018 High Fidelity, Inc.
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
//
|
//
|
||||||
|
|
Loading…
Reference in a new issue