From ee708d1cf8f2a74f34626e2da5b7b42a4d5cb0b7 Mon Sep 17 00:00:00 2001 From: Mike Ruprecht Date: Tue, 22 May 2012 14:25:19 +0100 Subject: [PATCH] flow-layout: Check for all positive values When creating a FlowLayout container, setting a specific size on it, and adding a child to it, as per the attached testcase, it crashes. The line on the backtrace doesn't really make sense, but from looking over it, it appears that it's probably because priv->line_natural is NULL. The attached patch makes it so in this case, priv->line_natural is allocated. https://bugzilla.gnome.org/show_bug.cgi?id=676068 Signed-off-by: Emmanuele Bassi --- clutter/clutter-flow-layout.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/clutter/clutter-flow-layout.c b/clutter/clutter-flow-layout.c index 94df4db1f..97524b219 100644 --- a/clutter/clutter-flow-layout.c +++ b/clutter/clutter-flow-layout.c @@ -580,8 +580,8 @@ clutter_flow_layout_allocate (ClutterLayoutManager *manager, * available size in case the FlowLayout wasn't given the exact * size it requested */ - if ((priv->req_width > 0 && avail_width != priv->req_width) || - (priv->req_height > 0 && avail_height != priv->req_height)) + if ((priv->req_width >= 0 && avail_width != priv->req_width) || + (priv->req_height >= 0 && avail_height != priv->req_height)) { clutter_flow_layout_get_preferred_width (manager, container, avail_height,