From 7bc0b27ae540c941914f63e8fc5f81f8c515eb1b Mon Sep 17 00:00:00 2001 From: Willem Melching Date: Wed, 31 Mar 2021 10:56:42 +0200 Subject: [PATCH] RequestRepeater remove memory leak through payloads argument --- selfdrive/ui/qt/api.cc | 8 ++++---- selfdrive/ui/qt/api.hpp | 4 ++-- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/selfdrive/ui/qt/api.cc b/selfdrive/ui/qt/api.cc index cf7a8758cc..c95281aad9 100644 --- a/selfdrive/ui/qt/api.cc +++ b/selfdrive/ui/qt/api.cc @@ -76,14 +76,14 @@ QString CommaApi::create_jwt() { return create_jwt(*(new QVector>())); } -RequestRepeater::RequestRepeater(QWidget* parent, QString requestURL, int period_seconds, const QString &cache_key, QVector> payloads, bool disableWithScreen) +RequestRepeater::RequestRepeater(QWidget* parent, QString requestURL, int period_seconds, const QString &cache_key, bool disableWithScreen) : disableWithScreen(disableWithScreen), cache_key(cache_key), QObject(parent) { networkAccessManager = new QNetworkAccessManager(this); reply = NULL; QTimer* timer = new QTimer(this); - QObject::connect(timer, &QTimer::timeout, [=](){sendRequest(requestURL, payloads);}); + QObject::connect(timer, &QTimer::timeout, [=](){sendRequest(requestURL);}); timer->start(period_seconds * 1000); networkTimer = new QTimer(this); @@ -98,13 +98,13 @@ RequestRepeater::RequestRepeater(QWidget* parent, QString requestURL, int period } } -void RequestRepeater::sendRequest(QString requestURL, QVector> payloads){ +void RequestRepeater::sendRequest(QString requestURL){ if (GLWindow::ui_state.scene.started || !active || reply != NULL || (!GLWindow::ui_state.awake && disableWithScreen)) { return; } - QString token = CommaApi::create_jwt(payloads); + QString token = CommaApi::create_jwt({}); QNetworkRequest request; request.setUrl(QUrl(requestURL)); request.setRawHeader(QByteArray("Authorization"), ("JWT " + token).toUtf8()); diff --git a/selfdrive/ui/qt/api.hpp b/selfdrive/ui/qt/api.hpp index 3772727be9..cd18e72c08 100644 --- a/selfdrive/ui/qt/api.hpp +++ b/selfdrive/ui/qt/api.hpp @@ -33,7 +33,7 @@ class RequestRepeater : public QObject { Q_OBJECT public: - explicit RequestRepeater(QWidget* parent, QString requestURL, int period = 10, const QString &cache_key = "", QVector> payloads = *(new QVector>()), bool disableWithScreen = true); + explicit RequestRepeater(QWidget* parent, QString requestURL, int period = 10, const QString &cache_key = "", bool disableWithScreen = true); bool active = true; private: @@ -42,7 +42,7 @@ private: QNetworkAccessManager* networkAccessManager; QTimer* networkTimer; QString cache_key; - void sendRequest(QString requestURL, QVector> payloads); + void sendRequest(QString requestURL); private slots: void requestTimeout();