summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--rbutil/rbutilqt/httpget.cpp31
-rw-r--r--rbutil/rbutilqt/httpget.h1
2 files changed, 23 insertions, 9 deletions
diff --git a/rbutil/rbutilqt/httpget.cpp b/rbutil/rbutilqt/httpget.cpp
index c1e541391b..e3742480ab 100644
--- a/rbutil/rbutilqt/httpget.cpp
+++ b/rbutil/rbutilqt/httpget.cpp
@@ -61,15 +61,8 @@ HttpGet::HttpGet(QObject *parent)
61void HttpGet::setCache(QDir d) 61void HttpGet::setCache(QDir d)
62{ 62{
63 m_cachedir = d; 63 m_cachedir = d;
64 bool result = true; 64 bool result;
65 65 result = initializeCache(d);
66 QString p = m_cachedir.absolutePath() + "/rbutil-cache";
67 if(QFileInfo(m_cachedir.absolutePath()).isDir())
68 {
69 if(!QFileInfo(p).isDir())
70 result = m_cachedir.mkdir("rbutil-cache");
71 }
72 else result = false;
73 qDebug() << "HttpGet::setCache(QDir)" << d.absolutePath() << result; 66 qDebug() << "HttpGet::setCache(QDir)" << d.absolutePath() << result;
74 m_usecache = result; 67 m_usecache = result;
75} 68}
@@ -79,6 +72,26 @@ void HttpGet::setCache(bool c)
79{ 72{
80 qDebug() << "setCache(bool)" << c; 73 qDebug() << "setCache(bool)" << c;
81 m_usecache = c; 74 m_usecache = c;
75 // make sure cache is initialized
76 if(c)
77 m_usecache = initializeCache(m_cachedir);
78}
79
80
81bool HttpGet::initializeCache(const QDir& d)
82{
83 bool result;
84 QString p = d.absolutePath() + "/rbutil-cache";
85 if(QFileInfo(d.absolutePath()).isDir())
86 {
87 if(!QFileInfo(p).isDir())
88 result = d.mkdir("rbutil-cache");
89 }
90 else
91 result = false;
92
93 return result;
94
82} 95}
83 96
84 97
diff --git a/rbutil/rbutilqt/httpget.h b/rbutil/rbutilqt/httpget.h
index 79522f6e8f..3ff00b4d55 100644
--- a/rbutil/rbutilqt/httpget.h
+++ b/rbutil/rbutilqt/httpget.h
@@ -66,6 +66,7 @@ class HttpGet : public QObject
66 void httpStarted(int); 66 void httpStarted(int);
67 67
68 private: 68 private:
69 bool initializeCache(const QDir&);
69 QHttp http; //< download object 70 QHttp http; //< download object
70 QFile *outputFile; 71 QFile *outputFile;
71 int response; //< http response 72 int response; //< http response