mirror of
https://github.com/labwc/labwc.git
synced 2025-11-29 06:59:52 -05:00
view: add defensive checks for null content_tree
This commit is contained in:
parent
b1e7282995
commit
8bd20f19dc
4 changed files with 14 additions and 3 deletions
|
|
@ -163,7 +163,7 @@ struct view {
|
|||
struct workspace *workspace;
|
||||
struct wlr_surface *surface;
|
||||
struct wlr_scene_tree *scene_tree;
|
||||
struct wlr_scene_tree *content_tree;
|
||||
struct wlr_scene_tree *content_tree; /* may be NULL for unmapped view */
|
||||
|
||||
/* These are never NULL and an empty string is set instead. */
|
||||
char *title;
|
||||
|
|
|
|||
|
|
@ -77,7 +77,7 @@ get_view_part(struct view *view, struct wlr_scene_node *node)
|
|||
snprintf(view_name, sizeof(view_name), "view (%s)", view->app_id);
|
||||
return view_name;
|
||||
}
|
||||
if (node == &view->content_tree->node) {
|
||||
if (view->content_tree && node == &view->content_tree->node) {
|
||||
return "view->content_tree";
|
||||
}
|
||||
if (view->resize_indicator.tree
|
||||
|
|
|
|||
|
|
@ -74,6 +74,13 @@ render_node(struct server *server, struct wlr_render_pass *pass,
|
|||
static struct wlr_buffer *
|
||||
render_thumb(struct output *output, struct view *view)
|
||||
{
|
||||
if (!view->content_tree) {
|
||||
/*
|
||||
* Defensive. Could possibly occur if view was unmapped
|
||||
* with OSD already displayed.
|
||||
*/
|
||||
return NULL;
|
||||
}
|
||||
struct server *server = output->server;
|
||||
struct wlr_buffer *buffer = wlr_allocator_create_buffer(server->allocator,
|
||||
view->current.width, view->current.height,
|
||||
|
|
|
|||
|
|
@ -2517,7 +2517,11 @@ view_set_shade(struct view *view, bool shaded)
|
|||
|
||||
view->shaded = shaded;
|
||||
ssd_enable_shade(view->ssd, view->shaded);
|
||||
wlr_scene_node_set_enabled(&view->content_tree->node, !view->shaded);
|
||||
/* An unmapped view may not have a content tree */
|
||||
if (view->content_tree) {
|
||||
wlr_scene_node_set_enabled(&view->content_tree->node,
|
||||
!view->shaded);
|
||||
}
|
||||
}
|
||||
|
||||
void
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue