aboutsummaryrefslogtreecommitdiffstats
path: root/src/libs/utils/fileutils.cpp
diff options
context:
space:
mode:
authorEike Ziller <eike.ziller@qt.io>2022-09-19 09:54:06 +0200
committerEike Ziller <eike.ziller@qt.io>2022-09-19 09:54:06 +0200
commit5d55cfdae5e37c9d39b23a261b2569c91db6d5d5 (patch)
treea6b2f1468f673519ce0e075728c05071efde4746 /src/libs/utils/fileutils.cpp
parent2429232e721a832662756bb0840bec3b51d3d769 (diff)
parenta7c0bffc5c7d2b9e78632e236ae9db331e3690e3 (diff)
Merge remote-tracking branch 'origin/8.0'
Conflicts: share/qtcreator/qmldesigner/propertyEditorQmlSources/imports/HelperWidgets/ColorEditor.qml share/qtcreator/qmldesigner/propertyEditorQmlSources/imports/StudioTheme/icons.ttf src/libs/utils/fileutils.cpp src/plugins/qmldesigner/components/edit3d/edit3dwidget.cpp src/plugins/qmldesigner/designercore/include/abstractview.h src/plugins/qmldesigner/designercore/include/nodemetainfo.h src/plugins/qmldesigner/designercore/metainfo/nodemetainfo.cpp src/plugins/qmldesigner/designercore/model/model_p.h src/plugins/remotelinux/linuxdevice.cpp tests/auto/utils/fileutils/tst_fileutils.cpp Change-Id: I26a21e2523d3d725fdb8c548a531cdbdaeaeca20
Diffstat (limited to 'src/libs/utils/fileutils.cpp')
-rw-r--r--src/libs/utils/fileutils.cpp22
1 files changed, 22 insertions, 0 deletions
diff --git a/src/libs/utils/fileutils.cpp b/src/libs/utils/fileutils.cpp
index 3c7c529219..58932a2c8e 100644
--- a/src/libs/utils/fileutils.cpp
+++ b/src/libs/utils/fileutils.cpp
@@ -800,4 +800,26 @@ FilePaths FileUtils::toFilePathList(const QStringList &paths) {
}
+qint64 FileUtils::bytesAvailableFromDFOutput(const QByteArray &dfOutput)
+{
+ const auto lines = filtered(dfOutput.split('\n'),
+ [](const QByteArray &line) { return line.size() > 0; });
+
+ QTC_ASSERT(lines.size() == 2, return -1);
+ const auto headers = filtered(lines[0].split(' '),
+ [](const QByteArray &field) { return field.size() > 0; });
+ QTC_ASSERT(headers.size() >= 4, return -1);
+ QTC_ASSERT(headers[3] == QByteArray("Available"), return -1);
+
+ const auto fields = filtered(lines[1].split(' '),
+ [](const QByteArray &field) { return field.size() > 0; });
+ QTC_ASSERT(fields.size() >= 4, return -1);
+
+ bool ok = false;
+ const quint64 result = QString::fromUtf8(fields[3]).toULongLong(&ok);
+ if (ok)
+ return result;
+ return -1;
+}
+
} // namespace Utils