Changeset View
Changeset View
Standalone View
Standalone View
plugins/platforms/wayland/wayland_backend.cpp
Show First 20 Lines • Show All 457 Lines • ▼ Show 20 Line(s) | |||||
458 | 458 | | |||
459 | WaylandBackend::~WaylandBackend() | 459 | WaylandBackend::~WaylandBackend() | ||
460 | { | 460 | { | ||
461 | if (m_pointerConstraints) { | 461 | if (m_pointerConstraints) { | ||
462 | m_pointerConstraints->release(); | 462 | m_pointerConstraints->release(); | ||
463 | } | 463 | } | ||
464 | delete m_waylandCursor; | 464 | delete m_waylandCursor; | ||
465 | 465 | | |||
466 | m_eventQueue->release(); | ||||
466 | qDeleteAll(m_outputs); | 467 | qDeleteAll(m_outputs); | ||
467 | 468 | | |||
468 | if (m_xdgShell) { | 469 | if (m_xdgShell) { | ||
469 | m_xdgShell->release(); | 470 | m_xdgShell->release(); | ||
470 | } | 471 | } | ||
471 | m_subCompositor->release(); | 472 | m_subCompositor->release(); | ||
472 | m_compositor->release(); | 473 | m_compositor->release(); | ||
473 | m_registry->release(); | 474 | m_registry->release(); | ||
474 | delete m_seat; | 475 | delete m_seat; | ||
475 | m_shm->release(); | 476 | m_shm->release(); | ||
476 | m_eventQueue->release(); | | |||
477 | 477 | | |||
478 | m_connectionThreadObject->deleteLater(); | | |||
479 | m_connectionThread->quit(); | 478 | m_connectionThread->quit(); | ||
480 | m_connectionThread->wait(); | 479 | m_connectionThread->wait(); | ||
480 | m_connectionThreadObject->deleteLater(); | ||||
davidedmundson: Does that work?
The thread the threadObject is in isn't running anymore. | |||||
apol: The destructor gets called. | |||||
481 | 481 | | |||
482 | qCDebug(KWIN_WAYLAND_BACKEND) << "Destroyed Wayland display"; | 482 | qCDebug(KWIN_WAYLAND_BACKEND) << "Destroyed Wayland display"; | ||
483 | } | 483 | } | ||
484 | 484 | | |||
485 | void WaylandBackend::init() | 485 | void WaylandBackend::init() | ||
486 | { | 486 | { | ||
487 | connect(m_registry, &Registry::compositorAnnounced, this, | 487 | connect(m_registry, &Registry::compositorAnnounced, this, | ||
488 | [this](quint32 name) { | 488 | [this](quint32 name) { | ||
▲ Show 20 Lines • Show All 352 Lines • Show Last 20 Lines |
Does that work?
The thread the threadObject is in isn't running anymore.