From 828f9a6b40ba8722d9d7e805319a51d0e7eb2c4c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Niels=20Bernl=C3=B6hr?= Date: Sat, 24 Dec 2016 22:35:39 +0100 Subject: [PATCH] Fixed writing empty schedule files and breaking application --- src/schedule.cpp | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/src/schedule.cpp b/src/schedule.cpp index f194e54..6436520 100644 --- a/src/schedule.cpp +++ b/src/schedule.cpp @@ -9,6 +9,8 @@ Schedule::Schedule(QObject *parent) : QObject(parent) mFilename = mDirname+"/cache.json"; qDebug() << "filename" << mFilename; nam = new QNetworkAccessManager(this); + mUpdating = false; + emit updatingChanged(mUpdating); if(!loadFromDisk()){ loadFromNetwork(); } @@ -18,10 +20,15 @@ bool Schedule::loadFromDisk(){ QFile file(mFilename); if(file.open(QIODevice::ReadOnly)){ mSchedule = QString(file.readAll()); - emit scheduleChanged(mSchedule); file.close(); - qDebug() << "LOAD FROM DISK SUCCEEDED"; - return true; + if(!mSchedule.isEmpty()){ + emit scheduleChanged(mSchedule); + qDebug() << "LOAD FROM DISK SUCCEEDED"; + return true; + } else { + qDebug() << "LOAD FROM DISK FAILED"; + return false; + } } else { emit loadFromDiskFailed(); qDebug() << "LOAD FROM DISK FAILED"; @@ -43,7 +50,7 @@ void Schedule::loadFromNetwork(){ void Schedule::RequestFinished(QNetworkReply *reply){ if(reply->error() == QNetworkReply::NoError){ QString tmp = QString(reply->readAll()); - if(mSchedule != tmp){ + if(mSchedule != tmp && !tmp.isEmpty()){ mSchedule = tmp; emit scheduleChanged(mSchedule); write(mSchedule);