st/theme-node: Only try to parse non-empty inline styles

Otherwise cr_parser_new_from_buf() will fail creating a parser for a
buffer of length 0, resulting in further errors due to the parser being
NULL. This could happen when extensions were trying to set the style of
a widget to an empty string.

Fixes: https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/4634
Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2286>
(cherry picked from commit f0a0471927)
This commit is contained in:
Sebastian Keller 2022-04-29 23:30:21 +02:00 committed by Florian Müllner
parent 0c6dd57a0c
commit 4ec5bb0809

View file

@ -456,7 +456,7 @@ ensure_properties (StThemeNode *node)
if (node->theme)
properties = _st_theme_get_matched_properties (node->theme, node);
if (node->inline_style)
if (node->inline_style && *node->inline_style != '\0')
{
CRDeclaration *cur_decl;