diff --git a/selfdrive/navd/main.cc b/selfdrive/navd/main.cc index 8cef07edcf..45c502d116 100644 --- a/selfdrive/navd/main.cc +++ b/selfdrive/navd/main.cc @@ -14,8 +14,6 @@ int main(int argc, char *argv[]) { std::signal(SIGINT, sigTermHandler); std::signal(SIGTERM, sigTermHandler); - MapRenderer * m = new MapRenderer(get_mapbox_settings()); - assert(m); - + MapRenderer m(get_mapbox_settings()); return app.exec(); } diff --git a/selfdrive/navd/map_renderer.cc b/selfdrive/navd/map_renderer.cc index 539783fff4..a4597b242d 100644 --- a/selfdrive/navd/map_renderer.cc +++ b/selfdrive/navd/map_renderer.cc @@ -53,8 +53,7 @@ MapRenderer::MapRenderer(const QMapboxGLSettings &settings, bool online) : m_set ctx->makeCurrent(surface.get()); assert(QOpenGLContext::currentContext() == ctx.get()); - gl_functions.reset(ctx->functions()); - gl_functions->initializeOpenGLFunctions(); + ctx->functions()->initializeOpenGLFunctions(); QOpenGLFramebufferObjectFormat fbo_format; fbo.reset(new QOpenGLFramebufferObject(WIDTH, HEIGHT, fbo_format)); @@ -67,7 +66,7 @@ MapRenderer::MapRenderer(const QMapboxGLSettings &settings, bool online) : m_set m_map->resize(fbo->size()); m_map->setFramebufferObject(fbo->handle(), fbo->size()); - gl_functions->glViewport(0, 0, WIDTH, HEIGHT); + ctx->functions()->glViewport(0, 0, WIDTH, HEIGHT); QObject::connect(m_map.data(), &QMapboxGL::mapChanged, [=](QMapboxGL::MapChange change) { // https://github.com/mapbox/mapbox-gl-native/blob/cf734a2fec960025350d8de0d01ad38aeae155a0/platform/qt/include/qmapboxgl.hpp#L116 @@ -157,9 +156,9 @@ bool MapRenderer::loaded() { void MapRenderer::update() { double start_t = millis_since_boot(); - gl_functions->glClear(GL_COLOR_BUFFER_BIT); + ctx->functions()->glClear(GL_COLOR_BUFFER_BIT); m_map->render(); - gl_functions->glFlush(); + ctx->functions()->glFlush(); double end_t = millis_since_boot(); if ((vipc_server != nullptr) && loaded()) { diff --git a/selfdrive/navd/map_renderer.h b/selfdrive/navd/map_renderer.h index 5739ba88f2..2f9e0a215e 100644 --- a/selfdrive/navd/map_renderer.h +++ b/selfdrive/navd/map_renderer.h @@ -28,7 +28,6 @@ public: private: std::unique_ptr ctx; std::unique_ptr surface; - std::unique_ptr gl_functions; std::unique_ptr fbo; std::unique_ptr vipc_server;