Go to:
Gentoo Home
Documentation
Forums
Lists
Bugs
Planet
Store
Wiki
Get Gentoo!
Gentoo's Bugzilla – Attachment 146154 Details for
Bug 212572
dev-libs/dbus-glib - dbus-binding-tool ignore namespaced nodes & attributes
Home
|
New
–
[Ex]
|
Browse
|
Search
|
Privacy Policy
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
dbus-glib-ignore-namespaces.patch
dbus-glib-ignore-namespaces.patch (text/plain), 3.08 KB, created by
Balint Dobai-Pataky
on 2008-03-14 20:27:18 UTC
(
hide
)
Description:
dbus-glib-ignore-namespaces.patch
Filename:
MIME Type:
Creator:
Balint Dobai-Pataky
Created:
2008-03-14 20:27:18 UTC
Size:
3.08 KB
patch
obsolete
>diff -up dbus-glib-0.73/dbus/dbus-gparser.c.ignore-namespaces dbus-glib-0.73/dbus/dbus-gparser.c >--- dbus-glib-0.73/dbus/dbus-gparser.c.ignore-namespaces 2006-09-27 08:27:24.000000000 -0400 >+++ dbus-glib-0.73/dbus/dbus-gparser.c 2008-03-13 08:54:14.000000000 -0400 >@@ -128,13 +128,17 @@ locate_attributes (const char *element_ > > if (!found) > { >- g_set_error (error, >- G_MARKUP_ERROR, >- G_MARKUP_ERROR_PARSE, >- _("Attribute \"%s\" is invalid on <%s> element in this context"), >- attribute_names[i], element_name); >- retval = FALSE; >- goto out; >+ /* We want to passthrough namespaced XML nodes that we don't know anything about. */ >+ if (strchr (attribute_names[i], ':') == NULL) >+ { >+ g_set_error (error, >+ G_MARKUP_ERROR, >+ G_MARKUP_ERROR_PARSE, >+ _("Attribute \"%s\" is invalid on <%s> element in this context"), >+ attribute_names[i], element_name); >+ retval = FALSE; >+ goto out; >+ } > } > > ++i; >@@ -177,6 +181,7 @@ struct Parser > PropertyInfo *property; > ArgInfo *arg; > gboolean in_annotation; >+ guint unknown_namespaced_depth; > }; > > Parser* >@@ -791,10 +796,14 @@ parser_start_element (Parser *parse > } > else > { >- g_set_error (error, G_MARKUP_ERROR, >- G_MARKUP_ERROR_PARSE, >- _("Element <%s> not recognized"), >- element_name); >+ if (strchr (element_name, ':') != NULL) >+ /* Passthrough XML-namespaced nodes */ >+ parser->unknown_namespaced_depth += 1; >+ else if (parser->unknown_namespaced_depth == 0) >+ g_set_error (error, G_MARKUP_ERROR, >+ G_MARKUP_ERROR_PARSE, >+ _("Element <%s> not recognized"), >+ element_name); > } > > return TRUE; >@@ -844,6 +853,15 @@ parser_end_element (Parser *parser, > if (parser->node_stack == NULL) > parser->result = top; /* We are done, store the result */ > } >+ else if (strchr (element_name, ':') != NULL) >+ { >+ /* Passthrough XML-namespaced nodes */ >+ parser->unknown_namespaced_depth -= 1; >+ } >+ else if (parser->unknown_namespaced_depth > 0) >+ { >+ /* pass through unknown elements underneath a namespace */ >+ } > else > g_assert_not_reached (); /* should have had an error on start_element */ > >diff -up dbus-glib-0.73/dbus/dbus-glib-tool.c.ignore-namespaces dbus-glib-0.73/dbus/dbus-glib-tool.c >--- dbus-glib-0.73/dbus/dbus-glib-tool.c.ignore-namespaces 2008-03-13 08:31:21.000000000 -0400 >+++ dbus-glib-0.73/dbus/dbus-glib-tool.c 2008-03-13 08:32:15.000000000 -0400 >@@ -414,7 +414,7 @@ main (int argc, char **argv) > &error); > if (node == NULL) > { >- lose_gerror (_("Unable to load \"%s\""), error); >+ lose (_("Unable to load \"%s\": %s"), filename, error->message); > } > else > { >
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Raw
Actions:
View
Attachments on
bug 212572
: 146154 |
146155