mirror of
https://github.com/subsurface/subsurface.git
synced 2024-11-27 20:58:47 +00:00
a6cfd181e8
For Uemis there was string-manipulation that leaked the temporary string. Use QString instead in order not to have to bother about such things. Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
36 lines
1 KiB
C++
36 lines
1 KiB
C++
// SPDX-License-Identifier: GPL-2.0
|
|
#include "qt-models/diveimportedmodel.h"
|
|
|
|
void cliDownloader(const char *vendor, const char *product, const char *device)
|
|
{
|
|
DiveImportedModel diveImportedModel;
|
|
DiveImportedModel::connect(&diveImportedModel, &DiveImportedModel::downloadFinished, [] {
|
|
// do something useful at the end of the download
|
|
printf("Finished\n");
|
|
});
|
|
|
|
auto data = diveImportedModel.thread.data();
|
|
data->setVendor(vendor);
|
|
data->setProduct(product);
|
|
data->setBluetoothMode(false);
|
|
if (data->vendor() == "Uemis") {
|
|
QString devname(device);
|
|
int colon = devname.indexOf(QStringLiteral(":\\ (UEMISSDA)"));
|
|
if (colon >= 0) {
|
|
devname.truncate(colon + 2);
|
|
fprintf(stderr, "shortened devname to \"%s\"", qPrintable(devname));
|
|
}
|
|
data->setDevName(devname);
|
|
} else {
|
|
data->setDevName(device);
|
|
}
|
|
|
|
// some assumptions - should all be configurable
|
|
data->setForceDownload(false);
|
|
data->setSaveLog(true);
|
|
data->setSaveDump(false);
|
|
|
|
diveImportedModel.startDownload();
|
|
diveImportedModel.waitForDownload();
|
|
diveImportedModel.recordDives();
|
|
}
|