summaryrefslogtreecommitdiff
path: root/gtk/gtkbuilderparser.c
diff options
context:
space:
mode:
authorMatthias Clasen <matthiasc@src.gnome.org>2007-11-10 04:15:44 +0000
committerMatthias Clasen <matthiasc@src.gnome.org>2007-11-10 04:15:44 +0000
commitf48938703934d02ae20ad46ed8487da059384be0 (patch)
treebb00377b298fb99ae528f9cedd6aee46af1cc798 /gtk/gtkbuilderparser.c
parentc3fcd42eda7ccee6fe669a263b0549af9e4768bb (diff)
downloadgtk+-f48938703934d02ae20ad46ed8487da059384be0.tar.gz
Don't assert on misplaced signal elements
svn path=/trunk/; revision=18977
Diffstat (limited to 'gtk/gtkbuilderparser.c')
-rw-r--r--gtk/gtkbuilderparser.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/gtk/gtkbuilderparser.c b/gtk/gtkbuilderparser.c
index b06df7951a..56acdc2613 100644
--- a/gtk/gtkbuilderparser.c
+++ b/gtk/gtkbuilderparser.c
@@ -297,7 +297,6 @@ parse_object (ParserData *data,
object_info->id = object_id;
object_info->constructor = constructor;
state_push (data, object_info);
- g_assert (state_peek (data) != NULL);
object_info->tag.name = element_name;
if (child_info)
@@ -341,7 +340,6 @@ parse_child (ParserData *data,
child_info = g_slice_new0 (ChildInfo);
state_push (data, child_info);
- g_assert (state_peek (data) != NULL);
child_info->tag.name = element_name;
for (i = 0; names[i]; i++)
{
@@ -450,7 +448,11 @@ parse_signal (ParserData *data,
gboolean swapped_set = FALSE;
int i;
- g_assert (data->stack != NULL);
+ if (data->stack == NULL)
+ {
+ error_invalid_tag (data, "signal", NULL, error);
+ return;
+ }
for (i = 0; names[i] != NULL; i++)
{