diff options
| author | vaxerski <43317083+vaxerski@users.noreply.github.com> | 2022-03-19 22:34:50 +0100 |
|---|---|---|
| committer | vaxerski <43317083+vaxerski@users.noreply.github.com> | 2022-03-19 22:34:50 +0100 |
| commit | 74379879ddb2edd7e9628ffbcd931602b9db9dcf (patch) | |
| tree | d77c218e356ba64b74d00e0844dea777431fdbc9 /src | |
| parent | 221acebf2cff1125d3183d5bb0ace17a8f4da9de (diff) | |
Fixed a crash
Diffstat (limited to 'src')
| -rw-r--r-- | src/events/Events.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/events/Events.cpp b/src/events/Events.cpp index 4e31a065..c0390f95 100644 --- a/src/events/Events.cpp +++ b/src/events/Events.cpp @@ -125,11 +125,11 @@ void Events::listener_monitorDestroy(wl_listener* listener, void* data) { void Events::listener_newLayerSurface(wl_listener* listener, void* data) { const auto WLRLAYERSURFACE = (wlr_layer_surface_v1*)data; - if (!WLRLAYERSURFACE->output->data) { + if (!WLRLAYERSURFACE->output || !WLRLAYERSURFACE->output->data) { Debug::log(LOG, "New LayerSurface has no preferred monitor."); } - const auto PMONITOR = (SMonitor*)(WLRLAYERSURFACE->output->data ? WLRLAYERSURFACE->output->data : g_pCompositor->getMonitorFromCursor()); + const auto PMONITOR = (SMonitor*)((WLRLAYERSURFACE->output && WLRLAYERSURFACE->output->data) ? WLRLAYERSURFACE->output->data : g_pCompositor->getMonitorFromCursor()); PMONITOR->m_aLayerSurfaceLists[WLRLAYERSURFACE->pending.layer].push_back(new SLayerSurface()); SLayerSurface* layerSurface = PMONITOR->m_aLayerSurfaceLists[WLRLAYERSURFACE->pending.layer].back(); |
