UI: Fix Import Profile in Portable Mode

QDir.mkpath seems broken with relative paths

Also adds a check for existing profiles
master
Matt Gajownik 2020-02-23 10:57:11 +11:00
parent 2f22139670
commit 2cbe64a79a
1 changed files with 9 additions and 7 deletions

View File

@ -505,10 +505,16 @@ void OBSBasic::on_actionImportProfile_triggered()
QFileInfo finfo(dir);
QString directory = finfo.fileName();
QString profileDir = inputPath + directory;
QDir folder(profileDir);
if (!folder.exists()) {
folder.mkpath(profileDir);
if (ProfileExists(directory.toStdString().c_str())) {
OBSMessageBox::warning(
this, QTStr("Basic.MainMenu.Profile.Import"),
QTStr("Basic.MainMenu.Profile.Exists"));
} else if (os_mkdir(profileDir.toStdString().c_str()) < 0) {
blog(LOG_WARNING,
"Failed to create profile directory '%s'",
directory.toStdString().c_str());
} else {
QFile::copy(dir + "/basic.ini",
profileDir + "/basic.ini");
QFile::copy(dir + "/service.json",
@ -518,10 +524,6 @@ void OBSBasic::on_actionImportProfile_triggered()
QFile::copy(dir + "/recordEncoder.json",
profileDir + "/recordEncoder.json");
RefreshProfiles();
} else {
OBSMessageBox::warning(
this, QTStr("Basic.MainMenu.Profile.Import"),
QTStr("Basic.MainMenu.Profile.Exists"));
}
}
}