OBS User unknown 2008-02-29 21:37:14 +00:00 committed by Git OBS Bridge
parent 6c49dbb353
commit 2b8da4da48
5 changed files with 142 additions and 15 deletions

View File

@ -1,3 +1,13 @@
-------------------------------------------------------------------
Fri Feb 29 20:10:01 CET 2008 - tambet@suse.de
- Fix the generated introspection XML (patch from upstream).
- Fix the bug where GObject signals get emitted twice per dbus signal
(bfo #12505).
- Make the dbus-binding-tool ignore XML namespaces it doesn't understand,
making it possible to add documentation to the same place where interface
definitions live (bfo #14429).
-------------------------------------------------------------------
Wed Jun 27 14:28:22 CEST 2007 - thoenig@suse.de

View File

@ -1,7 +1,7 @@
#
# spec file for package dbus-1-glib (Version 0.74)
#
# Copyright (c) 2007 SUSE LINUX Products GmbH, Nuernberg, Germany.
# Copyright (c) 2008 SUSE LINUX Products GmbH, Nuernberg, Germany.
# This file and all modifications and additions to the pristine
# package are under the same license as the package itself.
#
@ -10,34 +10,40 @@
# norootforbuild
Name: dbus-1-glib
BuildRequires: dbus-1 dbus-1-devel dbus-1-x11 glib2-devel gtk-doc libexpat-devel libxml2-devel
URL: http://dbus.freedesktop.org/
License: GNU General Public License (GPL), Other uncritical OpenSource License, D-BUS is licensed to you under your choice of the Academic Free
Url: http://dbus.freedesktop.org/
License: GPL v2 or later; Other uncritical OpenSource License
Group: Development/Libraries/Other
Version: 0.74
Release: 1
Autoreqprov: on
Release: 61
AutoReqProv: on
Summary: GLib-based library for using D-Bus
Source0: dbus-glib-%{version}.tar.gz
Patch0: dbus-glib-nameownerchange-workaround-thoenig-01.patch
Patch1: dbus-glib-gvalue-utils-fix-thoenig-01.patch
Patch2: dbus-glib-introspection-xml.patch
Patch3: dbus-glib-proxy-signals-once.patch
Patch4: dbus-glib-ignore-namespaces.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-build
Requires: dbus-1 >= %( echo `rpm -q --queryformat '%{VERSION}-%{RELEASE}' dbus-1`)
%package -n dbus-1-glib-devel
Summary: Developer package for D-Bus/GLib bindings
Requires: dbus-1 >= %( echo `rpm -q --queryformat '%{VERSION}-%{RELEASE}' dbus-1`)
Requires: dbus-1-devel >= %( echo `rpm -q --queryformat '%{VERSION}-%{RELEASE}' dbus-1-devel`)
Requires: dbus-1-glib = %{version}
Requires: glib2-devel
Autoreqprov: on
AutoReqProv: on
Group: Development/Libraries/Other
%package -n dbus-1-glib-doc
Summary: Documentation for the D-Bus/GLib bindings
Requires: dbus-1 >= %( echo `rpm -q --queryformat '%{VERSION}-%{RELEASE}' dbus-1`)
Requires: dbus-1-devel >= %( echo `rpm -q --queryformat '%{VERSION}-%{RELEASE}' dbus-1-devel`)
Requires: dbus-1-glib = %{version}
Autoreqprov: on
AutoReqProv: on
Group: Documentation/HTML
%description
@ -63,7 +69,6 @@ Authors:
Colin Walters <walters@gnu.org>
David Zeuthen <david@fubar.dk>
%description -n dbus-1-glib-devel
D-Bus add-on library to integrate the standard D-Bus library with the
GLib thread abstraction and main loop.
@ -87,7 +92,6 @@ Authors:
Colin Walters <walters@gnu.org>
David Zeuthen <david@fubar.dk>
%description -n dbus-1-glib-doc
D-Bus add-on library to integrate the standard D-Bus library with the
GLib thread abstraction and main loop.
@ -115,6 +119,9 @@ Authors:
%setup -n dbus-glib-%{version} -q
%patch0 -p0
%patch1 -p0
%patch2 -p1
%patch3 -p1
%patch4 -p1
%build
autoreconf -fi
@ -160,7 +167,14 @@ make DESTDIR=%{buildroot} install
%{_datadir}/gtk-doc/html/dbus-glib/*
%changelog
* Wed Jun 27 2007 - thoenig@suse.de
* Fri Feb 29 2008 tambet@suse.de
- Fix the generated introspection XML (patch from upstream).
- Fix the bug where GObject signals get emitted twice per dbus signal
(bfo #12505).
- Make the dbus-binding-tool ignore XML namespaces it doesn't understand,
making it possible to add documentation to the same place where interface
definitions live (bfo #14429).
* Wed Jun 27 2007 thoenig@suse.de
- Update to dbus-1-glib 0.74
- Changes:
* Init threading first to stop a warning from new GLib.
@ -176,19 +190,19 @@ make DESTDIR=%{buildroot} install
* Update abstract socket test from DBus, which now cross-compiles
* Rename the error quark to be unique
* Update AUTHORS
* Sat Apr 28 2007 - aj@suse.de
* Sat Apr 28 2007 aj@suse.de
- Add libexpat-devel to build requires.
* Thu Mar 01 2007 - thoenig@suse.de
* Thu Mar 01 2007 thoenig@suse.de
- new upstream version 0.73
- new package dbus-1-glib-doc
- drop patch dbus-glib-introspect-fix-thoenig-01.patch
* Mon Nov 06 2006 - thoenig@suse.de
* Mon Nov 06 2006 thoenig@suse.de
- loosen dependency to D-Bus
* Tue Aug 01 2006 - thoenig@suse.de
* Wed Aug 02 2006 thoenig@suse.de
- new upstream version 0.71
- new package: dbus-1-glib-devel
- moved dbus-binding-tool from dbus-1-glib to dbus-1-glib-devel
- moved GLib header and .la files from dbus-1-devel to
dbus-1-glib-devel
* Tue Aug 01 2006 - thoenig@suse.de
* Wed Aug 02 2006 thoenig@suse.de
- split out binings to sparate spec files

View File

@ -0,0 +1,68 @@
Index: dbus-glib-0.74/dbus/dbus-gparser.c
===================================================================
--- dbus-glib-0.74.orig/dbus/dbus-gparser.c
+++ dbus-glib-0.74/dbus/dbus-gparser.c
@@ -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
+ g_set_error (error, G_MARKUP_ERROR,
+ G_MARKUP_ERROR_PARSE,
+ _("Element <%s> not recognized"),
+ element_name);
}
return TRUE;
@@ -844,6 +853,11 @@ 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
g_assert_not_reached (); /* should have had an error on start_element */

View File

@ -0,0 +1,13 @@
Index: dbus-glib-0.74/dbus/dbus-gobject.c
===================================================================
--- dbus-glib-0.74.orig/dbus/dbus-gobject.c
+++ dbus-glib-0.74/dbus/dbus-gobject.c
@@ -488,8 +488,6 @@ write_interface (gpointer key, gpointer
}
g_free (dbus_type);
-
- g_string_append (xml, " </property>\n");
}
g_slist_free (values->properties);

View File

@ -0,0 +1,22 @@
Index: dbus-glib-0.74/dbus/dbus-gproxy.c
===================================================================
--- dbus-glib-0.74.orig/dbus/dbus-gproxy.c
+++ dbus-glib-0.74/dbus/dbus-gproxy.c
@@ -1239,8 +1239,15 @@ dbus_g_proxy_manager_filter (DBusConnect
dbus_message_get_interface (message));
owner_list = g_hash_table_lookup (manager->proxy_lists, tri);
- if (owner_list != NULL)
- full_list = g_slist_concat (full_list, g_slist_copy (owner_list->proxies));
+ if (owner_list != NULL) {
+ GSList *elt;
+
+ /* Ignore duplicates when adding to full_list */
+ for (elt = owner_list->proxies; elt; elt = g_slist_next (elt)) {
+ if (!g_slist_find (full_list, elt->data))
+ full_list = g_slist_append (full_list, elt->data);
+ }
+ }
g_free (tri);
}
}