examples: check return value of QFile::open() calls

QFile::open() is marked [[nodiscard]].

Change-Id: I0fa884b329a47c4ad59f40d66b5fbc38f3a5648e
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
This commit is contained in:
Ahmad Samir 2025-01-11 12:27:24 +02:00
parent 3b95bfe7c7
commit e9f726db84
2 changed files with 14 additions and 3 deletions

View File

@ -20,7 +20,11 @@ WordCount singleThreadedWordCount(const QStringList &files)
WordCount wordCount;
for (const QString &file : files) {
QFile f(file);
f.open(QIODevice::ReadOnly);
if (!f.open(QIODevice::ReadOnly)) {
qWarning().noquote() << "Failed to open file:" << QDir::toNativeSeparators(file)
<< ":" << f.errorString();
return {};
}
QTextStream textStream(&f);
while (!textStream.atEnd()) {
const auto words = textStream.readLine().split(' ', Qt::SkipEmptyParts);
@ -37,7 +41,11 @@ WordCount singleThreadedWordCount(const QStringList &files)
WordCount countWords(const QString &file)
{
QFile f(file);
f.open(QIODevice::ReadOnly);
if (!f.open(QIODevice::ReadOnly)) {
qWarning().noquote() << "Failed to open file:" << QDir::toNativeSeparators(file)
<< ":" << f.errorString();
return {};
}
QTextStream textStream(&f);
WordCount wordCount;

View File

@ -17,7 +17,10 @@ MainWindow::MainWindow(QWidget *parent)
const QStringList headers({tr("Title"), tr("Description")});
QFile file(":/default.txt"_L1);
file.open(QIODevice::ReadOnly | QIODevice::Text);
const bool res = file.open(QIODevice::ReadOnly | QIODevice::Text);
Q_ASSERT_X(res, Q_FUNC_INFO, "Failed to open ':/default.txt'");
if (!res)
return;
auto *model = new TreeModel(headers, QString::fromUtf8(file.readAll()), this);
file.close();