C++ replay cache folder path / fix (#22396)

pull/22400/head
grekiki 4 years ago committed by GitHub
parent 92895f1e68
commit 4c7acf680c
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 5
      selfdrive/ui/replay/route.cc
  2. 3
      selfdrive/ui/replay/route.h

@ -2,7 +2,6 @@
#include <curl/curl.h>
#include <QDir>
#include <QEventLoop>
#include <QFile>
#include <QJsonArray>
@ -179,7 +178,7 @@ Segment::Segment(int n, const SegmentFile &segment_files, bool load_dcam, bool l
static CURLGlobalInitializer curl_initializer;
static std::once_flag once_flag;
std::call_once(once_flag, [=]() {
if (!QDir(CACHE_DIR).exists()) QDir().mkdir(CACHE_DIR);
if (!CACHE_DIR.exists()) QDir().mkdir(CACHE_DIR.absolutePath());
});
// fallback to qcamera/qlog
@ -253,5 +252,5 @@ QString Segment::localPath(const QUrl &url) {
if (url.isLocalFile()) return url.toString();
QByteArray url_no_query = url.toString(QUrl::RemoveQuery).toUtf8();
return CACHE_DIR + QString(QCryptographicHash::hash(url_no_query, QCryptographicHash::Sha256).toHex());
return CACHE_DIR.filePath(QString(QCryptographicHash::hash(url_no_query, QCryptographicHash::Sha256).toHex()));
}

@ -1,5 +1,6 @@
#pragma once
#include <QDir>
#include <QObject>
#include <QString>
#include <vector>
@ -8,7 +9,7 @@
#include "selfdrive/ui/replay/framereader.h"
#include "selfdrive/ui/replay/logreader.h"
const QString CACHE_DIR = util::getenv("COMMA_CACHE", "/tmp/comma_download_cache/").c_str();
const QDir CACHE_DIR(util::getenv("COMMA_CACHE", "/tmp/comma_download_cache/").c_str());
const int connections_per_file = 3;
struct SegmentFile {

Loading…
Cancel
Save