Add XML layout engine (WIP).
This commit is contained in:
@ -83,9 +83,12 @@ validate (const gchar *element_name,
|
||||
{
|
||||
gint i;
|
||||
gchar *element_path;
|
||||
GSList *head;
|
||||
|
||||
head = g_slist_prepend (element_stack, element_name);
|
||||
element_path = join_element_names (head);
|
||||
g_slist_free1 (head);
|
||||
|
||||
element_stack = g_slist_prepend (element_stack, element_name);
|
||||
element_path = join_element_names (element_stack);
|
||||
for (i = 0; i < G_N_ELEMENTS(valid_path_list); i++) {
|
||||
if (*valid_path_list[i] == '@')
|
||||
continue;
|
||||
@ -163,11 +166,11 @@ end_element_callback (GMarkupParseContext *pcontext,
|
||||
GError **error)
|
||||
{
|
||||
ParseCallbackData *data = user_data;
|
||||
GSList *head = data->element_stack;
|
||||
|
||||
g_free (data->element_stack->data);
|
||||
data->element_stack = g_slist_remove_link (data->element_stack,
|
||||
data->element_stack);
|
||||
g_slist_free1 (data->element_stack);
|
||||
g_free (head->data);
|
||||
data->element_stack = g_slist_next (data->element_stack);
|
||||
g_slist_free1 (head);
|
||||
}
|
||||
|
||||
static void
|
||||
|
||||
Reference in New Issue
Block a user