diff options
Diffstat (limited to 'rbutil/rbutilqt/base/bootloaderinstallbase.cpp')
-rw-r--r-- | rbutil/rbutilqt/base/bootloaderinstallbase.cpp | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/rbutil/rbutilqt/base/bootloaderinstallbase.cpp b/rbutil/rbutilqt/base/bootloaderinstallbase.cpp index 30f53ae810..5f8fd40d08 100644 --- a/rbutil/rbutilqt/base/bootloaderinstallbase.cpp +++ b/rbutil/rbutilqt/base/bootloaderinstallbase.cpp | |||
@@ -224,11 +224,20 @@ void BootloaderInstallBase::setBlFile(QStringList sl) | |||
224 | bool BootloaderInstallBase::setOfFile(QString of, QStringList blfile) | 224 | bool BootloaderInstallBase::setOfFile(QString of, QStringList blfile) |
225 | { | 225 | { |
226 | bool found = false; | 226 | bool found = false; |
227 | ArchiveUtil *util = 0; | 227 | ArchiveUtil *util = nullptr; |
228 | |||
229 | // check if we're actually looking for a zip file. If so we must avoid | ||
230 | // trying to unzip it. | ||
231 | bool wantZip = false; | ||
232 | for (int i = 0; i < blfile.size(); i++) | ||
233 | { | ||
234 | if (blfile.at(i).endsWith(".zip")) | ||
235 | wantZip = true; | ||
236 | } | ||
228 | 237 | ||
229 | // try ZIP first | 238 | // try ZIP first |
230 | ZipUtil *zu = new ZipUtil(this); | 239 | ZipUtil *zu = new ZipUtil(this); |
231 | if(zu->open(of)) | 240 | if(zu->open(of) && !wantZip) |
232 | { | 241 | { |
233 | emit logItem(tr("Zip file format detected"), LOGINFO); | 242 | emit logItem(tr("Zip file format detected"), LOGINFO); |
234 | util = zu; | 243 | util = zu; |