commit 8df3281e536557cfd6b4056a9c95102d57596179 Author: Colin Walters Date: Wed Mar 24 20:17:54 2010 -0400 [configure] Release 0.86 configure.ac | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit 551d86f7fe0e7f2304f57baa7a406c935182b06a Author: Dan Williams Date: Wed Mar 24 14:40:09 2010 -0700 core: performance optimization for object info lookup dbus/dbus-gobject.c | 31 ++++++++++++++++++------------- 1 files changed, 18 insertions(+), 13 deletions(-) commit ed73cb2f32c411a3306c6dfe2ae541aea249f200 Author: Dan Williams Date: Wed Mar 24 12:20:13 2010 -0700 core: allow duplicate property names on GInterfaces Allows dbus-glib clients to handle objects that implement more than one interface with the properties of the same name. Normally this would not be allowed since with GObject all properties are in the same namespace. This patch allows the interface to register "shadow" properties on a per-interface basis which redirect the lookup of the property name. dbus/dbus-glib.h | 4 + dbus/dbus-gobject.c | 160 ++++++++++++++++++++++++++--- test/interfaces/Makefile.am | 24 ++++- test/interfaces/test-client.c | 186 +++++++++++++++++++++++++++++++++ test/interfaces/test-dup-prop-a.xml | 6 + test/interfaces/test-dup-prop-b.xml | 6 + test/interfaces/test-dup-prop.c | 192 +++++++++++++++++++++++++++++++++++ test/interfaces/test-dup-prop.h | 60 +++++++++++ test/interfaces/test-server.c | 8 ++ 9 files changed, 627 insertions(+), 19 deletions(-) commit c1bbf6fb1b7c6e2a743c8a7353cddea52d42fa2d Author: Colin Walters Date: Thu Mar 18 21:39:24 2010 -0400 [dbus-gobject.c] Trivial compiler warning fixes dbus/dbus-gobject.c | 3 +-- 1 files changed, 1 insertions(+), 2 deletions(-) commit b52c16b495632bd945328ca858533d5660106bdf Author: Colin Walters Date: Thu Mar 18 21:37:38 2010 -0400 Remove dbus-glib-undeclared.txt from git; it's a generated file 0 files changed, 0 insertions(+), 0 deletions(-) commit 7b029451dac1fdd14da4e558cc995fb7f5263d04 Author: Colin Walters Date: Thu Mar 18 21:37:05 2010 -0400 [configure.ac] Use AM_SILENT_RULES if available configure.ac | 2 ++ 1 files changed, 2 insertions(+), 0 deletions(-) commit db026859406ce768d71d4ccf850e8be56b52998c Author: Will Thompson Date: Tue Mar 9 17:18:10 2010 +0000 Free errors returned by method implementations https://bugs.freedesktop.org/show_bug.cgi?id=26981 dbus/dbus-gobject.c | 4 ++++ 1 files changed, 4 insertions(+), 0 deletions(-) commit 3902ac5a13a7510b8411b1147d0cce5711cf4168 Author: Sven Herzberg Date: Mon Mar 8 16:50:28 2010 +0100 turn the gtk-doc documentation into buildable shape * dbus/dbus-gobject.c: the < and > symbols broke the sgml generation in gtk-doc dbus/dbus-gobject.c | 6 +++--- 1 files changed, 3 insertions(+), 3 deletions(-) commit 3d69cfeab177e79b4ecfe1b4284a5bd840fd11e7 Author: Colin Walters Date: Thu Apr 2 14:01:05 2009 +0100 Fix hyphenated error codes correctly The error code names generated my glib-mkenums separate the words by hyphens which are invalid D-BUS error names. This patch converts them back to wincaps, but we can't uppercase the first letter. Based on an original patch from Neil Roberts dbus/dbus-gobject.c | 21 ++++++++++++++++++--- test/core/my-object.c | 13 +++++++++++++ test/core/my-object.h | 4 +++- test/core/test-dbus-glib.c | 7 +++++++ test/core/test-service-glib.xml | 3 +++ 5 files changed, 44 insertions(+), 4 deletions(-) commit 4538adc1fe903d1ce71ca24590df9bdac7c4a50e Author: Colin Walters Date: Tue Mar 2 12:12:18 2010 -0500 Revert "Squash underscores and dashes in errors when converting to DBus errors" This reverts commit 9637ed9f0c66982a06048b18ccf983881643e456. This incorrectly uppercased the first character in error names: https://bugzilla.redhat.com/show_bug.cgi?id=569631 dbus/dbus-gobject.c | 13 ++----------- 1 files changed, 2 insertions(+), 11 deletions(-) commit 2d85761286e96df3490426af1e20e7b553448092 Author: Colin Walters Date: Tue Mar 2 13:52:36 2010 -0500 Remove dbus-glib-undocumented.txt from git It's autogenerated by gtk-doc, so shouldn't be in git. doc/reference/dbus-glib-undocumented.txt | 60 ------------------------------ 1 files changed, 0 insertions(+), 60 deletions(-) commit 9637ed9f0c66982a06048b18ccf983881643e456 Author: Colin Walters Date: Mon Feb 1 10:09:53 2010 -0500 Squash underscores and dashes in errors when converting to DBus errors We were just taking the enumeration nick and appending to the DBus error name, but since these can contain '-' we need to squash. dbus/dbus-gobject.c | 13 +++++++++++-- 1 files changed, 11 insertions(+), 2 deletions(-) commit d039ca66f85955788e2d58294c249579bed9cc03 Author: Colin Walters Date: Wed Jan 27 13:56:48 2010 -0500 Release 0.84 configure.ac | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit f1c3f7bf585d6010c84491372b0a6f0ae3b1432a Author: Colin Walters Date: Wed Jan 27 13:01:29 2010 -0500 Add GMainContext to dbus_g_bus_get_private, add a test case To even sort of work with threads right now, a common workaround is to open a private connection. This patch more explicitly supports creating a private connection, associating it with the GMainContext which will be used for a thread. Also, add a (very simple) test case which just uses a private connection for the default main context. dbus/dbus-glib.h | 1 + dbus/dbus-gmain.c | 4 +++- test/core/test-dbus-glib.c | 21 +++++++++++++++++++++ 3 files changed, 25 insertions(+), 1 deletions(-) commit 87c645ed17d6fef350e8c26e322ecde566a27d42 Author: Colin Walters Date: Wed Jan 27 13:06:34 2010 -0500 Fix compilation of dbus-gvalue.c commit c4a5653e0402f876a1824c33a19e69991ee46a27 was missing a "break;" dbus/dbus-gvalue.c | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) commit e6cd65545ee5cd2eeb5ccc21d5bfe8e8ac286d95 Author: Colin Walters Date: Wed Jan 27 11:40:07 2010 -0500 Add note about non-maintenance of NEWS NEWS | 7 +++++++ 1 files changed, 7 insertions(+), 0 deletions(-) commit c4a5653e0402f876a1824c33a19e69991ee46a27 Author: Andres Salomon Date: Wed Aug 19 08:57:21 2009 -0400 dbus-gvalue: set an error when demarshal_basic doesn't recognize type By passing dbus_g_proxy_call an incorrect signature, we can cause the function to fail but not provide any error message (if G_DISABLE_ASSERT is defined). As smvc pointed out, this can also become a runtime error when a telepathy CM changes signature, but the client hasn't been updated. As such, g_assert isn't an appropriate action. See http://bugs.debian.org/541632 for more information. This patch causes it to set an error when demarshalling a type that it's not expecting. Instead of a NULL error, one instead sees something like the following when the method returns a path object but the client expected a string: "modem Create() failed: Expected type gchararray, got type code 'o'" Signed-off-by: Andres Salomon dbus/dbus-gvalue.c | 3 +-- 1 files changed, 1 insertions(+), 2 deletions(-) commit b976413f896f2d5a0be9449fc77a716f2e67cc96 Author: Jiří KlimeÅ¡ Date: Wed Jan 27 10:36:57 2010 -0500 Fix bad NAME in dbus-binding-tool man page doc/dbus-binding-tool.1 | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit 34636b12c62523b9db789b0fbeb3a86782debf10 Author: Colin Walters Date: Fri Jan 15 12:23:30 2010 -0500 Import dbus-bus-introspect.xml upstream Rather than having consumers pass an externally-generated XML file, just include one here. In practice our target audience is OS builders, who if they have the capability to update dbus, also have the capability to update dbus-glib. Makefile.am | 1 + configure.ac | 12 ------- dbus-bus-introspect.xml | 77 +++++++++++++++++++++++++++++++++++++++++++++++ tools/Makefile.am | 15 ++------- 4 files changed, 81 insertions(+), 24 deletions(-) commit 9cefa4bae8d20beddf695380af00945790da0206 Merge: 5e5a1c1 15f4533 Author: Simon McVittie Date: Wed Nov 25 14:55:32 2009 +0000 Merge remote branch 'upstream/master' commit 15f4533742ad6aeab85ebb723ac8fca99c00e939 Author: Will Thompson Date: Mon Nov 16 13:32:40 2009 +0000 Don't leak DBusGMethodInvocation for no-reply calls https://bugs.freedesktop.org/show_bug.cgi?id=25119 dbus/dbus-gobject.c | 17 ++++++++++------- 1 files changed, 10 insertions(+), 7 deletions(-) commit 5e5a1c1930173dac0e331c2cb78a164c3565b0eb Merge: 2a4396b 90e2199 Author: Simon McVittie Date: Tue Sep 29 14:22:07 2009 +0100 Merge remote branch 'wjt/duplicate-registrations' Signed-off-by: Simon McVittie commit 2a4396b523912c3bf4d2a1ef6d6fa930c0871c67 Merge: 980b468 e2007cf Author: Simon McVittie Date: Tue Sep 29 14:07:11 2009 +0100 Merge branch '20936-fsf-address' Reviewed-by: Colin Walters commit 980b46870aa0e44a04ad1191d7af1d0601577501 Author: Stian Skjelstad Date: Fri Sep 18 14:01:00 2009 -0400 Bug 19623 - Add dbus_g_bus_get_private Useful for cases where you have to get a private connection, among them to work around threading issues. Signed-off-by: Colin Walters dbus/dbus-glib.h | 3 +++ dbus/dbus-gmain.c | 41 +++++++++++++++++++++++++++++++++++++++++ 2 files changed, 44 insertions(+), 0 deletions(-) commit 90e2199ac99f5b8ab0cd5f45dcb398ecf9af03d9 Author: Will Thompson Date: Sat Sep 12 11:58:22 2009 +0100 Copy object registration list when unregistering. Since the list of registrations on the object is modified when each path is removed, iterating it directly is wrong: after the first pass of the loop, 'iter' would point to a link which has been freed. dbus/dbus-gobject.c | 8 +++++++- 1 files changed, 7 insertions(+), 1 deletions(-) commit 39e2642e41b2293de7556fa15c57872f78ffcdc8 Author: Will Thompson Date: Sat Sep 12 11:28:25 2009 +0100 Only re-set registration list if it's non-empty dbus/dbus-gobject.c | 4 +++- 1 files changed, 3 insertions(+), 1 deletions(-) commit 0263b72669de710e0adda419a520ae9f123a1be9 Author: Colin Walters Date: Wed Aug 19 13:27:53 2009 -0400 Support duplicate object registrations Before commit e869fda4, we semi-supported registering the same object multiple times. We'd accept messages for both paths, however when signals were emitted, they'd both use the first object path. That commit simply disallowed multiple registrations, which broke backwards compatibility with some projects like PolicyKit which had the same object registered with different paths. With this commit, explicitly allow and support multiple registrations. The primary change is that signals are now emitted once for each registration path of an object, using the correct path. dbus/dbus-gobject.c | 159 ++++++++++++++++++++++++++++------------- test/core/test-dbus-glib.c | 41 +++++++++++ test/core/test-service-glib.c | 4 + 3 files changed, 154 insertions(+), 50 deletions(-) commit c993494ad463ffe55b8603e58aa5ecb6dd731144 Author: Colin Walters Date: Thu Jul 16 14:09:18 2009 -0400 Release 0.82 configure.ac | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit 65e03ccf0f2417a83fd187035b80d680e376fd32 Author: Colin Walters Date: Thu Jul 16 13:51:57 2009 -0400 Test for git-log in Makefile.am should just be for git now The combined tools are no longer in $PATH for modern git. Makefile.am | 8 ++++---- 1 files changed, 4 insertions(+), 4 deletions(-) commit f5edb761202d3aff8f8bd0bc68dd57d3d32d2bd1 Author: Alban Crequy Date: Thu Jul 16 13:39:08 2009 -0400 Bug 18294 - Be defensive about a possibly NULL property string As far as I can tell we should always be writing one, but it doesn't hurt to guard against NULL here. Signed-off-by: Colin Walters dbus/dbus-gobject.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) commit 2508e687e7d7792a656c7af0aad1be851faa33bb Author: Brian Cameron Date: Thu Jul 16 13:15:38 2009 -0400 Bug 20343 - Add a man page for dbus-binding-tool Signed-off-by: Colin Walters doc/Makefile.am | 6 +- doc/dbus-binding-tool.1 | 294 +++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 299 insertions(+), 1 deletions(-) commit 29513843b22dbd2aba1d3ba2930bb38e2c6631e5 Author: Marc-André Lureau Date: Sat May 9 18:13:49 2009 +0300 build: fix undefined macro: AM_PROG_LIBTOOL with recent libtool Without this patch, I get: configure.ac:206: warning: macro `AM_PROG_LIBTOOL' not found in library configure.ac:213: error: possibly undefined macro: AM_PROG_LIBTOOL If this token and others are legitimate, please use m4_pattern_allow. See the Autoconf documentation. autoreconf2.50: /usr/bin/autoconf failed with exit status: 1 (I am using libltdl-dev 2.2.6a-4 from Debian) Makefile.am | 1 + autogen.sh | 1 + 2 files changed, 2 insertions(+), 0 deletions(-) commit d66337bdf9fc8f5372d84b05ae68c818bb9c881b Author: Luis Menina Date: Thu Jul 16 10:55:39 2009 -0400 Bugg 22244 - Only include , not individual headers Signed-off-by: Colin Walters dbus/dbus-glib-tool.h | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit 67c289a60a4ac2ee9660f38a7168a238c1b3cffb Author: Colin Walters Date: Wed Jul 15 15:33:31 2009 -0400 Clean up some compilation warnings dbus/dbus-gloader-expat.c | 6 +++--- dbus/dbus-gobject.c | 4 ++-- test/core/test-dbus-glib.c | 2 +- 3 files changed, 6 insertions(+), 6 deletions(-) commit 5eea6af0d24780109dbbc15b8bfa4078df3a80a2 Author: Colin Walters Date: Wed Jul 15 15:28:06 2009 -0400 Add missing prototype for dbus_g_connection_unregister_g_object The function was introduced in commit b4911558384de and intended to be public, make it so. dbus/dbus-glib.h | 2 ++ 1 files changed, 2 insertions(+), 0 deletions(-) commit de68d2b2fc3012ae733212a704aa29a748f22f80 Author: Brian Tarricone Date: Wed Jul 15 15:03:36 2009 -0400 Bug 21753 - Correctly initialize GValues in dbus-binding-tool generated code GValues should have their type set to 0. Signed-off-by: Colin Walters dbus/dbus-binding-tool-glib.c | 12 ++++++++---- 1 files changed, 8 insertions(+), 4 deletions(-) commit af07e13e6afe09456588ddba4b72cba215bc7c93 Author: Jason Leach Date: Wed Jul 1 15:41:04 2009 -0400 Bug 21362 - Remove use of deprecated symbols The _set*_take_ownership are replaced by _take, and use g_main_loop_run. dbus/dbus-binding-tool-glib.c | 6 +++--- dbus/dbus-gvalue-utils.c | 14 +++++++------- dbus/dbus-gvalue.c | 16 ++++++++-------- m4/gtk-doc.m4 | 2 +- test/core/test-dbus-glib.c | 2 +- test/core/test-thread-client.c | 2 +- test/core/test-thread-server.c | 2 +- 7 files changed, 22 insertions(+), 22 deletions(-) commit e2007cfc5822f057b975660bd369fee56a7f2eb6 Author: Simon McVittie Date: Tue Jun 9 16:22:46 2009 +0100 fd.o #20936: Fix another couple of instances of the old FSF address `git grep 'Temple Place'` now returns nothing. dbus/dbus-bash-completion-helper.c | 2 +- dbus/dbus-gtool-test.h | 2 +- dbus/dbus-gtype-specialized-priv.h | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) commit cbe5250e553112221e1230301767ad1052790b0a Author: Tobias Mueller Date: Wed Apr 15 21:37:05 2009 +0100 fd.o #20936: Update FSF address The glib bindings contain an outdated address of the FSF: Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 The new address is: http://www.fsf.org/about/contact.html writes: > Free Software Foundation > 51 Franklin Street, Fifth Floor > Boston, MA 02110-1301 > USA Signed-off-by: Simon McVittie COPYING | 4 ++-- dbus/dbus-binding-tool-glib.c | 2 +- dbus/dbus-binding-tool-glib.h | 2 +- dbus/dbus-gidl.c | 2 +- dbus/dbus-gidl.h | 2 +- dbus/dbus-glib-lowlevel.h | 2 +- dbus/dbus-glib-tool.c | 2 +- dbus/dbus-glib-tool.h | 2 +- dbus/dbus-glib.c | 2 +- dbus/dbus-glib.h | 2 +- dbus/dbus-gloader-expat.c | 2 +- dbus/dbus-gmain.c | 2 +- dbus/dbus-gobject.c | 2 +- dbus/dbus-gobject.h | 2 +- dbus/dbus-gparser.c | 2 +- dbus/dbus-gparser.h | 2 +- dbus/dbus-gproxy.c | 2 +- dbus/dbus-gsignature.c | 2 +- dbus/dbus-gtest-main.c | 2 +- dbus/dbus-gtest.c | 2 +- dbus/dbus-gtest.h | 2 +- dbus/dbus-gthread.c | 2 +- dbus/dbus-gtype-specialized.c | 2 +- dbus/dbus-gtype-specialized.h | 2 +- dbus/dbus-gutils.c | 2 +- dbus/dbus-gutils.h | 2 +- dbus/dbus-gvalue-utils.c | 2 +- dbus/dbus-gvalue-utils.h | 2 +- dbus/dbus-gvalue.c | 2 +- test/core/test-profile.c | 2 +- test/decode-gcov.c | 2 +- 31 files changed, 32 insertions(+), 32 deletions(-) commit b615918eef9723c00f03d30903181d9989dfd261 Merge: cb8a113 f550c49 Author: Simon McVittie Date: Tue Jun 9 16:15:49 2009 +0100 Merge branch '13908-autoinit' Signed-off-by: Simon McVittie Reviewed-by: Colin Walters Bug: http://bugs.freedesktop.org/show_bug.cgi?id=13908 commit f550c492a10922795099166db34d8ccf5dbe63a7 Author: Simon McVittie Date: Thu May 28 18:21:27 2009 +0100 fd.o #13908: silently initialize specialized types whenever required Colin Walters asks: "Is there a reason not to just do the initialization at the time someone calls one of the public API entry points that depends on it?". This turns out to be non-trivial because those public API entry points are themselves used inside the initialization. dbus/Makefile.am | 1 + dbus/dbus-gtype-specialized-priv.h | 48 +++++++++++++++++++++++++++ dbus/dbus-gtype-specialized.c | 64 ++++++++++++++++++++++++++---------- dbus/dbus-gvalue-utils.c | 11 +++--- 4 files changed, 101 insertions(+), 23 deletions(-) commit cb8a113be8808fe2c88d3e7851e79115235f9e8c Merge: 0d64d31 725e98f Author: Simon McVittie Date: Thu May 28 18:04:20 2009 +0100 Merge branch '20716-with-dbus-binding-tool' Signed-off-by: Simon McVittie Bug: https://bugs.freedesktop.org/show_bug.cgi?id=20716 Reviewed-by: Colin Walters commit 0d64d318397da26f224abd2d7ef1f27d14a544fa Merge: 48abffb b93c2a1 Author: Simon McVittie Date: Thu May 28 18:02:44 2009 +0100 Merge branch '5688-survive-disconnection' This is unsuitable for cherry-picking by distros, since it adds API. Bug: https://bugs.freedesktop.org/show_bug.cgi?id=21219 Reviewed-by: Colin Walters commit 48abffba4cd81c182901dd7c80987251ba05348e Merge: 9a0c188 e869fda Author: Simon McVittie Date: Thu May 28 18:01:54 2009 +0100 Merge part of branch '5688-survive-disconnection' Bug: https://bugs.freedesktop.org/show_bug.cgi?id=5688 Reviewed-by: Colin Walters commit 9a0c188e2662809950738e92b963e5602dfbd8eb Merge: 03de444 98087a3 Author: Simon McVittie Date: Thu May 7 15:33:15 2009 +0100 Merge branch '16776-make-dbus-errors-throwable' Reviewed-by: Colin Walters commit 03de44461132ed610c3d52133d4b4760f20e4cb2 Merge: b6b3787 f363811 Author: Simon McVittie Date: Mon Apr 27 10:47:58 2009 +0100 Merge branch '20884-proxy-manager-replace-name-owner' Reviewed-by: Colin Walters commit b6b37871960ee06d9cc589e031ec3d5d6a4a6b92 Merge: e11c0ac d275c2e Author: Simon McVittie Date: Thu Apr 16 19:25:02 2009 +0100 Merge branch '20886-configure-cleanup' Reviewed by Colin Walters, fd.o #20886. commit e11c0aced3b00733766207f15876fb300d63d442 Author: Colin Walters Date: Wed Feb 25 11:27:57 2009 -0500 Bug 19927 - Use const for GError * param we're not modifying This makes it clearer we're not taking ownership of the error, and interoperates more nicely with functions which provide const GError *. dbus/dbus-glib.h | 2 +- dbus/dbus-gobject.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) commit a809ea3016a0eae166df13c757f3e917dea0c0f9 Author: Vincent Untz Date: Thu Apr 16 12:35:42 2009 -0400 Bug 20879 - Use --skip-source argument for glib-genmarshal This avoids adding debug information for the temporary file. Signed-off-by: Colin Walters dbus/dbus-binding-tool-glib.c | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) commit b93c2a19f468930c6badf054f79597d99d86e76c Author: Simon McVittie Date: Thu Apr 16 12:59:10 2009 +0100 fd.o #21219: regression test test/core/Makefile.am | 22 ++++++++++++++- test/core/run-test.sh | 1 + test/core/unregister.c | 71 ++++++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 93 insertions(+), 1 deletions(-) commit e869fda44331e6f590f974ad779115a22f5af22e Author: Simon McVittie Date: Thu Apr 16 12:57:43 2009 +0100 dbus-gobject: save the ObjectRegistration on each object, not just the path dbus/dbus-gobject.c | 20 +++++++++++++------- 1 files changed, 13 insertions(+), 7 deletions(-) commit b4911558384de9919a231c29d75d9560f81fad0a Author: Simon McVittie Date: Thu Apr 16 12:58:32 2009 +0100 fd.o #21219: implement unregistration of objects dbus/dbus-gobject.c | 25 ++++++++++++++++++++++++- doc/reference/dbus-glib-sections.txt | 1 + 2 files changed, 25 insertions(+), 1 deletions(-) commit e42535c3c0dace3ede96c50f5a9b3cc315c80190 Author: Simon McVittie Date: Thu Apr 16 12:11:15 2009 +0100 fd.o #5688: Add a regression test Also assert that dbus_g_connection_lookup_g_object works (my previous attempt to fix #5688 broke this). test/core/5688.c | 81 +++++++++++++++++++++++++++++++++++++++++++++++++ test/core/Makefile.am | 13 +++++++- test/core/run-test.sh | 1 + 3 files changed, 94 insertions(+), 1 deletions(-) commit 6de1441865da2816c6bcd8cae842be93a8a96304 Author: Simon McVittie Date: Thu Apr 16 12:06:26 2009 +0100 fd.o #5688: don't assert when exported object is destroyed *after* D-Bus connection closes My solution was to introduce an ObjectRegistration struct which encapsulates the D-Bus <-> GObject glue. Also, warn and keep the first object path if the library user registers an object at two object paths (previously, this would fail silently, use the second object path, and leak memory). dbus/dbus-gobject.c | 111 ++++++++++++++++++++++++++++++++++++++++----------- 1 files changed, 88 insertions(+), 23 deletions(-) commit 725e98ffa810d04baf38e5d5d3f62091334b0888 Author: Peter Korsgaard Date: Wed Apr 15 21:29:09 2009 +0100 add --with-dbus-binding-tool option to use an external dbus-binding-tool Cross compilation fix. dbus-binding-tool needs to run on the host, but gets compiled for the target. Add an option to use an external program (host version) instead, similar to the --with-introspect-xml option. Signed-off-by: Peter Korsgaard Signed-off-by: Robert Schwebel configure.ac | 5 +++++ dbus/examples/Makefile.am | 4 ++-- dbus/examples/statemachine/Makefile.am | 4 ++-- test/core/Makefile.am | 6 +++--- test/interfaces/Makefile.am | 12 ++++++------ tools/Makefile.am | 2 +- 6 files changed, 19 insertions(+), 14 deletions(-) commit a0124a5ecc829b73e2293cd7b23bf0cf0eb0a87c Author: Simon McVittie Date: Thu Mar 26 18:06:53 2009 +0000 dbus_g_type_specialized_init: make some effort at being thread-safe dbus-glib isn't really thread-safe and needs a systematic audit, but let's at least be preemptively thread-safe in new code. Signed-off-by: Simon McVittie dbus/dbus-gtype-specialized.c | 21 +++++++++++++++------ 1 files changed, 15 insertions(+), 6 deletions(-) commit f36381131b6f410333a9a823a4fc131ac799394f Author: Simon McVittie Date: Thu Mar 26 18:00:16 2009 +0000 fd.o#20884: dbus_g_proxy_manager_replace_name_owner: don't leave freed memory in the hash table if the name was the owner's first Here's a situation where this code would fail: * an owner :1.42 owns a name com.Example and a name org.Example * the owner_names hash table contains { :1.42 => c }, where c is a GSList link with data = "com.Example", next = o and o is a GSList link with data = "org.Example", next = NULL * the name owner for com.Example changes so :1.42 no longer owns the name * initially, names == c * g_slist_delete_link unlinks and frees c, and sets names = o * but c is still in the hash table, so next time we look in the hash table, we crash The fix is to replace c with o in the owner_names hash table. dbus/dbus-gproxy.c | 13 ++++++++++--- 1 files changed, 10 insertions(+), 3 deletions(-) commit d275c2e646f67a3929d9290c6bdb270d6346b83c Author: Simon McVittie Date: Fri Nov 28 17:14:47 2008 +0000 Remove all sorts of libdbus cruft from configure.ac configure.ac | 102 ------------------------------------------------------ test/Makefile.am | 1 - 2 files changed, 0 insertions(+), 103 deletions(-) commit 6791d09f72a63dcb72d57a187210bc133f463fcf Author: Simon McVittie Date: Fri Nov 28 17:07:06 2008 +0000 Don't check for atomic integer ops GLib has perfectly good ones, and `git grep ATOMIC` confirms that we no longer use the result of the check configure.ac | 26 -------------------------- 1 files changed, 0 insertions(+), 26 deletions(-) commit 6de33eb0a3e53d92e47a717849f144a0a313e923 Author: Simon McVittie Date: Fri Nov 28 17:06:29 2008 +0000 Don't check whether va_copy works `git grep DBUS_VA_COPY` confirms that we no longer care configure.ac | 75 ---------------------------------------------------------- 1 files changed, 0 insertions(+), 75 deletions(-) commit 7bf91463598fc1e6ad44096f33aa4b61bf58443f Author: Simon McVittie Date: Fri Nov 28 17:04:09 2008 +0000 configure.ac: Don't check endianness `git grep ENDIAN` confirms that we no longer need it. configure.ac | 3 --- 1 files changed, 0 insertions(+), 3 deletions(-) commit dc93d2a6eaf75bd783d16d90f62d8abefd4e26a4 Author: Simon McVittie Date: Fri Nov 28 17:01:32 2008 +0000 Don't define DBUS_API_SUBJECT_TO_CHANGE It isn't, and we need libdbus >= 1.1 in any case configure.ac | 2 -- 1 files changed, 0 insertions(+), 2 deletions(-) commit 094f45d0097679e8d458431231bcb3c999568d60 Author: Simon McVittie Date: Fri Nov 28 17:00:06 2008 +0000 configure.ac: don't check the sizes of integers This is presumably a relic of libdbus. configure.ac | 105 ---------------------------------------------------------- 1 files changed, 0 insertions(+), 105 deletions(-) commit d30b06afd0a8bb6dddeefd7ac4d978799df03a52 Author: Simon McVittie Date: Fri Nov 28 16:58:37 2008 +0000 Remove CXX cruft from configure.ac There is no C++ in this package, so why are we checking for a C++ compiler? configure.ac | 3 --- 1 files changed, 0 insertions(+), 3 deletions(-) commit 98087a3d62523b621a1bd2359661ffe24553c34e Author: Simon McVittie Date: Fri Nov 28 17:22:59 2008 +0000 Bug #16776: add a regression test test/core/my-object.c | 11 +++++++++++ test/core/my-object.h | 1 + test/core/test-dbus-glib.c | 13 +++++++++++++ test/core/test-service-glib.xml | 3 +++ 4 files changed, 28 insertions(+), 0 deletions(-) commit 20c474b8b8b356836e50af0e9bf3b32584d83ac4 Author: Simon McVittie Date: Fri Nov 28 16:23:43 2008 +0000 Bug 16776: teach dbus_g_method_return_error about DBUS_GERROR Code called by dbus_g_method_return_error assumes that errors in the domain DBUS_GERROR always have the code DBUS_GERROR_REMOTE_EXCEPTION. This is clearly not true, and it would be nice to be able to raise the "well-known" D-Bus errors from library user code. dbus/dbus-gobject.c | 69 ++++++++++++++++++++++++++++++++++++++++++++++++-- 1 files changed, 66 insertions(+), 3 deletions(-) commit e18f5dd13c562333bc580f3b5bdf3ecd8d7555ce Author: Mikkel Kamstrup Erlandsen Date: Fri Nov 28 15:58:43 2008 +0000 Bug 13908: make dbus_g_type_specialized_init() safe for library users to call dbus/dbus-gtype-specialized.c | 6 ++++++ dbus/dbus-gvalue.c | 1 - 2 files changed, 6 insertions(+), 1 deletions(-) commit bc474819fa638a0daf3c89e6d041949b73e9228e Author: Sjoerd Simons Date: Tue Mar 17 11:21:56 2009 +0000 Use g_strdup instead of strdup in dbus_g_method_get_sender dbus/dbus-gobject.c | 6 +----- 1 files changed, 1 insertions(+), 5 deletions(-) commit dfef72c61c050e7f57e1d2eb601701e0a27827cc Author: Colin Walters Date: Thu Feb 5 11:17:15 2009 -0500 Bug 14183 - Listen to NameOwnerChanged using arg0 matching This is more efficient - we avoid waking up every dbus-glib using process when a process joins or leaves the bus. dbus/dbus-gproxy.c | 57 ++++++++++++++++++++++++++------------------------- 1 files changed, 29 insertions(+), 28 deletions(-) commit 42b17678dec6d0100bcbc433441f6a75df747e5c Author: Colin Walters Date: Thu Feb 5 10:59:15 2009 -0500 Use -fno-strict-aliasing by default We're unlikely to be strict-aliasing safe anytime soon. This change corresponds with http://bugs.freedesktop.org/show_bug.cgi?id=10599 configure.ac | 8 ++++++++ 1 files changed, 8 insertions(+), 0 deletions(-) commit 56b9773dc5dd589638e22f48ec4222ae491c2bc1 Author: Frederic Crozat Date: Tue Feb 3 14:00:50 2009 +0100 Fix format-security warning dbus/dbus-gobject.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit 300b4fd822b8f57802ca35f4c867464b881632e3 Author: Colin Walters Date: Mon Feb 2 19:40:51 2009 -0500 Bump configure for unstable cycle configure.ac | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit 49cad2ca523de6a85f12d22ade23046c548ea601 Author: Colin Walters Date: Mon Feb 2 19:40:29 2009 -0500 Release 0.80 configure.ac | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit b161082148a51f2a2d8a4ee85f5736791dedc276 Author: Colin Walters Date: Mon Feb 2 15:07:51 2009 -0500 Bug 19065 - handle nested nodes in dbus-binding-tool Patch modified from one provided by Stian Skelstad . Split the generate_glue function explicitly into a toplevel function and one for processing recursive nodes. dbus/dbus-binding-tool-glib.c | 108 ++++++++++++++++++++++----------------- m4/gtk-doc.m4 | 2 +- test/Makefile.am | 5 ++ test/core/Makefile.am | 6 +- test/data/nested-introspect.xml | 10 ++++ test/test-compile-nested.sh | 5 ++ 6 files changed, 85 insertions(+), 51 deletions(-) commit 64ec55f59a9ebe699e240c2a3b4d82e85f2db4a0 Author: Doug Goldstein Date: Fri Jan 30 17:38:19 2009 -0500 Bug 19325 - parallel build fix Signed-off-by: Colin Walters dbus/Makefile.am | 8 ++++---- 1 files changed, 4 insertions(+), 4 deletions(-) commit 299460549e92665e5ea09d459d3985fc85d8d73c Author: Colin Walters Date: Fri Jan 30 16:03:11 2009 -0500 Bug 19259: Always use /etc/bash_completion.d This looks like what bash upstream has standardized on. dbus/Makefile.am | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) commit 78eb504bd9954918c363f357d0ab71ca85e3fc23 Author: Colin Walters Date: Tue Jan 27 18:59:01 2009 -0500 Bug 19647: Move test-types inside run-test to avoid dep on existing session bus All tests that use DBUS_BUS_SESSION should be in run-test.sh to avoid introducing a dependency on an existing session bus. test/core/Makefile.am | 2 +- test/core/run-test.sh | 1 + 2 files changed, 2 insertions(+), 1 deletions(-) commit 3d25c1640d59e9770c33fafb1a12766feb6494e8 Merge: d92a441 8868486 Author: Colin Walters Date: Tue Jan 27 18:43:50 2009 -0500 Merge branch 'master' of ssh://walters@git.freedesktop.org/git/dbus/dbus-glib commit d92a44109e3fdc766e34b53f7ec5329e98e13909 Author: Colin Walters Date: Tue Jan 27 17:00:37 2009 -0500 Bug 19441: Don't send replies for messages explicitly not requesting one In sending a reply when a message has the dbus_message_set_no_reply flag set, we can cause spurious denials logged on the system bus, aside from being inefficient. dbus/dbus-gobject.c | 67 +++++++++++++++++++++++++++++++++++--------------- 1 files changed, 47 insertions(+), 20 deletions(-) commit 88684866d06df99f89b30a07e4809369b4cb0453 Author: Colin Walters Date: Fri Dec 19 11:18:26 2008 -0500 Add new files missed from last commit test/core/my-object-subclass.c | 115 ++++++++++++++++++++++++++++++ test/core/my-object-subclass.h | 33 +++++++++ test/core/test-service-glib-subclass.xml | 8 ++ 3 files changed, 156 insertions(+), 0 deletions(-) commit d55ffa5bbccd027caf7f2e7376b555e397a7ac3c Author: Dan Williams Date: Thu Dec 18 13:09:33 2008 -0500 Bug 19145: test cases for GetAll Add test cases for GetAll. Signed-off-by: Colin Walters test/core/Makefile.am | 11 ++- test/core/test-dbus-glib.c | 187 +++++++++++++++++++++++++++++++++++++++ test/core/test-service-glib.c | 7 ++ test/core/test-service-glib.xml | 2 + 4 files changed, 205 insertions(+), 2 deletions(-) commit 94d68f00d9d244de3b1d66d3cf78bb5171552311 Author: Tambet Ingo Date: Thu Dec 18 12:09:43 2008 +0200 Use the provided interface for org.freedesktop.DBus.Properties.GetAll call. dbus/dbus-gobject.c | 82 ++++++++++++++++++++++++++++++++++++++++++--------- 1 files changed, 68 insertions(+), 14 deletions(-) commit 1b150c32aa574b421161b63bb01eeeb5ad23bf3a Author: Frederic Crozat Date: Fri Dec 5 11:16:46 2008 -0500 Fix linking order so -Wl,--as-needed works Signed-off-by: Colin Walters dbus/Makefile.am | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit f4a6c4755d7a82bb7ec0a8bf472bfe091c310ef0 Author: Colin Walters Date: Thu Dec 4 16:12:18 2008 -0500 Do NEWS for 0.78 Should have been in earlier commit, oops. NEWS | 18 ++++++++++++++++++ 1 files changed, 18 insertions(+), 0 deletions(-) commit 3a713710a34d75d174eb632a6444e87dbf3923f4 Author: Colin Walters Date: Thu Dec 4 16:02:12 2008 -0500 Bump configure for unstable cycle configure.ac | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit beaff4e7c8e6ef601a00c03a4bed533becd273be Author: Colin Walters Date: Thu Dec 4 15:58:30 2008 -0500 Release 0.78. configure.ac | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit d77506652b555b147e79889d6163208535e1cd74 Author: Colin Walters Date: Thu Dec 4 15:58:12 2008 -0500 Clean bash completion file dbus/Makefile.am | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) commit 6ba71576f4417bab46ca666fa44dda52dee95e88 Author: David Zeuthen Date: Thu Jul 31 12:28:07 2008 -0400 add bash completion for dbus-send(1) For now, it's in dbus-glib since dbus doesn't have an introspection XML parser (yet). Signed-off-by: Colin Walters configure.ac | 13 + dbus/Makefile.am | 17 ++- dbus/dbus-bash-completion-helper.c | 513 ++++++++++++++++++++++++++++++++++++ dbus/dbus-bash-completion.sh.in | 21 ++ 4 files changed, 563 insertions(+), 1 deletions(-) commit 48738e529dc7a0f27d185f2e79174b0e369fd0af Author: Tomas Pelka Date: Thu Dec 4 15:46:31 2008 -0500 Bug 18497 - Correct type in test case Changing to INT32 matches the sending side. Signed-off-by: Colin Walters test/core/test-thread-server.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit aebec4bd82c023502600786793ba0ce0c7323fbe Author: Colin Walters Date: Thu Dec 4 15:42:08 2008 -0500 Bug 18698 - Use AC_SEARCH_LIBS to avoid unneeded dep on nsl Also changed the socket search to be the same way. configure.ac | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) commit f10ee141185f9501c852acaf557b100abafc60fb Author: Nick Welch Date: Thu Dec 4 15:28:45 2008 -0500 Typo fix in docs Signed-off-by: Colin Walters dbus/dbus-gobject.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit c0bba240c4beb6ecfd71aefa184011e8adc27f5f Author: Robert McQueen Date: Tue Sep 23 23:42:02 2008 +0300 Bug #17329: allow hash tables to contain complex types Previously, dbus-glib has provided destroy functions for the keys and values when constructing hash tables, so that any hash tables it constructed could be entirely freed (along with their contents) by destroying/unreffing. Unfortunately this meant that any "complex" types, where you need to know the GType in order to free them, were not allowed in hash tables. In real terms, this was anything which dbus-glib marshalled to a GPtrArray, so any array of arrays, variants, structures, object paths, or other boxed types were not allowed as hash values. This patch allows a broader range of types to be used as the values in hash tables, including those where no simple free function is available. Instead of relying on the key/value destroy functions, the new hash_free function uses g_hash_table_foreach_steal to remove the keys and values pairwise and free them when the type is known. Unfortunately, it's part of the API assumptions that hash tables which were produced through the current API had valid free functions, and particularly that if the hash table was reffed by the application, that the keys/values would persist beyond when dbus-glib had unreffed it, and be freed when the hash table was later destroyed. So it's not sufficient to use only this new freeing method on all hash tables from now on - we have to behave in the old way for all of the previously allowable types (including any hash tables which contain any hash tables which were freeable in the old way). However, as these new hash tables contain values which will not be freed if you manipulate the hash table directly (removing or replacing keys, or destroying or unreffing it directly), and g_boxed_free should be used instead, a false free function is provided to print a critical warning for the developer in the case that memory would be leaked. dbus/dbus-gvalue-utils.c | 151 +++++++++++++++++++++++++++++++++++++-- test/core/test-dbus-glib.c | 37 ++++++---- test/core/test-service-glib.xml | 4 +- 3 files changed, 168 insertions(+), 24 deletions(-) commit 143b09b42d73451dcc3b835f76f8d43da786342a Author: Robert McQueen Date: Mon Sep 22 21:40:48 2008 +0100 Bug #17798: add support for 'o', 'g' and 'as' in dictionaries This teaches the parameterised hash table about how to hash, compare and free object paths and signatures, allowing them to be used as hash keys and values, and also how to free strvs, so they can be used as values. Adds some simple test methods which echo a{gas} and a{oas} dictionaries back immediately and compare the results. dbus/dbus-gvalue-utils.c | 29 ++++++++++++ test/core/my-object.c | 16 +++++++ test/core/my-object.h | 4 ++ test/core/test-dbus-glib.c | 96 +++++++++++++++++++++++++++++++++++++++ test/core/test-service-glib.xml | 12 +++++ 5 files changed, 157 insertions(+), 0 deletions(-) commit e4c917189dc9478c261c94703b311e1579292f22 Author: Robert McQueen Date: Sun Sep 14 21:16:10 2008 +0100 Bug #17797: add support for 'g' type, as a boxed char * Adds DBUS_G_TYPE_SIGNATURE, which is a boxed type just like DBUS_G_TYPE_OBJECT_PATH. dbus/dbus-binding-tool-glib.c | 4 ++ dbus/dbus-glib.h | 3 + dbus/dbus-gmain.c | 5 ++- dbus/dbus-gsignature.c | 2 + dbus/dbus-gvalue.c | 82 ++++++++++++++++++++++++++++++++++++++- test/core/my-object.c | 7 +++ test/core/my-object.h | 1 + test/core/test-dbus-glib.c | 19 +++++++++ test/core/test-service-glib.xml | 5 ++ 9 files changed, 126 insertions(+), 2 deletions(-) commit f89b8de02f21891f430a2e370c391238b575403a Author: Robert McQueen Date: Tue Sep 23 23:45:14 2008 +0300 Bug #17795: depend on Glib 2.10 for hash unref consistency Commit a8bf32 (for bug #11396) introduced a compile-time version check for Glib 2.10 which changed whether hash_simple_free called g_hash_table_unref or g_hash_table_destroy. This is at best useless for people who actually wanted to rely on _unref being used instead of _destroy, because dbus-glib can legitimately be built against older versions of Glib than that in use by the application itself, and at worst harmful as applications relying on the _unref semantics would have their assumptions violated on platforms where this was the case. Given in /most/ cases now, Glib 2.10 is readily available, and we were in this kinda vague state where people could've used _unref and gotten away with it, I'm going to say thats what our ABI is now, and stick to it. People can depend on the next version of dbus-glib if they rely on _unref. configure.ac | 2 +- dbus/dbus-gvalue-utils.c | 4 ---- 2 files changed, 1 insertions(+), 5 deletions(-) commit 24b94fb83c0d22cf2803af692dd8ccbc485d890c Author: Robert McQueen Date: Mon Sep 22 21:25:03 2008 +0100 Bug #17794: make run-test.sh fail when die is called Missing die() function meant this wasn't returning non-zero even when tests were failing. Oops. test/core/run-test.sh | 6 ++++++ 1 files changed, 6 insertions(+), 0 deletions(-) commit 3ca014ea6b55cd843f1c80b04a4e0ec41af6210e Author: Colin Walters Date: Mon Nov 17 18:30:32 2008 -0500 Bug 18573 - Fix race when service appears and disappears quickly We can't assert that a for_name_owner proxy is associated when we disassociate; if a service appears and disappears quickly, we won't be associated yet. So remove the assertion. Correspondingly we need to cancel any inflight GetNameOwner call when disassociating proxies to avoid leaking. dbus/dbus-gproxy.c | 11 +++++++++-- 1 files changed, 9 insertions(+), 2 deletions(-) commit 0a883a523f8d133f71271276b755162c56480021 Author: Philip Van Hoof Date: Thu Sep 18 18:22:59 2008 -0400 Bug 17614: Use g_slice for allocating temporary async call data Using g_slice is going to be faster. Signed-off-by: Colin Walters dbus/dbus-binding-tool-glib.c | 10 ++++++++-- 1 files changed, 8 insertions(+), 2 deletions(-) commit 4c7e60e3ff4148a181a496f85b491e8cb39d7e46 Author: Colin Walters Date: Fri Jun 20 14:08:47 2008 -0400 Bug 10373: Use of deprecated API (was used incorrectly) * dbus/dbus-gvalue.c: The use of dbus_message_iter_get_array_len here is incorrect; we don't want to allocate a number of pointers based on the length of the strings. Instead, we now use the regular GArray type which handles reallocating as size increases appropriately. dbus/dbus-gvalue.c | 25 +++++++++++-------------- 1 files changed, 11 insertions(+), 14 deletions(-) commit 2514b84b3644223653018cd75d0d6e1459a7ab70 Author: Colin Walters Date: Thu Jun 19 12:47:16 2008 -0400 Bug 16419: stack overflow demarshaling recursive variants * dbus/dbus-gvalue.h: Add a recursion_depth member. * dbus/dbus-gvalue.c: Keep track of recursion depth in _dbus_gvalue_demarshal, cut it off at a default (right now 32). * dbus/dbus-gobject.c: Initialize recursion depth. * dbus/dbus-gproxy.c: Ditto. * test/core/test-variant-recursion.c: Test the variant recursion case, make sure the remote site will throw an error. * test/core/Makefile.am: Add test-variant-recursion. dbus/dbus-gobject.c | 2 + dbus/dbus-gproxy.c | 2 + dbus/dbus-gvalue.c | 21 ++++++++- dbus/dbus-gvalue.h | 1 + test/core/Makefile.am | 6 ++- test/core/run-test.sh | 1 + test/core/test-variant-recursion.c | 89 ++++++++++++++++++++++++++++++++++++ 7 files changed, 119 insertions(+), 3 deletions(-) commit d1b80d803a0268bd4b3dd5b9a9522230461f2947 Author: Dan Williams Date: Thu Jun 5 17:57:53 2008 -0400 Bug 16114 [patch] wincaps-to-uscore property names for GetAll() * dbus/dbus-gobject.c: We need to uscore property names so that we actually find the right properties. dbus/dbus-gobject.c | 10 ++++++++-- 1 files changed, 8 insertions(+), 2 deletions(-) commit 8054025ae498cc586676fd0ed6573828dd0de4a0 Author: Colin Walters Date: Thu Jun 5 16:05:39 2008 -0400 One final large HACKING update HACKING | 32 +++++++++++++++++++++++++++++--- 1 files changed, 29 insertions(+), 3 deletions(-) commit d80bc7686a0e5cc7d45d940e8404ac4c8742b8f5 Author: Colin Walters Date: Thu Jun 5 15:40:35 2008 -0400 Pacify gtk-doc by adding new files * doc/reference/dbus-glib-undeclared.txt: * doc/reference/dbus-glib.types: New files without which gtk-doc complains. 0 files changed, 0 insertions(+), 0 deletions(-) commit d91cf40b83f7900899fe89cc83a75c82cd4bf833 Author: Colin Walters Date: Thu Jun 5 15:37:16 2008 -0400 Another HACKING tweak HACKING | 6 ++++-- 1 files changed, 4 insertions(+), 2 deletions(-) commit e4b73986d1b2d6f9badda4656e57023b2c921ff7 Author: Colin Walters Date: Thu Jun 5 15:37:02 2008 -0400 Bump for development configure.ac | 2 +- doc/reference/dbus-glib-undocumented.txt | 20 +++----------------- 2 files changed, 4 insertions(+), 18 deletions(-) commit 96f144d25c7f3d573684bd50f87d912990f3c589 Author: Colin Walters Date: Thu Jun 5 15:09:02 2008 -0400 Release 0.76 configure.ac | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit 1517f7f395527519402f8b37988de9d4ea24dbc5 Author: Colin Walters Date: Thu Jun 5 15:08:40 2008 -0400 Document release process HACKING | 23 ++++++++++++++++++++++- 1 files changed, 22 insertions(+), 1 deletions(-) commit e0dcd92e33e566f9852df94036e74f48af795ea3 Author: Colin Walters Date: Thu Jun 5 14:55:15 2008 -0400 Update HACKING HACKING | 13 ++++++++++--- 1 files changed, 10 insertions(+), 3 deletions(-) commit 4f776e9db9f299dab96a12a00a6279b6977f6c32 Author: Colin Walters Date: Thu Jun 5 14:48:18 2008 -0400 Update gtk-doc doc/reference/dbus-glib-undocumented.txt | 20 +++++++++++++++++--- 1 files changed, 17 insertions(+), 3 deletions(-) commit fa46dc8d35de877b8bdcb53f9508252249138bd6 Author: Colin Walters Date: Thu Jun 5 14:40:09 2008 -0400 Update NEWS NEWS | 25 +++++++++++++++++++++++++ 1 files changed, 25 insertions(+), 0 deletions(-) commit acd44d2ae3069667dbbb8b9c9c8b9c2afcad96d9 Author: Christian Persch Date: Tue Jun 3 18:01:54 2008 -0400 Bug 16217: generated bindings don't build with -DG_DISABLE_SINGLE_INCLUDES * dbus/dbus-binding-tool-glib.c: Only include glib.h because individual includes are disallowed. Signed-off-by: Colin Walters dbus/dbus-binding-tool-glib.c | 3 +-- 1 files changed, 1 insertions(+), 2 deletions(-) commit 1744bf88024756d17f867ab9b86aca25e2b77e64 Author: Colin Walters Date: Wed May 28 14:11:01 2008 -0400 Remove GConnection tests that assert, since we abort on those test/core/test-types.c | 26 -------------------------- 1 files changed, 0 insertions(+), 26 deletions(-) commit a94e11973467e1b2cc43ba1e77b7413655b1dff7 Author: Colin Walters Date: Wed May 28 00:25:57 2008 -0400 Bug 11671: Don't use well known name in /tmp This as a side effect fixes the test suite on Solaris. test/core/peer-client.c | 13 ++++++++++++- test/core/peer-server.c | 26 ++++++++++++++------------ test/core/run-peer-test.sh | 9 +++------ 3 files changed, 29 insertions(+), 19 deletions(-) commit dceee795d0cdc5889701064ac38d3c64451b02ec Author: Colin Walters Date: Tue May 27 23:19:52 2008 -0400 From OpenSUSE: Add return statement in case assertions not enabled dbus/dbus-gvalue-utils.c | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) commit 681f3ae573b2e00dad5c1193a044a994fc50cf38 Author: Colin Walters Date: Tue May 27 23:08:59 2008 -0400 Bug 13060: Remove NameOwnerChange matches on unref (Kimmo Hämäläinen) dbus/dbus-gproxy.c | 14 ++++++++++++++ 1 files changed, 14 insertions(+), 0 deletions(-) commit eef148bdc0f602b0fba09a851c1ca6b55b8bb71c Author: Colin Walters Date: Tue May 27 23:01:39 2008 -0400 Bug 15733: Cosmetic fix for removing redundant declarations dbus/dbus-gtype-specialized.h | 2 -- 1 files changed, 0 insertions(+), 2 deletions(-) commit d043342c41535e610268b9bb2a45143bad0b597d Author: Colin Walters Date: Tue May 27 22:56:00 2008 -0400 Bug 12505: Avoid receiving duplicate NameOwnerChanged (Dan Williams) dbus/dbus-gproxy.c | 13 +++++++++++-- 1 files changed, 11 insertions(+), 2 deletions(-) commit 43db9baa4cd0921d2ee830185ab46b4646b4e73b Author: Colin Walters Date: Tue May 27 16:49:26 2008 -0400 Bug 10834: Fix error handling path for dbus_g_proxy_end_call_internal This patch was based initial work by Peter Kjellerstedt. This patch made obvious the need to correctly handle type mismatches in demarshal_basic, similarly to what the other demarshalers are doing. Also add some tests for error handling. dbus/dbus-gproxy.c | 25 ++++++++++++++++++++----- dbus/dbus-gvalue.c | 28 ++++++++++++++++++++++++++++ test/core/test-dbus-glib.c | 29 +++++++++++++++++++++++++++++ 3 files changed, 77 insertions(+), 5 deletions(-) commit dc3bfd517a3bd0e28f4fc2d030ac38bdc848eb86 Author: Colin Walters Date: Tue May 27 16:36:58 2008 -0400 Fix some test suite memory leaks test/core/test-dbus-glib.c | 3 +++ 1 files changed, 3 insertions(+), 0 deletions(-) commit 167ea555cf3a763d148a69d0af9453b83d70d107 Author: Julien Danjou Date: Thu Apr 24 14:03:42 2008 +0200 Fix typo in --help print strings Signed-off-by: Julien Danjou Signed-off-by: Colin Walters dbus/dbus-glib-tool.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) commit c057283a86230904552d5c51623bbce5ab0c9770 Author: Colin Walters Date: Tue May 27 15:15:35 2008 -0400 Bug 10244: Fix error handling case in parser (William Jon McCann) We need to return FALSE when handling an error. dbus/dbus-gparser.c | 11 +++++++---- 1 files changed, 7 insertions(+), 4 deletions(-) commit 361dc90eaa269325ddc5dae0003ca11e1d7b811e Author: Colin Walters Date: Tue May 27 14:57:20 2008 -0400 Bug 9867: Respect ACLOCAL_FLAGS (Kalle Vahlman) autogen.sh | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) commit a8bf32ab8b0e30e0c74e07c58e9bc79a448683b2 Author: Colin Walters Date: Tue May 27 14:31:58 2008 -0400 Bug 11396: Use g_hash_table_unref if available (Marco Barisione) This lets users ref hashes with g_hash_table_ref. dbus/dbus-gvalue-utils.c | 4 ++++ 1 files changed, 4 insertions(+), 0 deletions(-) commit ad35bf13f93d18b0b0e8f930ff79af9dcc1c8508 Author: Colin Walters Date: Tue May 27 14:18:49 2008 -0400 Bug 12675: Handle disconnected connections in calls (Kimmo Hämäläinen) dbus/dbus-gproxy.c | 22 +++++++++++++++++++--- 1 files changed, 19 insertions(+), 3 deletions(-) commit f110cd3aa0532ab6cdfb1ee9a19f839700fe32e6 Author: Colin Walters Date: Tue May 27 13:57:40 2008 -0400 Bug 12857: Balance va_start/va_end in error case (Kimmo Hämäläinen) dbus/dbus-gparser.c | 6 +++++- 1 files changed, 5 insertions(+), 1 deletions(-) commit d20c90aab3b0eca8715deaa59877f35a7d4e345e Author: Colin Walters Date: Tue May 27 13:54:11 2008 -0400 Bug 12849: Fix use after free (Kimmo Hämäläinen) dbus/dbus-gvalue.c | 3 ++- 1 files changed, 2 insertions(+), 1 deletions(-) commit fde77bff42fac9ed95869a69acff4f9daab23e04 Author: Colin Walters Date: Tue May 27 13:35:20 2008 -0400 Bug 16079: Return an error on unknown property https://bugs.freedesktop.org/show_bug.cgi?id=16079 Previously we just asserted, not very useful. dbus/dbus-gobject.c | 6 ++++ test/core/test-dbus-glib.c | 62 +++++++++++++++++++++++++++++++++++++++++++- 2 files changed, 67 insertions(+), 1 deletions(-) commit b26f1887f6907d4c9a1dac013649f28950c6b2d3 Author: Colin Walters Date: Tue May 27 13:34:55 2008 -0400 Support for monitoring conversation during tests test/core/run-test.sh | 3 +++ 1 files changed, 3 insertions(+), 0 deletions(-) commit b783ce802db01a5370ce70514755e1885f6e6eb1 Author: Colin Walters Date: Tue May 27 12:39:44 2008 -0400 Also make CRITICAL messages fatal in tests. test/core/test-dbus-glib.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit 8fe656de630e851bc512bbd7e7a6c18c53aecb61 Author: Simon McVittie Date: Mon Apr 14 12:56:43 2008 +0100 Freeze error ABI at the ABI used in Fedora 8 and Ubuntu gutsy. This avoids getting a different ABI depending on the version of libdbus we're compiled against. fd.o #15430, Debian #476080. dbus/dbus-glib.h | 34 ++++++++++++++++- dbus/dbus-gobject.c | 72 ++++++++++++++++++++++++++++++++++- dbus/make-dbus-glib-error-enum.sh | 25 +------------ dbus/make-dbus-glib-error-switch.sh | 29 +------------- 4 files changed, 106 insertions(+), 54 deletions(-) commit 7fccdc8386d97d8c7e963800b1fbedd47f72b66b Author: Colin Walters Date: Mon Mar 31 11:23:29 2008 -0400 Add some docs to dbus_set_g_error. dbus/dbus-gobject.c | 17 ++++++++++++++++- 1 files changed, 16 insertions(+), 1 deletions(-) commit 34042c4cf2fcf18e101d07e495f9fa5dda99aa58 Merge: df7c2b7 bd53ac9 Author: David Zeuthen Date: Mon Mar 17 13:11:45 2008 -0400 Merge branch 'master' of ssh://david@git.freedesktop.org/git/dbus/dbus-glib commit df7c2b783ed92f33a1bedcba12a9c30fc34ba8d5 Author: David Zeuthen Date: Mon Mar 17 13:10:47 2008 -0400 add some design advice to dbus_g_proxy_set_default_timeout() ... as requested on the mailing list. dbus/dbus-gproxy.c | 7 +++++++ 1 files changed, 7 insertions(+), 0 deletions(-) commit bd53ac9f7ef9a6c2c9d1d12af382b1a8a10e9dba Author: Rob Taylor Date: Mon Mar 17 15:10:43 2008 +0100 allow namespaced extentions to introspection XML This allows us to stick namespaced documentation stuff into the introspection XML and have dbus-glib not puke on it. Patch credit goes to Colin Walters. dbus/dbus-glib-tool.c | 2 +- dbus/dbus-gparser.c | 40 +++++++++++++++++++++++++++++----------- 2 files changed, 30 insertions(+), 12 deletions(-) commit cb732d38f78dfb7c1ef73179e798fa4f42fd962e Author: Rob Taylor Date: Mon Mar 17 14:26:50 2008 +0100 bump version and dbus dependancy Bumps version to 0.75. Bumps dbus dependany to 1.1. configure.ac | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) commit 09b0fc5818812d0167243bae9fd52cdaf67f0af0 Author: David Zeuthen Date: Sat Mar 15 16:51:48 2008 -0400 Export the recently added GetAll() method on org.fd.DBus.Properties Because round-trip city is a bad place. dbus/dbus-gobject.c | 220 +++++++++++++++++++++++++++++++++++++++++---------- 1 files changed, 177 insertions(+), 43 deletions(-) commit bf0c9b3d6adc95863d5b5a4ce6ca994fd7fdc137 Author: David Zeuthen Date: Sat Mar 15 15:32:56 2008 -0400 Add new function to specify the default timeout for a proxy Without a function like this the generated client glue code is unusable for D-Bus methods that take a long time to complete (such as disk operations like mkfs and partitioning). Also add some missing _with_timeout functions on DBusGProxy to the gtk docs. dbus/dbus-glib.h | 3 ++ dbus/dbus-gproxy.c | 35 ++++++++++++++++++++++++++++- doc/reference/dbus-glib-sections.txt | 3 ++ doc/reference/dbus-glib-undocumented.txt | 15 +++++++++--- 4 files changed, 50 insertions(+), 6 deletions(-) commit 1fa4129f67208e24f6ae5f9ab38a3ee26c521f87 Author: David Zeuthen Date: Sat Mar 15 15:21:06 2008 -0400 Bump version to 0.75 configure.ac | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit 1124256e1a87291101a6c287c1248c2f7276b993 Author: Ross Burton Date: Wed Feb 27 14:27:49 2008 +0000 Fix incorrect assign in test suite We were assigning a DBusConnection* to a DBusGConnection*, which is bad. test/core/test-types.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) commit eea8f7247e1cbeb8c00fe316a37520b98acd55dc Author: Ross Burton Date: Wed Feb 27 14:22:16 2008 +0000 Use dbus_watch_get_unix_fd not dbus_watch_get_fd The latter is deprecated, so don't use it. dbus/dbus-gmain.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit 2cf62d7ff7d3a7bc450d0b60bb81a8365ffd310b Author: Ross Burton Date: Wed Feb 27 14:19:48 2008 +0000 Fix pending call cancelling in proxy dispose The dispose treated the hash values as DBusGProxyCall objects, but they are DBusPendingCall (thanks Dafyd Harries). dbus/dbus-gproxy.c | 11 ++++++----- 1 files changed, 6 insertions(+), 5 deletions(-) commit 8e024ae2252e6e948c28203f07aa416df3dac0b8 Author: Ross Burton Date: Wed Feb 27 14:02:36 2008 +0000 Unref the connection and message on dbus_g_return_error dbus/dbus-gobject.c | 3 +++ 1 files changed, 3 insertions(+), 0 deletions(-) commit 98423ae4e6b85741ce15f097652620886a49c375 Author: Ross Burton Date: Tue Nov 13 17:56:37 2007 +0000 Allow daemondir to be configured (#10668) The daemon can be at any location, and may not be on the path. Fetch the path from the pkg-config file and use it if it is set. Thanks to Brian Cameron for this patch. configure.ac | 9 +++++++++ tools/Makefile.am | 2 +- 2 files changed, 10 insertions(+), 1 deletions(-) commit 33b7a7f05372baaaf95d0e1c2c3b758321e4b0c5 Author: Ross Burton Date: Tue Sep 11 10:52:07 2007 +0100 Update ignores Add the new tests and *~ to the ignore list. .gitignore | 5 ++++- 1 files changed, 4 insertions(+), 1 deletions(-) commit 4b2cf9d75f6c315071adc925ec56e3bac3423730 Author: Ross Burton Date: Tue Sep 11 10:49:49 2007 +0100 Fix bashism "function" is a bashism, so don't use it. tools/run-with-tmp-session-bus.sh | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit 3f6e2c0c76d3643a1823b5ea7c8f5486a6b448de Author: Ross Burton Date: Tue Sep 11 10:37:47 2007 +0100 Fix broken introspection XML When writing XML for properties a duplicate closing tag was written. (#8607, thanks William Jon McCann). dbus/dbus-gobject.c | 2 -- 1 files changed, 0 insertions(+), 2 deletions(-) commit c08a7f910c4c746ba790375be2d0f0682471cf06 Author: Ross Burton Date: Tue Sep 11 10:34:07 2007 +0100 Fix build with non-gcc compilers AIX's compiler and some non-c99 compilers are braindead, massage the code to work with them (#11675, thanks Peter O'Gorman). dbus/dbus-gtype-specialized.c | 4 +++- dbus/examples/statemachine/statemachine.c | 2 +- 2 files changed, 4 insertions(+), 2 deletions(-) commit b2bcb0f3fdf8eaec9257f48dd0a0e2ca03220775 Author: Ross Burton Date: Tue Sep 11 10:17:12 2007 +0100 Fix bashisms The test suite used /bin/bash for no good reason, remove all bashisms. (#11672, thanks Peter O'Gorman). test/core/run-peer-test.sh | 4 ++-- test/core/run-test.sh | 18 +++++++++--------- test/interfaces/run-test.sh | 14 +++++++------- tools/run-with-tmp-session-bus.sh | 9 +++++---- 4 files changed, 23 insertions(+), 22 deletions(-) commit 377831cc8496bf2b3f96e96a44ff4dfc1a6c690e Author: Ross Burton Date: Tue Sep 11 10:11:12 2007 +0100 Fix build with Glib 2.6 configure.ac checks for glib 2.6, but the test suite used g_intern_static_string which was added in 2.10. This removes the use of that function because it isn't required (#11674, thanks Peter O'Gorman). test/interfaces/test-interfaces.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) commit 2929a9d676b9961abff6c6acb1b67431f7d62ab1 Author: Rob Taylor Date: Wed Jun 27 11:49:02 2007 +0100 Update version in configure.ac Update version to 0.74 in configure.ac configure.ac | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit de33a575aa58867642bcfd8bb8cb2efc631d9f1d Author: Rob Taylor Date: Wed Jun 27 11:39:08 2007 +0100 Update NEWS Update NEWS from git history. NEWS | 20 ++++++++++++++------ 1 files changed, 14 insertions(+), 6 deletions(-) commit a732cbc211b562660c5a17c898ad032fb8c041fd Author: Ross Burton Date: Wed Jun 27 11:05:03 2007 +0100 Sleep after starting the peer server, before starting the peer client. This fixes random failures due to the race. test/core/run-peer-test.sh | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) commit 4335b1204a483ffa5c5a72d58b585f77827d852d Author: Ross Burton Date: Wed Jun 27 10:58:03 2007 +0100 Update NEWS for pending release. NEWS | 12 ++++++++++++ 1 files changed, 12 insertions(+), 0 deletions(-) commit 0d77d83b7afd5837d4427b7cdc5940f54625b65c Author: Rob Taylor Date: Fri Jun 22 17:15:34 2007 +0100 make test/core/run-peer-test.sh executable 0 files changed, 0 insertions(+), 0 deletions(-) commit 0ba73bf7cf1a2770b7aac8d57e61e755aca45b4d Author: Ross Burton Date: Fri Jun 22 15:46:37 2007 +0100 Add missing include. test/core/Makefile.am | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) commit bf647c411b42064fe48877c30803cbe10d751204 Author: Ross Burton Date: Fri Jun 22 15:45:57 2007 +0100 Install the type info before creating signals This fixes the type system warnings from peer-server, because the types where used (when creating signals) before they were created. Installing type info initialises the types. test/core/my-object.c | 6 +++--- 1 files changed, 3 insertions(+), 3 deletions(-) commit a3a6efda1117633cc8a5525811f6a3ba41f2d31b Author: Ross Burton Date: Fri Jun 22 15:28:48 2007 +0100 Init threading first to stop a warning from new GLib. test/core/peer-client.c | 2 +- test/core/peer-server.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) commit 36ed523539074a84cd990a8513b5d02a6223c44c Author: Ross Burton Date: Fri Jun 22 15:27:18 2007 +0100 Make test script executable 0 files changed, 0 insertions(+), 0 deletions(-) commit 514fd82183c214e3afd4cca630a20ff24b62e482 Author: Ross Burton Date: Fri Jun 22 15:25:14 2007 +0100 Remove unused variable. test/core/run-peer-test.sh | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit d428aa4edf426f662e89f2b08a377b0dd481f3ac Author: Ross Burton Date: Fri Jun 22 15:15:37 2007 +0100 Remove the XML documentation support in configure It isn't used and is legacy from when this was part of dbus itself. configure.ac | 34 +--------------------------------- 1 files changed, 1 insertions(+), 33 deletions(-) commit 1f385f6b10799cdd0bf57d69d5212ac16ac17266 Author: Ross Burton Date: Fri Jun 22 15:02:24 2007 +0100 Fix typo in _dbus_gvalue_signals_error (#10837) It was using g_value_get_boxed() when looking at a object-holding value. Thanks to Peter Kjellerstedt for noticing this. dbus/dbus-gvalue-utils.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit 68f03928aaac849dd12e38c01e448b569f578976 Author: Ross Burton Date: Fri Jun 22 14:41:36 2007 +0100 Update GLib requirement (#10889). INSTALL | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit 58cacc6872e1b8cf365ac056775498b9dede71b4 Author: Rob Taylor Date: Mon Apr 16 08:23:17 2007 -0700 Document dbus-gtype-specialized Documents all the functions in dbus-gtype-specialized.c and adds an overview of the functionality. dbus/dbus-gtype-specialized.c | 312 +++++++++++++++++++++++++++--- dbus/dbus-gtype-specialized.h | 14 +- doc/reference/dbus-glib-sections.txt | 2 +- doc/reference/dbus-glib-undocumented.txt | 38 +--- 4 files changed, 304 insertions(+), 62 deletions(-) commit 26d8584c04c05be29ae35acc3a2e8f573cc79206 Author: Ross Burton Date: Fri Mar 30 18:12:11 2007 +0100 Add simple test suite for peer objects. Add a simple test suite for peer proxies. This involved refactoring the MyObject class into its own file so that it can be used by multiple tools. Also added is a test suite for dbus_connection_get_g_connection. test/core/Makefile.am | 26 +- test/core/my-object.c | 737 ++++++++++++++++++++++++++++++++++++ test/core/my-object.h | 104 +++++ test/core/peer-client.c | 127 +++++++ test/core/peer-server.c | 55 +++ test/core/run-peer-test.sh | 9 + test/core/test-service-glib.c | 832 +---------------------------------------- test/core/test-types.c | 74 ++++ 8 files changed, 1129 insertions(+), 835 deletions(-) commit af91f5e0e2b5a20adf124707356b12da0c2f1e00 Author: Ross Burton Date: Fri Mar 30 18:05:40 2007 +0100 Support peer-to-peer proxies. Previously DBus-GLib didn't support peer proxies despite having API for them. This patch stops dbus-glib from crashing when you use a peer signal (#10233). dbus/dbus-gproxy.c | 35 ++++++++++++++++++----------------- 1 files changed, 18 insertions(+), 17 deletions(-) commit 25f056826336d4385b5488706f0f1ecc0843bf2f Author: Ross Burton Date: Fri Mar 30 17:54:58 2007 +0100 Add dbus_connection_get_g_connection. Add dbus_connection_get_g_connection, which is useful when you have a DBusConnection which was originally a DBusGConnection, and want it back again. dbus/dbus-glib-lowlevel.h | 1 + dbus/dbus-glib.c | 24 ++++++++++++++++++++++++ dbus/dbus-gmain.c | 12 ++++++------ 3 files changed, 31 insertions(+), 6 deletions(-) commit 0c46ca1a20eb8ba676ea2f1e829d039d5e3c383d Author: Ross Burton Date: Thu Mar 22 15:04:14 2007 +0000 Stop compiler warnings (#10374). dbus/dbus-gthread.c | 1 + test/interfaces/test-server.c | 2 ++ 2 files changed, 3 insertions(+), 0 deletions(-) commit 72e9f061668a28cbbeae2400290e1993c5d60d3c Author: Ross Burton Date: Wed Mar 28 16:32:00 2007 +0100 Fix error handling dbus/dbus-gproxy.c | 9 ++++----- 1 files changed, 4 insertions(+), 5 deletions(-) commit 9ca04c94ed6ddc2ff7459ce2031740704ec67ff2 Author: Ross Burton Date: Thu Mar 22 15:38:03 2007 +0000 Handle dbus errors which are not name has no owner dbus/dbus-gproxy.c | 3 +++ 1 files changed, 3 insertions(+), 0 deletions(-) commit 85b269cc7ca221ee4fe0235154e783b3640ee62d Author: Ross Burton Date: Thu Mar 22 15:05:02 2007 +0000 Update abstract socket test from dbus The abstract socket test doesn't cross compile at all, updating the test from the original copy in DBus. configure.ac | 17 +++++++++-------- 1 files changed, 9 insertions(+), 8 deletions(-) commit a64b26cdde04e624b2bb42ccadd3fc252bf05667 Author: Ross Burton Date: Thu Mar 22 15:10:47 2007 +0000 Rename the error quark. The error quark was copied from GLib, renaming it to be unique. dbus/dbus-glib.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit 5ca3418e8e00f62e3e60578e3951b51cd158f8dc Author: Rob Taylor Date: Thu Mar 29 12:44:01 2007 +0100 Update AUTHORS Correct spelling of S.Nallammai, add Ross Burton, who's been missing here for quite some time. AUTHORS | 3 ++- 1 files changed, 2 insertions(+), 1 deletions(-) commit 7fbd3a1c49614e71a9ff2b3d6e43bf380527301b Author: Rob Taylor Date: Thu Mar 29 12:32:46 2007 +0100 Update AUTHORS I had failed to update AUTHORS in the last couple of releases, this commit makesit current. AUTHORS | 6 ++++++ 1 files changed, 6 insertions(+), 0 deletions(-) commit f78b90659f32474b7ca56925ddebd88af7f06c86 Author: Rob Taylor Date: Thu Mar 29 12:20:30 2007 +0100 Update .gitignore Ignore autoconf errors, autom4te.cache, some new generated files. .gitignore | 7 ++++++- 1 files changed, 6 insertions(+), 1 deletions(-) commit 138e4ce76ae53b86488e12c43db511a838be4fc9 Author: Rob Taylor Date: Tue Feb 13 14:16:22 2007 +0000 Do libtool versioning. As we're going to start behaving like a proper library, update libtool versionsing appropriately for our added api. configure.ac | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) commit d19c5c0eac749704af70edffaa1fa0ac70eb9373 Author: Rob Taylor Date: Tue Feb 13 13:58:38 2007 +0000 Update NEWS Releasing today.. NEWS | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit e368483363fc920cf2978180f3a9fe6687465807 Author: Rob Taylor Date: Mon Feb 12 04:23:42 2007 +0000 Update NEWS Update NEWS, adding fix for bug #9769. NEWS | 4 +++- 1 files changed, 3 insertions(+), 1 deletions(-) commit 814b029d9291199bc9fdd2998c429ee15f243a93 Author: Rob Taylor Date: Mon Feb 12 04:21:50 2007 +0000 Add pkg-config support for uninstalled use. Adds dbus-glib-1-uninstalled.pc for use in build environments where dbus-glib is used as an uninstalled build dependancy. Fix due to Damien Carbery . Fixes bug #9769. configure.ac | 1 + dbus-glib-1-uninstalled.pc.in | 12 ++++++++++++ 2 files changed, 13 insertions(+), 0 deletions(-) commit 6bcb544eb6bc164e367a0e849b6c41274809401e Author: Rob Taylor Date: Fri Feb 9 02:49:57 2007 +0000 Update version in configure.ac Updates version 0.73 in configure.ac configure.ac | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit dba710006cb0b25454989f41babc53c12d3fc901 Author: Rob Taylor Date: Fri Feb 9 02:46:57 2007 +0000 Update NEWS ready for 0.73 release Updates NEWS with all the changes for 0.73 NEWS | 26 ++++++++++++++++++++++++++ 1 files changed, 26 insertions(+), 0 deletions(-) commit 133bc8003657169f622d4340360a0e5b15a455de Author: Rob Taylor Date: Fri Feb 9 02:21:20 2007 +0000 Allow passing of NULL to strv out arguments. A nicety for the user, allows passing NULL to strv out arguments as shorthand for an empty array. Patch due to Luiz Augusto von Dentz Fixes bug #8795. dbus/dbus-gvalue.c | 20 +++++++++++++------- 1 files changed, 13 insertions(+), 7 deletions(-) commit 5f70d7b59445b634f94469a8c12cf31f8f81fdae Author: Rob Taylor Date: Fri Feb 9 02:13:40 2007 +0000 Make uscore_to_wincaps return NULL when passed NULL. A null pointer dereference occured when uscore_to_wincaps was passed NULL, which could happen in some cases. Fixes bug #8318. dbus/dbus-gobject.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit 678f8e5fdaf5c587547a96b173a5532f14337988 Author: Rob Taylor Date: Fri Feb 9 02:08:57 2007 +0000 Only respond to NameOwnerChanged if its one of our names. This fixes a crash due to code in dbus_g_proxy_manager_replace_name_owner that was dereferencing a null pointer when the process received a nameownerchanged for an object not registered with dbus-glib. Patch by Kimmo Hämäläinen . Fixes bug #8235. dbus/dbus-gproxy.c | 29 +++++++++++++++++++---------- 1 files changed, 19 insertions(+), 10 deletions(-) commit 1ce4d3e7324d92d797b7e41e869b1d0ff51f129a Author: Rob Taylor Date: Fri Feb 9 01:51:55 2007 +0000 Fix dbus-binding-tool to generate headers usable from C++ Adds a cast that isn't needed in C, but is needed in C++ Thanks to Christian Persch , though his patch had a typo :) Fixes bug #6358. dbus/dbus-binding-tool-glib.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit 6d61bad839512dedb62318fd82e2c0b20906d62f Author: Rob Taylor Date: Fri Feb 9 01:26:48 2007 +0000 Only require --prefix for server side binding generation In dbus-binding-tool, only require --prefix for server side binding generation, as client-side defaults to the useful org_foo_bar_baz. Also fixes up the help string. Closes bug #4185 dbus/dbus-glib-tool.c | 5 +++-- 1 files changed, 3 insertions(+), 2 deletions(-) commit cb866d68e733e48bd6a6cea21fa4b5ca648d861e Author: Rob Taylor Date: Fri Feb 9 00:04:13 2007 +0000 Clarify documentation for dbus_g_method_get_sender. Adds a note that the caller is responsible for freeing the returned value. dbus/dbus-gobject.c | 5 +++-- 1 files changed, 3 insertions(+), 2 deletions(-) commit 22bd9971b4ac95f926b577e416f54ec57bb16d2d Author: Rob Taylor Date: Thu Feb 8 23:54:33 2007 +0000 Add new API for specifying the timeout in DBusGProxy calls. This applies the patch from S. Nalliami to provide new glib API's to allow the user to specify the timeout parameter for the method calls. Currently, in the dbus-glib APIs,the timeout value for synchronous and asynchronous method calls is hard coded as -1(ie.25seconds) which inhibits the user from specifying shorter or longer timeout values.The new APIs take the timeout value as an argument and processes the method calls. Fixes bug #9832. dbus/dbus-glib.h | 16 +++++++ dbus/dbus-gproxy.c | 121 ++++++++++++++++++++++++++++++++++++++++++++++++---- 2 files changed, 128 insertions(+), 9 deletions(-) commit b226873fdc2e7b98740afb93a7bae675952a29f0 Author: Rob Taylor Date: Thu Feb 8 23:17:40 2007 +0000 Dont check for libxml2 when expat not found. There isn't a version of dbus-gloader that works with libxml2, so this changes configure.ac to not check for libxml2, and error out if expat isn't found. configure.ac | 43 ++++--------------------------------------- 1 files changed, 4 insertions(+), 39 deletions(-) commit c51ff16bc93b4741061c362de638ab5e8cace000 Author: Rob Taylor Date: Thu Feb 8 15:06:08 2007 +0000 Add configure flags --with-introspect-xml Adds the configure flags --with-introspect-xml, which allows dbus-glib to be built with pre-generated bus daemons introspection xml (such as can be gained with dbus-daemon --introspect). This allows dbus-glib to be built without a running dbus-daemon, useful for embedded systems. configure.ac | 15 +++++++++++++++ tools/Makefile.am | 5 +++++ 2 files changed, 20 insertions(+), 0 deletions(-) commit c5c0bed2166767162f599958270e92122da3ff2a Author: Rob Taylor Date: Thu Feb 8 15:00:17 2007 +0000 update doc/reference/dbus-glib-undocumented.txt dbus_g_thread_init is now documented. doc/reference/dbus-glib-undocumented.txt | 7 +++---- 1 files changed, 3 insertions(+), 4 deletions(-) commit c807d408924e9a9bcc7b2eb67b411c25888090ee Author: Rob Taylor Date: Mon Jan 8 08:41:11 2007 +0000 Use dbus_threads_init_default() rather than using own threading primitives. Modifies dbus_g_threads_init() to just call dbus_threads_init_default(), which with current dbus gives us full thread primitives with recursive locking. Fixes #9259. dbus/dbus-gthread.c | 143 +++------------------------------------------------ 1 files changed, 7 insertions(+), 136 deletions(-) commit 9bb928331e2ad602728320598698de90c9a246d6 Author: Rob Taylor Date: Mon Jan 8 08:39:22 2007 +0000 Reduce dependancy to dbus version 0.93, error out if correct version not found. In configure.ac, add code to error out if correct version of dbus-1 not found. Also use correct dependancy of 0.93, as this is when the --introspect flag was introduced to dbus-daemon. Pacth due to Luiz Augusto von Dentz . Fixes #8793. configure.ac | 9 +++++++-- 1 files changed, 7 insertions(+), 2 deletions(-) commit 79d115030d45fefd96d5ffc7853f80fc454c13b1 Author: Rob Taylor Date: Sun Jan 7 13:34:26 2007 +0000 Allow dbus and dbus-glib to live in different prefixes Adds Cflags: -I${includedir}/dbus-1.0 to dbus-glib-1.pc.in. Fixes #9384. dbus-glib-1.pc.in | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) commit 6de547af3bd7d2c8b77464435c45d22bba702cc7 Author: Rob Taylor Date: Thu Oct 26 10:22:26 2006 +0100 Correct spellings in NEWS NEWS | 37 +++++++++++++++++++++++-------------- 1 files changed, 23 insertions(+), 14 deletions(-) commit 83f8ed0935c37b3b5668d1a512370a51f73ccc27 Author: Rob Taylor Date: Wed Oct 25 22:14:02 2006 +0100 Update NEWS for release. NEWS | 36 ++++++++++++++++++++++++++++++++++++ 1 files changed, 36 insertions(+), 0 deletions(-) commit c449668fd2b8b92fde03a83ba76a0eb8bb2a9326 Author: Rob Taylor Date: Wed Oct 25 21:12:03 2006 +0100 only use -Wfloat-equal if compiler supports it Closes #7658. Thanks to Jens Granseuer for the patch. configure.ac | 31 +++++++++++++++++++++++++++---- 1 files changed, 27 insertions(+), 4 deletions(-) commit 505e48a851e38664c45e482b8f75ebbfd27fe278 Author: Rob Taylor Date: Wed Oct 25 21:00:18 2006 +0100 return NULL from g_return_val_if_fail in dbus_g_proxy_begin_call Closes #4159. dbus/dbus-gproxy.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) commit 62acdb49360dfbf994ef38c8e97d9190d30149f3 Author: Rob Taylor Date: Wed Oct 25 20:26:04 2006 +0100 Add dbus-gidl.h to IGNORE_HFILES for doxygen docs doc/reference/Makefile.am | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) commit 0d9889a99241aebc863237faf8126663c97ae059 Author: Rob Taylor Date: Wed Oct 25 20:17:55 2006 +0100 Update tools/Makefile.am for new dbus-binding-tool behaviour tools/Makefile.am | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit 0aa2db3f6f18bff7d5c62a00f052ca89e21b269f Author: Rob Taylor Date: Wed Oct 25 20:03:31 2006 +0100 Remove bashism in make-dbus-glib-error-enum.sh Closes #6700. dbus/make-dbus-glib-error-enum.sh | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit 74bcfcfbc242325ca470d483817ae37fa8d41f25 Author: Rob Taylor Date: Wed Oct 25 19:37:12 2006 +0100 Fix introspection when object has exported properties. dbus-gobject:write_interface was completely broken Fix thanks to mccann@jhu.edu. Closes #8607. dbus/dbus-gobject.c | 3 +-- 1 files changed, 1 insertions(+), 2 deletions(-) commit 3647d0df5780967dd505d3c046ab37ada70529bf Author: Rob Taylor Date: Wed Oct 25 19:14:50 2006 +0100 Require --prefix in dbus-binding-tool Closes #4185. dbus/dbus-glib-tool.c | 8 +++++++- 1 files changed, 7 insertions(+), 1 deletions(-) commit 054c6476495a6f85ae708ed81b9053bf666897b7 Author: Rob Taylor Date: Wed Oct 25 18:34:49 2006 +0100 Dont shadow index. Rename useage of index to index_. Thanks stdlib... Closes #8353. dbus/dbus-gtype-specialized.c | 12 ++++++------ dbus/dbus-gvalue.c | 14 +++++++------- 2 files changed, 13 insertions(+), 13 deletions(-) commit d3a494dced8e3f2de111f23ae3fbab6e32f4051a Author: Rob Taylor Date: Wed Oct 25 18:27:20 2006 +0100 Fix small leak when marshal_table is destroyed Closes #6870 with patch from Richard Hult dbus/dbus-gobject.c | 9 ++++++++- 1 files changed, 8 insertions(+), 1 deletions(-) commit 9bfec032a72e7af5945336fecbb9b6e0b6f2de9e Author: Rob Taylor Date: Wed Oct 25 18:24:53 2006 +0100 Fixes crash if disposing one DBusGProxy causes another for the same service to be unrefed in a destoyed callback. dbus/dbus-gproxy.c | 14 ++++++++- test/core/test-dbus-glib.c | 67 ++++++++++++++++++++++++++++++++++++++++++- 2 files changed, 78 insertions(+), 3 deletions(-) commit 53bf71bd852810a271d13a73ba445622616c711c Author: Rob Taylor Date: Wed Oct 25 16:41:38 2006 +0100 Bump version to 0.72 and use modern AC_INIT, AM_INIT_AUTOMAKE configure.ac | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) commit 28a54df202f089a3e00930e36a787c175501be41 Author: Rob Taylor Date: Wed Oct 25 14:36:25 2006 +0100 Clean generated run-with-tmp-session-bus.conf on make clean test/core/Makefile.am | 4 +++- 1 files changed, 3 insertions(+), 1 deletions(-) commit bcf15d72892582c28755563ca63182c198ef8f64 Author: Rob Taylor Date: Wed Oct 25 14:35:25 2006 +0100 Actually run unit tests and checks when doing make distcheck Makefile.am | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit 7c21166ef7ce9b370448a39c6c6744813933abee Author: Rob Taylor Date: Wed Oct 25 14:33:53 2006 +0100 Use TEST_CORE_SERVICE_BINARY path for core test service file .../data/valid-service-files/debug-glib.service.in | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit d6980d9d59edcf14cc1ab5af3945bd740a3f2495 Author: Rob Taylor Date: Wed Oct 25 14:32:14 2006 +0100 Use dbus-daemon --introspect to generate DBus service introspect xml tools/Makefile.am | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit 505f5486f055558934718672f1328b52fab6cd6e Author: Rob Taylor Date: Wed Oct 25 14:30:23 2006 +0100 Actually make interfaces tests work Working interfaces/Makefile.am Make service file for interfaces test service Fix up configure.ac appropriately. Sanitise service/object namespace for interfaces tests Remove accidentally added test/interfaces/.Makefile.am.sw configure.ac | 6 ++- test/interfaces/Makefile.am | 81 ++++++++++++++++-------------------- test/interfaces/run-test.sh | 23 +---------- test/interfaces/test-client.c | 22 +++++----- test/interfaces/test-goodbye.xml | 4 +- test/interfaces/test-hello.xml | 4 +- test/interfaces/test-interfaces.c | 4 +- test/interfaces/test-objects.c | 8 ++-- test/interfaces/test-server.c | 8 ++-- test/interfaces/test-song.xml | 4 +- 10 files changed, 69 insertions(+), 95 deletions(-) commit 4a479fe9516b141d94e57489f7e624ea6b94cb94 Author: Rob Taylor Date: Tue Oct 24 19:51:12 2006 +0100 Make interfaces tests work Working interfaces/Makefile.am Make service file for interfaces test service Fix up configure.ac appropriately. Sanitise service/object namespace for interfaces tests Remove accidentally added test/interfaces/.Makefile.am.swp .../valid-service-files/interfaces-test.service.in | 3 +++ test/interfaces/.Makefile.am.swp | Bin 12288 -> 0 bytes 2 files changed, 3 insertions(+), 0 deletions(-) commit 4db00a26f0c67db96ff6185286658278678e23bd Author: Rob Taylor Date: Tue Oct 24 18:07:26 2006 +0100 Changes for test/interfaces Changed configure.ac and test/Makefile.am configure.ac | 1 + test/Makefile.am | 4 ++-- 2 files changed, 3 insertions(+), 2 deletions(-) commit 4f6a75760f55eeb79113d09baa46ecdd09e100e6 Author: Rob Taylor Date: Tue Oct 24 16:36:08 2006 +0100 Add tests for new interfaces functionaility From bug #5173 test/interfaces/.Makefile.am.swp | Bin 0 -> 12288 bytes test/interfaces/.gitignore | 4 + test/interfaces/Makefile.am | 86 +++++++++++++++++++++++++ test/interfaces/run-test.sh | 38 +++++++++++ test/interfaces/test-client.c | 85 +++++++++++++++++++++++++ test/interfaces/test-goodbye.xml | 9 +++ test/interfaces/test-hello.xml | 10 +++ test/interfaces/test-interfaces.c | 126 +++++++++++++++++++++++++++++++++++++ test/interfaces/test-interfaces.h | 48 ++++++++++++++ test/interfaces/test-objects.c | 73 +++++++++++++++++++++ test/interfaces/test-objects.h | 31 +++++++++ test/interfaces/test-server.c | 56 ++++++++++++++++ test/interfaces/test-song.xml | 9 +++ 13 files changed, 575 insertions(+), 0 deletions(-) commit 4467ffca15e4783b7e90f1349be18fca3807b6cb Author: Rob Taylor Date: Tue Oct 24 15:42:42 2006 +0100 Bump GLib dependancy to 2.6 Closes #4390. configure.ac | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) commit 6ac144ff50d6c87795b470fb74cc1c0dd3e549a7 Author: Rob Taylor Date: Tue Oct 17 17:06:48 2006 +0100 Add gobject-2.0 to dbus-glib-1.pc.in glib bindings depend on gobject. Its amazing we've got this far with noone noticiing this bug... dbus-glib-1.pc.in | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit 03e629cabe1100527c467fc5bf2a8aa4f7d3a6f5 Author: Rob Taylor Date: Wed Oct 4 19:30:46 2006 -0400 Remove accidentally added test/interfaces stuff in the autotools configure.ac | 1 - test/Makefile.am | 4 ++-- 2 files changed, 2 insertions(+), 3 deletions(-) commit 8e2c2ba5f8f0a25708bac86cafa46be02a1bdb78 Author: Rob Taylor Date: Wed Oct 4 19:16:35 2006 -0400 Fix up tests Puts all exposed servies in the org.freedesktop.DBus.GLib namespace Make tests run again! test/core/run-test.sh | 6 +- test/core/test-dbus-glib.c | 142 ++++++++++---------- test/core/test-profile.c | 6 +- test/core/test-service-glib.c | 16 +- test/core/test-service-glib.xml | 6 +- test/core/test-thread-client.c | 4 +- test/core/test-thread-server.c | 2 +- .../data/valid-service-files/debug-echo.service.in | 2 +- .../data/valid-service-files/debug-glib.service.in | 2 +- test/test-service.c | 28 ++-- 10 files changed, 107 insertions(+), 107 deletions(-) commit c0bb50ca11675274464d91ed5651676449ce360d Author: Rob Taylor Date: Wed Oct 4 19:13:34 2006 -0400 Update autofoo for new tests layout configure.ac | 1 + test/Makefile.am | 4 ++-- 2 files changed, 3 insertions(+), 2 deletions(-) commit 33412cde926a9fc6ce86618835661bbc48475177 Author: Rob Taylor Date: Wed Oct 4 23:43:29 2006 +0100 Make autogen a bit more useful for maintainers Adds default configure parameters - the ones you usually want ;) autogen.sh | 12 ++++++++---- 1 files changed, 8 insertions(+), 4 deletions(-) commit b47e9bca585b1104f6d7309b02da27b123015611 Author: Rob Taylor Date: Wed Sep 27 14:12:26 2006 +0100 Update COPYING and HACKING to be correct for dbus-glib COPYING | 9 ++++----- HACKING | 11 +++++++++++ 2 files changed, 15 insertions(+), 5 deletions(-) commit 50541a23757d59d93918db52c9e9c65596d943c5 Author: Rob Taylor Date: Wed Sep 27 14:04:19 2006 +0100 Autoconf changes from test/glib -> test/core move configure.ac | 4 ++-- test/Makefile.am | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) commit 01024785e818e72c06ba44e8feea926e8aa8f7a8 Author: Rob Taylor Date: Wed Sep 27 14:02:42 2006 +0100 add an .gitignore .gitignore | 205 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 205 insertions(+), 0 deletions(-) commit 003840bd5f08802fb2a63b3c49f9d0685f6f292b Author: Rob Taylor Date: Wed Sep 27 13:56:39 2006 +0100 Move tests/glib to test/core Move tests/glib to test/core in preparation for seperate functionality tests test/core/Makefile.am | 86 ++ test/core/my-object-marshal.list | 2 + test/core/run-test.sh | 38 + test/core/test-dbus-glib.c | 1614 ++++++++++++++++++++++++++++++++++++++ test/core/test-profile.c | 1150 +++++++++++++++++++++++++++ test/core/test-service-glib.c | 928 ++++++++++++++++++++++ test/core/test-service-glib.xml | 179 +++++ test/core/test-thread-client.c | 98 +++ test/core/test-thread-server.c | 209 +++++ test/core/test-thread.h | 1 + test/glib/Makefile.am | 86 -- test/glib/my-object-marshal.list | 2 - test/glib/run-test.sh | 38 - test/glib/test-dbus-glib.c | 1614 -------------------------------------- test/glib/test-profile.c | 1150 --------------------------- test/glib/test-service-glib.c | 928 ---------------------- test/glib/test-service-glib.xml | 179 ----- test/glib/test-thread-client.c | 98 --- test/glib/test-thread-server.c | 209 ----- test/glib/test-thread.h | 1 - 20 files changed, 4305 insertions(+), 4305 deletions(-) commit de74dd48194f9aa3629d7b65dd89e0b1339f8654 Author: Rob Taylor Date: Wed Sep 27 13:39:24 2006 +0100 Rename configure.in to configure.ac for modernity configure.ac | 902 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ configure.in | 902 ---------------------------------------------------------- 2 files changed, 902 insertions(+), 902 deletions(-) commit b17fc759d2d5422ce287706d276443fa338cbf5a Author: Rob Taylor Date: Sun Sep 24 14:34:19 2006 +0100 Fix memleak in lookup_or_register_specialized. Applies fix from Daniel d'Andrada Tenório de Carvalho, closing bug #7352. dbus/dbus-gtype-specialized.c | 3 +-- 1 files changed, 1 insertions(+), 2 deletions(-) commit 4d6aa726814295cfabab95a51d2e320d02b72dde Author: Rob Taylor Date: Sun Sep 24 14:32:52 2006 +0100 Add m4 directory Add missing changes from last commit. Makefile.am | 9 +++++---- autogen.sh | 6 +++++- configure.in | 1 + 3 files changed, 11 insertions(+), 5 deletions(-) commit 1571d556aa5f087e52074e5fd7c5e5c29667c551 Author: Rob Taylor Date: Sun Sep 24 14:07:50 2006 +0100 Add m4 directory Add an m4 directory and add gtk-doc.m4, which is installed in the tree by gtkdocize. m4/Makefile.am | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) commit fcc2ccdb19bfa25db005494271dbd91a3205c3a6 Merge: 99e1085 3f978cf Author: Rob Taylor Date: Thu Sep 21 03:44:22 2006 +0100 Merge branch 'master' of git+ssh://git.freedesktop.org/git/dbus/dbus-glib commit 3f978cf34b91e5404dc3ea559995a9648734a2da Author: John (J5) Palmieri Date: Fri Sep 8 10:56:06 2006 -0400 * tools/Makefile.am: Add tools/session.conf to EXTRA_DIST so make check works from tarballs tools/Makefile.am | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit 99e10857c50a025fb37613c4dae720b5afc890f5 Merge: b193f2b 22ea91b Author: Rob Taylor Date: Thu Aug 24 23:27:58 2006 +0100 Merge http://ms800.montefiore.ulg.ac.be/~frecinau/dbus-glib commit 22ea91b33bff95cf480a4c992e4774b671f1534b Author: Steve Frécinaux Date: Tue Aug 22 22:57:44 2006 +0200 Fix compilation with -Werror dbus/dbus-gmain.c | 2 +- test/glib/test-dbus-glib.c | 9 +-------- 2 files changed, 2 insertions(+), 9 deletions(-) commit 368aaee38049dc599fb8d06d7096bcdbd04befab Author: Steve Frécinaux Date: Tue Aug 22 22:26:24 2006 +0200 Make test scripts run during out-of-tree compilation test/glib/run-test.sh | 4 +++- tools/run-with-tmp-session-bus.sh | 5 ++++- 2 files changed, 7 insertions(+), 2 deletions(-) commit b193f2b28472790ff66fc575d55d4e6d5a9d3e78 Author: Steve Frécinaux Date: Tue Aug 22 19:36:44 2006 +0200 Fix out-of-tree compilation (cherry picked from 4b85a9e92bcf21356f25c535b3550a330cb018a4 commit) dbus/Makefile.am | 13 +++++++++++-- dbus/examples/Makefile.am | 8 +++++++- dbus/examples/statemachine/Makefile.am | 9 ++++++++- test/Makefile.am | 7 ++++++- test/glib/Makefile.am | 8 +++++++- 5 files changed, 39 insertions(+), 6 deletions(-) commit 4b85a9e92bcf21356f25c535b3550a330cb018a4 Author: Steve Frécinaux Date: Tue Aug 22 19:36:44 2006 +0200 Fix out-of-tree compilation dbus/Makefile.am | 13 +++++++++++-- dbus/examples/Makefile.am | 8 +++++++- dbus/examples/statemachine/Makefile.am | 9 ++++++++- test/Makefile.am | 7 ++++++- test/glib/Makefile.am | 8 +++++++- 5 files changed, 39 insertions(+), 6 deletions(-) commit 46e7e573203e354b676e031067b8607b4f2640df Merge: 355ef78 3be8161 Author: Steve Frécinaux Date: Tue Aug 22 19:07:59 2006 +0200 Merge branch 'master' of git://anongit.freedesktop.org/git/dbus/dbus-glib commit 3be816118dfc560955e5cd8e85203129087959ce Author: Rob Taylor Date: Tue Aug 22 12:25:39 2006 +0100 replace doxygen with gtk-doc in INSTALL INSTALL | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit 27e76bb78db2b467ce93fa0088c6c2407836e4ff Author: Rob Taylor Date: Tue Aug 22 12:25:13 2006 +0100 Combine .PHONY rules in toplevel Makefile.am A .PHONY rule was added by the gtk-doc patch, this combines it with the existsing .PHONY rule Makefile.am | 5 ++--- 1 files changed, 2 insertions(+), 3 deletions(-) commit d49a2a2486cd60e22b360dda8ae5a50d25486667 Author: Rob Taylor Date: Tue Aug 22 12:24:00 2006 +0100 Modifed autogen.sh to check for autotools an gtkdocize versions autogen.sh now does a full check for all the correct versions of autotools. It uses autoreconf to do the various steps. It also checks for correct gtkdocize version and pretty prints a bit, a-la gnome-autogen.sh. autogen.sh | 143 ++++++++++++++++++++++++++++++++++++++++++------------------ 1 files changed, 101 insertions(+), 42 deletions(-) commit 62419419257d6353c5f35001e1f538fca300f3c4 Author: Rob Taylor Date: Tue Aug 22 11:44:42 2006 +0100 add missing doc/Makefile.am from gtk-doc update. doc/Makefile.am | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) commit f812d9044aa73b0c86f92dc0dcae03d26e23193a Author: Rob Taylor Date: Tue Aug 22 11:43:43 2006 +0100 Add missing m4/gtk-doc.m4 from gtk-doc patch. m4/gtk-doc.m4 | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) commit 2effafca679d6331201e7637b18888a70b958eb8 Author: Rob Taylor Date: Fri Aug 18 20:55:17 2006 +0100 Commit patch to switch to gtk-doc with gtype-specialized doc and updates from Marc-Andre Lureau , with minor cleanup. Closes #7726. Makefile.am | 5 +- autogen.sh | 4 + configure.in | 8 ++ dbus/dbus-gidl.c | 2 +- dbus/dbus-glib-tool.c | 2 +- dbus/dbus-glib.c | 134 ++++++++++++++------- dbus/dbus-glib.h | 41 ++++-- dbus/dbus-gmain.c | 46 +++---- dbus/dbus-gobject.c | 140 +++++++++++++--------- dbus/dbus-gproxy.c | 193 +++++++++++++++++------------ dbus/dbus-gtype-specialized.c | 20 ++- dbus/dbus-gutils.c | 2 +- dbus/dbus-gvalue.c | 6 +- doc/reference/Makefile.am | 94 +++++++++++++++ doc/reference/dbus-binding-tool.xml | 62 ++++++++++ doc/reference/dbus-glib-docs.sgml | 83 +++++++++++++ doc/reference/dbus-glib-sections.txt | 166 +++++++++++++++++++++++++ doc/reference/dbus-glib-undocumented.txt | 78 ++++++++++++ doc/reference/version.xml.in | 1 + 19 files changed, 858 insertions(+), 229 deletions(-) commit 355ef78d98d6fc65715845d56232199162cab12a Author: Steve Frécinaux Date: Thu Aug 17 11:48:20 2006 +0200 Interface support for bindings. dbus/dbus-gobject.c | 286 +++++++++++++++++++++++++++++---------------------- 1 files changed, 161 insertions(+), 125 deletions(-) commit e6c7815f9457757d7364463759766c85981ce207 Author: John (J5) Palmieri Date: Mon Jul 24 14:44:36 2006 -0400 * Released 0.71 NEWS | 7 ++++++- configure.in | 2 +- 2 files changed, 7 insertions(+), 2 deletions(-) commit 3f720d5a5028d2b4075b474ba17fb9b7508093ac Author: John (J5) Palmieri Date: Fri Jul 21 16:25:35 2006 -0400 * Various Makefile cleanups Makefile.am | 26 ++++++++++++++++++++++++-- dbus/Makefile.am | 8 ++++---- test/Makefile.am | 2 -- 3 files changed, 28 insertions(+), 8 deletions(-) commit 05cb3fd6e2c139e61d1461443660badfbdf94a83 Author: John (J5) Palmieri Date: Mon Jul 17 16:36:02 2006 -0400 * Released 0.70 * Add NEWS to the dist Makefile.am | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) commit d59c4a541397033b69d575c8cc495d0f3ba13ee3 Author: John (J5) Palmieri Date: Mon Jul 17 16:28:45 2006 -0400 * Added a NEWS entry for this release NEWS | 18 ++++++++++++++++++ 1 files changed, 18 insertions(+), 0 deletions(-) commit 990802d9f01a7c5aa1ae582aad21963fe20b601e Author: John (J5) Palmieri Date: Mon Jul 17 16:06:52 2006 -0400 * remove ChangeLog because this will now be generated during dist 0 files changed, 0 insertions(+), 0 deletions(-) commit 6a68e96e69cb17a981c801d8e7480c5bb4d51a6c Author: John (J5) Palmieri Date: Mon Jul 17 15:52:26 2006 -0400 * add the Doxyfile.in file Doxyfile.in | 180 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 180 insertions(+), 0 deletions(-) commit 89a2a3b5b5795434900f1ca41fc73162b7bb09f2 Author: John (J5) Palmieri Date: Thu Jul 6 19:16:07 2006 -0400 - distcheck cleanups dbus/Makefile.am | 2 +- tools/Makefile.am | 6 ++++++ 2 files changed, 7 insertions(+), 1 deletions(-) commit 46ea5dc1aa64ca906d28119e2d9eed3a48e6adfc Author: John (J5) Palmieri Date: Thu Jul 6 19:05:44 2006 -0400 - Renabled another test dbus/Makefile.am | 20 ++++++++++---------- 1 files changed, 10 insertions(+), 10 deletions(-) commit ae743d6feca5e24541124148a53a475f6f27e2a9 Author: John (J5) Palmieri Date: Thu Jul 6 18:52:50 2006 -0400 - add gcov source test/decode-gcov.c | 2652 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 2652 insertions(+), 0 deletions(-) commit ae90f4bab7a98d89a85e8e6c11b4af72bb9a2525 Author: John (J5) Palmieri Date: Thu Jul 6 18:52:16 2006 -0400 - Adding placeholder HACKING file 0 files changed, 0 insertions(+), 0 deletions(-) commit 5f47ecc191cae12930652b708d3c52d293eba4da Author: John (J5) Palmieri Date: Thu Jul 6 18:05:37 2006 -0400 - Add back the Doxygen doc generation Makefile.am | 2 +- configure.in | 1 + doc/api/README | 3 +++ 3 files changed, 5 insertions(+), 1 deletions(-) commit fdb8aaaab032ab4eb63aa80dbef7de91a3de346a Author: John (J5) Palmieri Date: Thu Jul 6 17:40:30 2006 -0400 - Add back tests to the glib bindings Makefile.am | 5 +- configure.in | 17 +- test/Makefile.am | 29 + .../data/valid-service-files/debug-echo.service.in | 3 + .../data/valid-service-files/debug-glib.service.in | 3 + test/glib/Makefile.am | 80 + test/glib/my-object-marshal.list | 2 + test/glib/run-test.sh | 36 + test/glib/test-dbus-glib.c | 1621 ++++++++++++++++++++ test/glib/test-profile.c | 1150 ++++++++++++++ test/glib/test-service-glib.c | 928 +++++++++++ test/glib/test-service-glib.xml | 179 +++ test/glib/test-thread-client.c | 98 ++ test/glib/test-thread-server.c | 209 +++ test/glib/test-thread.h | 1 + test/test-service.c | 374 +++++ tools/Makefile.am | 13 + tools/run-with-tmp-session-bus.sh | 65 + tools/session.conf | 24 + 19 files changed, 4833 insertions(+), 4 deletions(-) commit 24e982d596036202850c679aa0460b729840e45d Author: John (J5) Palmieri Date: Thu Jul 6 14:40:14 2006 -0400 - Fix up docs INSTALL | 78 +------------------------------------------------------------- README | 71 --------------------------------------------------------- 2 files changed, 2 insertions(+), 147 deletions(-) commit 6aa2aba0a64ea19e504118dc56a1f9e559568f90 Author: John (J5) Palmieri Date: Thu Jun 29 12:05:05 2006 -0400 - Really commit the glib to dbus move and build fixes Makefile.am | 10 +++++----- configure.in | 18 +++++++++++++----- dbus/dbus-glib.h | 2 +- dbus/examples/Makefile.am | 14 +++++++------- dbus/examples/statemachine/Makefile.am | 10 +++++----- 5 files changed, 31 insertions(+), 23 deletions(-) commit 6a9ac47cc9143ee899455c576f557818dab1f7d2 Author: John (J5) Palmieri Date: Thu Jun 29 11:26:07 2006 -0400 - Created empty NEWS file - renamed glib dir to dbus so include paths stay the same in the examples - build now works dbus/.cvsignore | 13 + dbus/Makefile.am | 111 + dbus/dbus-binding-tool-glib.c | 1625 ++++++++++++ dbus/dbus-binding-tool-glib.h | 40 + dbus/dbus-gidl.c | 788 ++++++ dbus/dbus-gidl.h | 158 ++ dbus/dbus-glib-lowlevel.h | 72 + dbus/dbus-glib-tool.c | 489 ++++ dbus/dbus-glib-tool.h | 38 + dbus/dbus-glib.c | 304 +++ dbus/dbus-glib.h | 256 ++ dbus/dbus-gloader-expat.c | 266 ++ dbus/dbus-gmain.c | 814 ++++++ dbus/dbus-gmarshal.c | 89 + dbus/dbus-gmarshal.h | 21 + dbus/dbus-gmarshal.list | 1 + dbus/dbus-gobject.c | 2217 ++++++++++++++++ dbus/dbus-gobject.h | 43 + dbus/dbus-gparser.c | 881 +++++++ dbus/dbus-gparser.h | 65 + dbus/dbus-gproxy.c | 2748 ++++++++++++++++++++ dbus/dbus-gsignature.c | 210 ++ dbus/dbus-gsignature.h | 19 + dbus/dbus-gtest-main.c | 51 + dbus/dbus-gtest.c | 92 + dbus/dbus-gtest.h | 38 + dbus/dbus-gthread.c | 179 ++ dbus/dbus-gtool-test.h | 31 + dbus/dbus-gtype-specialized.c | 778 ++++++ dbus/dbus-gtype-specialized.h | 176 ++ dbus/dbus-gutils.c | 130 + dbus/dbus-gutils.h | 57 + dbus/dbus-gvalue-utils.c | 1439 ++++++++++ dbus/dbus-gvalue-utils.h | 73 + dbus/dbus-gvalue.c | 1854 +++++++++++++ dbus/dbus-gvalue.h | 43 + dbus/examples/.cvsignore | 17 + dbus/examples/Makefile.am | 38 + dbus/examples/example-client.c | 121 + dbus/examples/example-service.c | 153 ++ dbus/examples/example-service.xml | 19 + dbus/examples/example-signal-emitter.c | 132 + dbus/examples/example-signal-emitter.xml | 13 + dbus/examples/example-signal-recipient.c | 102 + dbus/examples/statemachine/.cvsignore | 16 + dbus/examples/statemachine/Makefile.am | 35 + dbus/examples/statemachine/sm-marshal.list | 1 + dbus/examples/statemachine/statemachine-client.c | 662 +++++ dbus/examples/statemachine/statemachine-server.c | 229 ++ dbus/examples/statemachine/statemachine-server.h | 37 + dbus/examples/statemachine/statemachine-server.xml | 14 + dbus/examples/statemachine/statemachine.c | 353 +++ dbus/examples/statemachine/statemachine.h | 77 + dbus/examples/statemachine/statemachine.xml | 33 + dbus/make-dbus-glib-error-enum.sh | 25 + dbus/make-dbus-glib-error-switch.sh | 29 + glib/.cvsignore | 13 - glib/Makefile.am | 105 - glib/dbus-binding-tool-glib.c | 1625 ------------ glib/dbus-binding-tool-glib.h | 40 - glib/dbus-gidl.c | 788 ------ glib/dbus-gidl.h | 158 -- glib/dbus-glib-lowlevel.h | 72 - glib/dbus-glib-tool.c | 489 ---- glib/dbus-glib-tool.h | 38 - glib/dbus-glib.c | 304 --- glib/dbus-glib.h | 256 -- glib/dbus-gloader-expat.c | 266 -- glib/dbus-gmain.c | 814 ------ glib/dbus-gmarshal.c | 89 - glib/dbus-gmarshal.h | 21 - glib/dbus-gmarshal.list | 1 - glib/dbus-gobject.c | 2217 ---------------- glib/dbus-gobject.h | 43 - glib/dbus-gparser.c | 881 ------- glib/dbus-gparser.h | 65 - glib/dbus-gproxy.c | 2748 -------------------- glib/dbus-gsignature.c | 210 -- glib/dbus-gsignature.h | 19 - glib/dbus-gtest-main.c | 51 - glib/dbus-gtest.c | 92 - glib/dbus-gtest.h | 38 - glib/dbus-gthread.c | 179 -- glib/dbus-gtool-test.h | 31 - glib/dbus-gtype-specialized.c | 778 ------ glib/dbus-gtype-specialized.h | 176 -- glib/dbus-gutils.c | 130 - glib/dbus-gutils.h | 57 - glib/dbus-gvalue-utils.c | 1439 ---------- glib/dbus-gvalue-utils.h | 73 - glib/dbus-gvalue.c | 1854 ------------- glib/dbus-gvalue.h | 43 - glib/examples/.cvsignore | 17 - glib/examples/Makefile.am | 38 - glib/examples/example-client.c | 121 - glib/examples/example-service.c | 153 -- glib/examples/example-service.xml | 19 - glib/examples/example-signal-emitter.c | 132 - glib/examples/example-signal-emitter.xml | 13 - glib/examples/example-signal-recipient.c | 102 - glib/examples/statemachine/.cvsignore | 16 - glib/examples/statemachine/Makefile.am | 35 - glib/examples/statemachine/sm-marshal.list | 1 - glib/examples/statemachine/statemachine-client.c | 662 ----- glib/examples/statemachine/statemachine-server.c | 229 -- glib/examples/statemachine/statemachine-server.h | 37 - glib/examples/statemachine/statemachine-server.xml | 14 - glib/examples/statemachine/statemachine.c | 353 --- glib/examples/statemachine/statemachine.h | 77 - glib/examples/statemachine/statemachine.xml | 33 - glib/make-dbus-glib-error-enum.sh | 25 - glib/make-dbus-glib-error-switch.sh | 29 - 112 files changed, 18315 insertions(+), 18309 deletions(-) commit 7fa1f1471e5b878253695da46a89a3186fb2a0d1 Author: John (J5) Palmieri Date: Wed Jun 28 14:39:18 2006 -0400 - Take out comment in a literal configure.in | 1 - 1 files changed, 0 insertions(+), 1 deletions(-) commit 1a7d56d33f83dde917871f8b2d5af19f25786449 Author: John (J5) Palmieri Date: Wed Jun 28 14:24:40 2006 -0400 - Have autogen.sh point to dbus-glib autogen.sh | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) commit 24ec6aba3281c460f64bbe9d5bb2dd265d453cce Author: John (J5) Palmieri Date: Wed Jun 28 14:22:25 2006 -0400 - Add files missed in the split glib/dbus-glib-lowlevel.h | 72 +++++++++++ glib/dbus-glib.h | 256 +++++++++++++++++++++++++++++++++++++ glib/make-dbus-glib-error-enum.sh | 25 ++++ 3 files changed, 353 insertions(+), 0 deletions(-) commit b8b86555280694d85d64b68d0f9131868598161a Author: John (J5) Palmieri Date: Wed Jun 28 14:21:26 2006 -0400 - Add boilerplate build files AUTHORS | 16 + COPYING | 551 +++++++++++++++++++++++++++++++++ INSTALL | 294 ++++++++++++++++++ Makefile.am | 57 ++++ README | 101 ++++++ autogen.sh | 93 ++++++ configure.in | 870 +++++++++++++++++++++++++++++++++++++++++++++++++++++ dbus-glib-1.pc.in | 12 + 8 files changed, 1994 insertions(+), 0 deletions(-) commit 698177269a46c2cb80fbb2c471f5ad6314bd106b Author: Ross Burton Date: Wed Jun 14 16:49:37 2006 +0000 2006-06-14 Ross Burton * glib/dbus-gobject.c: Free a leaking GArray (surely not!) in dbus_g_method_return. glib/dbus-gobject.c | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) commit 0b305ffe12e7273640226e323074f2cb7d7387cc Author: Ross Burton Date: Mon Jun 12 14:22:48 2006 +0000 2006-06-12 Ross Burton * glib/dbus-gproxy.c: Don't leak a GArray when firing signals (thank Rob Taylor for review). glib/dbus-gproxy.c | 4 +++- 1 files changed, 3 insertions(+), 1 deletions(-) commit 66e5632e14760bbd396afbc4d474cbbed22f37f7 Author: Robert McQueen Date: Wed Jun 7 00:31:01 2006 +0000 2005-05-06 Robert McQueen * glib/dbus-gtype-specialized.c: Fix obvious leak of GArray in every call to dbus_g_type_get_struct. glib/dbus-gtype-specialized.c | 9 +++++++-- 1 files changed, 7 insertions(+), 2 deletions(-) commit 9b151fd7a396463aa3f7c6ac0a14df444c78a6b1 Author: Robert McQueen Date: Wed Jun 7 00:03:57 2006 +0000 2005-05-06 Robert McQueen * glib/dbus-gvalue-utils.c: Fix the failing test where static string pointers were put into a GPtrArray-based specialised collection, and then freed along with the array. GValues which you add into collections or maps which have the NOCOPY flag set are assumed to not belong to the caller, so rather than the existing pointer-stealing semantics, they are copied instead. Given that the main consumers of this abstraction are the bindings themselves, I don't think this is too bad, but others should watch their choice of take vs set_static. glib/dbus-gvalue-utils.c | 24 ++++++++++++++---------- 1 files changed, 14 insertions(+), 10 deletions(-) commit 5559e67b90b3c186bf0002253587013264ce9dc0 Author: Robert McQueen Date: Tue Jun 6 23:07:04 2006 +0000 2005-05-06 Robert McQueen * glib/dbus-gvalue-utils.c: Spotted a warning about the return value of g_slist_prepend not being used. Fixed copying of slist-based specialised collections, then wrote a test case and found that it was all broken. Went on to fix iterating and appending too. Good thing nobody uses this code yet. glib/dbus-gvalue-utils.c | 101 ++++++++++++++++++++++++++++++++++++++++----- 1 files changed, 89 insertions(+), 12 deletions(-) commit 7ca236d43bc91778e90ac59500aeb1d68c8acd6f Author: Robert McQueen Date: Tue Jun 6 19:45:39 2006 +0000 2005-05-06 Robert McQueen * glib/dbus-gvalue-utils.c: Remove duplicated code by having all of the iterators use gvalue_take_ptrarray_value (the GValues themselves are discarded without unsetting, so it makes no difference whether we take or set_static). Remove cases for G_TYPE_POINTER because there really is nothing useful we can do with them in our specialised types - we *need* boxed copy/free functions at the very least. glib/dbus-gvalue-utils.c | 91 ++++++++-------------------------------------- 1 files changed, 16 insertions(+), 75 deletions(-) commit 8896d43457634c4c10d9909907d0d9082b520a07 Author: Havoc Pennington Date: Sun May 21 05:33:52 2006 +0000 2006-05-21 Havoc Pennington * glib/dbus-gproxy.c: Put in a pile of assertions that the proxy name is not NULL when it shouldn't be. Also a couple of possible fixes for #4637 though I don't understand why the bug happens, to be honest... also the object constructor has an assert name != NULL and the name is only currently NULL for peer-to-peer proxies that I don't think anyone uses? So it should be asserting. Anyway, for now at least see if we get an earlier assertion failure. * glib/dbus-gvalue-utils.c: Put in a couple of assertions for apparently broken code to be sure the tests fail and someone will fix them... glib/dbus-gvalue-utils.c | 15 +++++++++++++++ 1 files changed, 15 insertions(+), 0 deletions(-) commit 4da76dd7d5845f05efd553037750ddeffd7d1962 Author: Robert McQueen Date: Fri Apr 28 21:11:28 2006 +0000 2005-04-28 Robert McQueen * glib/dbus-gproxy.c: Fix properties so that they can be given in any order, making it easier for people who inherit from this object. glib/dbus-gproxy.c | 29 ++++++++++++++++++++++------- 1 files changed, 22 insertions(+), 7 deletions(-) commit 08cd19641ff8c6fcb1f8e5821e6c9dc81f11cd6f Author: Robert McQueen Date: Fri Apr 28 21:02:16 2006 +0000 2005-04-28 Robert McQueen * glib/dbus-gvalue-utils.c: Patch from Jakub Stachowski to fix leaking of memory from within pointer arrays and lists. Fixes bug #6300. glib/dbus-gvalue-utils.c | 62 +++++++++++++++++++++++++++++++++++++++++---- 1 files changed, 56 insertions(+), 6 deletions(-) commit 96fb792c6a5661afeef76ece3cd7defc9ffc8db8 Author: Robert McQueen Date: Fri Apr 28 20:36:56 2006 +0000 2005-04-28 Robert McQueen * glib/dbus-gvalue.c: Patch from Jakub Stachowski to fix a leak in generating struct signatures. Fixes bug #6083. glib/dbus-gvalue.c | 9 ++++++--- 1 files changed, 6 insertions(+), 3 deletions(-) commit 636fe6ed1b321cd05b72ca39d414ecd1c2cb4b4f Author: Havoc Pennington Date: Sun Feb 26 01:06:33 2006 +0000 2006-02-25 Havoc Pennington * glib/dbus-glib-tool.c (usage): fix up the usage message, someone should make this thing use the new glib options parser glib/dbus-glib-tool.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit 844b4184483ac979eff27319f144e8f330858062 Author: Robert McQueen Date: Thu Feb 16 00:43:41 2006 +0000 2006-02-16 Robert McQueen * dbus/dbus-message.c (dbus_message_iter_get_fixed_array): Patch from Rob Taylor to correct a bogus assertion that the next element to read from the iter is fixed in size. This is not the case when you are at the end of the iter, because the next element type is INVALID. * dbus/dbus-string.c (_dbus_string_init_const_len): Correct a a bogus assert which means that you may not initialise a 0-length string unless you provide a non-NULL pointer. This prevented you from marshalling messages containing zero-length arrays in some cases. * glib/dbus-gvalue.c (demarshal_collection_array): Another patch from Rob to correct bogus asserts when trying to demarshal an array and get_fixed_array got you 0 elements. Append nothing to the GArray in this case. * test/glib/test-dbus-glib.c: Add a test case for round-tripping an empty array via the glib bindings. Without all of the above patches, this new test fails. glib/dbus-gvalue.c | 7 ++++--- 1 files changed, 4 insertions(+), 3 deletions(-) commit 7b33862bac766c00c12f5cb400af06200ae004c4 Author: Robert McQueen Date: Wed Feb 15 23:45:48 2006 +0000 2006-02-16 Robert McQueen * glib/dbus-gmain.c: Make the previous commit compile. * python/_dbus.py, python/matchrules.py: Patch from Ole Andre Ravnaas to allow you to specify sender_keyword="foo", path_keyword="bar" when adding a signal listener, so that you can bind to signals generically but still do something useful in your callback. * python/dbus_bindings.pyx: Demarshal the byte type as unsigned chars so that they're not cast to chars and made negative. Thanks to Jakub Stachowski for reporting this and testing the fix. glib/dbus-gmain.c | 8 ++++---- 1 files changed, 4 insertions(+), 4 deletions(-) commit 8d98ce884210745d7070e4438167ece2be0e357b Author: John (J5) Palmieri Date: Wed Feb 15 21:42:54 2006 +0000 2006-02-15 John (J5) Palmieri * dbus/dbus-glib.h: * glib/dbus-gmain.h: (dbus_g_connection_open): new method for openning a connection to an arbitrary address in the glib bindings * ChangeLog: checkin last entry which doesn't seem to be commited glib/dbus-gmain.c | 37 +++++++++++++++++++++++++++++++++++++ 1 files changed, 37 insertions(+), 0 deletions(-) commit 6fd3dffe4561b37bc75c13f6296e91b65224ce4d Author: Robert McQueen Date: Mon Feb 13 22:30:11 2006 +0000 2006-02-13 Robert McQueen * glib/dbus-binding-tool-glib.c, glib/dbus-gmain.c, glib/dbus-gsignature.c, glib/dbus-gtype-specialized.c, glib/dbus-gtype-specialized.h, glib/dbus-gvalue-utils.c, glib/dbus-gvalue-utils.h, glib/dbus-gvalue.c: Patch from Rob Taylor to add a big missing piece of the glib bindings jigsaw puzzle. This modifies the existing specialised types to have N type parameters (rather than the current 1 or 2 for arrays and dictionaries respectively). You can then use this to get a glib type to represent any arbitrary D-Bus struct type using dbus_g_type_get_struct. The only implementation of these types is with GValueArrays as before, but it's now possible to store these in arrays, emit them in signals, etc. glib/dbus-binding-tool-glib.c | 26 ++++ glib/dbus-gmain.c | 4 +- glib/dbus-gsignature.c | 25 +++- glib/dbus-gtype-specialized.c | 296 ++++++++++++++++++++++++++++++++++++++--- glib/dbus-gtype-specialized.h | 43 ++++++ glib/dbus-gvalue-utils.c | 184 +++++++++++++++++++++++++ glib/dbus-gvalue-utils.h | 2 +- glib/dbus-gvalue.c | 148 ++++++++++++++++++++- 8 files changed, 695 insertions(+), 33 deletions(-) commit eef27dfbd6dc73baa13c78220f98297881071368 Author: Robert McQueen Date: Fri Jan 27 16:40:53 2006 +0000 2006-01-27 Robert McQueen * glib/dbus-binding-tool-glib.[ch]: Patch based on Ricardo Kekki's patch to use an annotation org.freedesktop.DBus.GLib.ClientCSymbol when generating the client-side methods, instead of overloading CSymbol which broke everything horribly. My apologies. glib/dbus-binding-tool-glib.c | 45 ++++++++++++++++------------------------ glib/dbus-binding-tool-glib.h | 1 + 2 files changed, 19 insertions(+), 27 deletions(-) commit 879e2b697e2a0fd439a38ea4d4422cd8c01fefb5 Author: Robert McQueen Date: Fri Jan 27 15:40:36 2006 +0000 2006-01-27 Robert McQueen * glib/dbus-gtype-specialized.[ch], glib/dbus-gvalue-utils.c: Patch by me and Rob Taylor to add a simple_free function to D-Bus map and collection types, which allows those types which can be freed with a GDestroyNotify (such as GHashTables and GArrays, but not GPtrArrays) to be stored as the values in hashtables. * test/glib/test-dbus-glib.c, test/glib/test-service-glib.{c,xml}: Patch by Rob Taylor to add nested dicts to the glib tests to check the above code works, and appears not to leak when called repeatedly. glib/dbus-gtype-specialized.c | 33 ++++++++++++++++++++++++++- glib/dbus-gtype-specialized.h | 4 ++- glib/dbus-gvalue-utils.c | 50 ++++++++++++++++++++++++++++++++++------ 3 files changed, 77 insertions(+), 10 deletions(-) commit f467138770f3b5b771e772e7f59780a502540cb6 Author: Robert McQueen Date: Fri Jan 27 15:15:16 2006 +0000 2006-01-27 Robert McQueen * glib/dbus-gvalue.c (demarshal_valuearray): Patch from Rob Taylor to free a D-Bus allocated string with dbus_free () instead of g_free (). glib/dbus-gvalue.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit 0c87b127b878d41d8a134fd5dee5d41a2434ef41 Author: Robert McQueen Date: Fri Jan 27 15:06:54 2006 +0000 2006-01-27 Iain Holmes * glib/dbus-gproxy.c (dbus_g_proxy_dispose): Protect the dispose method from being called multiple times. glib/dbus-gproxy.c | 5 +++++ 1 files changed, 5 insertions(+), 0 deletions(-) commit 5ad59f0f48a27d35d58e86c2cf2aa8c7d025248b Author: Robert McQueen Date: Thu Jan 19 02:54:07 2006 +0000 2006-01-19 Robert McQueen * glib/dbus-binding-tool-glib.c: Patch from Rob Taylor to add support for generating bindings to arrays that are represented as GPtrArrays rather than GArrays (ie size-variable things, such as strings, objects, structs, etc). glib/dbus-binding-tool-glib.c | 32 ++++++++++++++++++++++++++------ 1 files changed, 26 insertions(+), 6 deletions(-) commit 0dffd5ab28874cc6453e8907f1f4cb95785748cb Author: Robert McQueen Date: Thu Jan 5 20:22:06 2006 +0000 2006-01-05 Robert McQueen * dbus/dbus-glib.h, glib/dbus-gproxy.c: Patch from Ricardo Kekki to make it possible to inherit from DBusGProxy, by splitting the DBusGProxy struct into a public part and a private part, and moving the setting of the DBusGProxyManager into a connection property, allowing proper GObject construction. glib/dbus-gproxy.c | 327 +++++++++++++++++++++++++++++++--------------------- 1 files changed, 196 insertions(+), 131 deletions(-) commit b356f998530ffe9762b4b0f5fd7f236eceb044db Author: Robert McQueen Date: Thu Jan 5 20:03:38 2006 +0000 2006-01-05 Robert McQueen * glib/dbus-binding-tool-glib.c: Patch from Ricardo Kekki to make dbus-binding-tool heed C symbol name annotations when generating glib client bindings. glib/dbus-binding-tool-glib.c | 42 ++++++++++++++++++++++++++++++++++++---- 1 files changed, 37 insertions(+), 5 deletions(-) commit 8029bd07868baa11810b0b3ee56a8daefc0588da Author: John (J5) Palmieri Date: Wed Nov 30 19:32:25 2005 +0000 * dbus/dbus-auth.c, dbus/dbus-connection.c, dbus/dbus-keyring.c, dbus/dbus-server-debug-pipe.c, glib/dbus-binding-tool-glib.c glib/dbus-glib-tool.c, glib/dbus-gparser.c, glib/dbus-gproxy.c test/test-segfault.c, test/test-utils.c, test/glib/test-dbus-glib.c, tools/dbus-cleanup-sockets.c tools/dbus-launch.c, tools/dbus-tree-view.c, tools/dbus-viewer.c: Various cleanup of dead code and compiler warnings (patch from Kjartan Maraas ) glib/dbus-binding-tool-glib.c | 2 -- glib/dbus-glib-tool.c | 4 ---- glib/dbus-gparser.c | 11 ++--------- glib/dbus-gproxy.c | 2 -- 4 files changed, 2 insertions(+), 17 deletions(-) commit c5753442aaccba39a3e0948aa77e523eb3fe866b Author: John (J5) Palmieri Date: Wed Nov 30 18:48:09 2005 +0000 * glib/dbus-gmain.c (connection_setup_add_watch): plugged a leak (patch from Carlos Garnacho Parro glib/dbus-gmain.c | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) commit 5d3c9bd0cd7e98df0be8351e3c210a38a978f52a Author: Robert McQueen Date: Sun Nov 27 16:55:09 2005 +0000 2005-11-27 Carlos Garcia Campos * glib/dbus-gobject.c: Append a GValue instead of a basic type in method return message for property getters glib/dbus-gobject.c | 41 +++++++++++++++++++++++++++++++---------- glib/dbus-gvalue.c | 8 ++++---- glib/dbus-gvalue.h | 1 + 3 files changed, 36 insertions(+), 14 deletions(-) commit 9f2aae9a744e45c0646b36396e846031ec4ffe7f Author: John (J5) Palmieri Date: Tue Nov 22 20:37:00 2005 +0000 * configure.in: Add test/name-test/Makefile to the generated Makefile list * dbus/dbus-shared.h (#define DBUS_NAME_FLAG_ALLOW_REPLACEMENT): New flag which replaces DBUS_NAME_FLAG_PROHIBIT_REPLACEMENT (#define DBUS_NAME_FLAG_DO_NOT_QUEUE): New flag for specifying not to queue an ower if it can't be the primary owner * bus/bus.h: Add new internal BusOwner struct * bus/driver.c (bus_driver_handle_hello): Send flags (0 for default) to bus_registry_ensure and don't set the prohibit_replacement flag since they are now set per BusOwner and not per name. (bus_driver_handle_list_queued_owners): bus method (ListQueuedOwners) that returns the list of connections in a name's connection queue * bus/services.c (struct BusService): remove prohibit_replacement field (struct BusOwner): new struct for keeping track of queued connections and their associated flags for the queue (struct BusRegistry): add a BusOwner memory pool (bus_registry_new): initialize the BusOwner memory pool (bus_registry_unref): free the BusOwner memory pool (_bus_service_find_owner_link): new internal method for searching the queue for a specific connection (bus_owner_set_flags): new method for adding setting the flags on a bus owner (bus_owner_new): new method that creates a BusOwner object from the pool and sets its flags (bus_owner_ref, bus_owner_unref): ref counting for BusOwner objects (bus_registry_ensure): Add the flags parameter (bus_registry_acquire_service): Switch from using raw connections to using the BusOwner struct Add new state machine for dealing with the new set of flags (bus_registry_set_service_context_table, struct OwnershipCancelData, cancel_ownership, free_ownership_cancel_data, add_cancel_ownership_to_transaction, struct OwnershipRestoreData, restore_ownership, free_ownership_restore_data, add_restore_ownership_to_transaction): Switch to using BusOwner instead of raw connections (bus_service_add_owner): Add flags parameter Switch to using BusOwner instead of raw connections Add state machine for dealing with the new set of flags (bus_service_swap_owner): Swaps the first and second owners in the queue. Used to make sure proper signals are sent when a service looses or gains primary ownership. We never insert an owner at the top of the queue. Instead we insert it in the second position and then swap. (bus_service_remove_owner): Remove the owner from the queue sending out the NameLost and NameOwnerChanged signals if the we were the primary owner (bus_service_get_primary_owners_connection): New method that extracts the connection from the primary owner (bus_service_get_primary_owner): Returns the BusOwner instead of the connection (bus_service_get_allow_replacement): Changed from the old bus_service_get_prohibit_replacement method. Checks the flags of the primary owner and returns if it can be replaced or not (bus_service_set_prohibit_replacement): removed (bus_service_has_owner): returns TRUE if and owner with the specified connection exists in the queue * dbus/dbus-bus.c (dbus_bus_connection_get_unique_name): New helper method that only compiles if tests are enabled. Allows us to get the unique name of a connection so we can check it against the queue when doing regression tests * bus/activation.c (bus_activation_send_pending_auto_activate), bus/dispatch.c (bus_dispatch), bus/driver.c (bus_driver_handle_get_service_owner, bus_driver_handle_get_connection_unix_user, bus_driver_handle_get_connection_unix_process_id, bus_driver_handle_get_connection_selinux_security_context), bus/signals.c (connection_is_primary_owner): use bus_service_get_primary_owners_connection instead of bus_service_get_primary_owner * dbus/dbus-sysdeps.c (_dbus_connect_unix_socket, _dbus_listen_unix_socket): Calculate the length of the socket path and use that instead of using a fixed length which was causing socket names to contain many trailing Nul bytes. * dbus/dbus-glib-lowlevel.h, glib/dbus-gobject.c (dbus_g_method_get_sender): New method for extracting the sender from a DBusGMethodInvocation (dbus_g_method_return_get_reply): changed name to dbus_g_method_get_reply (dbus_g_method_return_send_reply): changed name to dbus_g_method_send reply * doc/dbus-specification.xml: New docs that describe how the new queueing system works and talks about the changes to the how we specify socket names * glib/examples/example-service.c, glib/examples/example-signal-emitter.c, glib/examples/statemachine/statemachine-server.c: Changed the RequestName flags to the new system * test/name-test/ (test-names.c, run-test.sh, Makefile.am): New regression test suite for testing various states of the new queueing system glib/dbus-gobject.c | 28 +++++++++++++++++++-- glib/examples/example-service.c | 2 +- glib/examples/example-signal-emitter.c | 2 +- glib/examples/statemachine/statemachine-server.c | 2 +- 4 files changed, 28 insertions(+), 6 deletions(-) commit 57b6ef4e8648c0c7f9b059690c4a35e73932669f Author: Robert McQueen Date: Tue Nov 15 19:34:32 2005 +0000 2005-11-15 Robert McQueen * dbus/dbus-glib-lowlevel.h, glib/dbus-gobject.c: Patch from Rob Taylor to add two methods, dbus_g_method_return_get_reply and dbus_g_method_return_send_reply, to allow you to get the reply message from a DBusGMethodInvocation, append arbitrary stuff to it, and send it. The GLib bindings can't marshal a return value of something like a(s) if the array is empty - ultimately they should be made to heed the signature of the out arguments as the Python bindings now can, but this is a workable interim solution which might have other applications. glib/dbus-gobject.c | 34 ++++++++++++++++++++++++++++++++++ 1 files changed, 34 insertions(+), 0 deletions(-) commit cf87837198ac181b16965dcc8fb3f65bc2efa8bd Author: Robert McQueen Date: Sat Oct 29 17:02:58 2005 +0000 2005-10-29 Robert McQueen * glib/Makefile.am, glib/examples/Makefile.am, glib/examples/statemachine/Makefile.am: Merge patch from Ubuntu by Daniel Stone to replace explicit calls to libtool with $(LIBTOOL). * test/python/.cvsignore: Add run-with-tmp-session-bus.conf. * tools/dbus-monitor.1, tools/dbus-monitor.c: Merge dbus-monitor patch from Ubuntu by Daniel Silverstone to allow specifying match rules on the command line. glib/Makefile.am | 2 +- glib/examples/Makefile.am | 4 ++-- glib/examples/statemachine/Makefile.am | 4 ++-- 3 files changed, 5 insertions(+), 5 deletions(-) commit 3a8319b792df4ce260f8cf1e0f95fadd76942d75 Author: Ross Burton Date: Thu Oct 27 16:35:43 2005 +0000 Cleanups glib/dbus-gobject.c | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) commit 29f0ea31b256784b4e75cdedcb822f30fe804dd3 Author: Ross Burton Date: Tue Oct 25 15:57:13 2005 +0000 Add const keywords glib/dbus-gmain.c | 2 +- glib/dbus-gobject.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) commit f4b2bdf28c5e589d9161e27bf89e636c8226169f Author: Ross Burton Date: Tue Oct 25 08:54:57 2005 +0000 Add a NoReply annotation glib/dbus-binding-tool-glib.c | 53 ++++++++++++++++++++++++++++------------ glib/dbus-binding-tool-glib.h | 3 +- 2 files changed, 39 insertions(+), 17 deletions(-) commit adc1cd1de84b057cc858b1226522d2fde96871a0 Author: John (J5) Palmieri Date: Tue Oct 18 04:38:04 2005 +0000 * glib/dbus-gvalue-utils.c (hash_free_from_gtype): handle gdouble and G_TYPE_VALUE_ARRAY (DBUS_TYPE_STRUCT) (gvalue_from_hash_value, hash_value_from_gvalue): handle gdouble * glib/dbus-gvalue.c (dbus_gvalue_to_signature): add missing DBUS_STRUCT_BEGIN_CHAR and DBUS_STRUCT_END_CHAR charaters when constructing struct signatures * python/_dbus.py (Bus): handle private connections using the private keyword in the constructor. defaults to private=False (Bus::close): new method to close a connection to the bus * python/dbus_bindings.pyx (Connection::close): renamed method was previously called disconnect (bus_get): now supports getting a private connection * python/proxies.py (ProxyMethod::__call__): check if ignore_reply keyword is set to True. if it is, execute the method without waiting for a reply (ProxyObject::_introspect_execute_queue): new method for executing all the pending methods that were waiting for the introspect to finish. this is called when introspect either succeeds or fails (ProxyObject::_introspect_error_handler): call queued methods glib/dbus-gvalue-utils.c | 17 +++++++++++++++++ glib/dbus-gvalue.c | 4 +++- 2 files changed, 20 insertions(+), 1 deletions(-) commit 8c16af02c159982b451289945835a86ff56805c2 Author: John (J5) Palmieri Date: Wed Oct 5 20:43:46 2005 +0000 * glib/dbus-gvalue.c (marshal_variant): call _dbus_gvalue_marshal instead of marshal basic so we can handle recursive types in a variant * test/glib/test-dbus-glib.c: Add test for marshaling recurive types in variants * test/glib/test-service-glib.c, test-service-glib.xml (my_object_echo_variant [EchoVariant], my_object_process_variant_of_array_of_ints123 [ProcessVariantOfArrayOfInts123]): Add two test methods * python/introspect_parser.py: New module for parsing introspect data. * python/dbus_bindings.pyx: (various places): when throwing errors fix to use errormsg instead of message local variable because Pyrex can get confused with other message variables (initial patch by Robert McQueen ) (MessageIter::parse_signature_block): new method for getting the next block in a signiture. (MessageIter::append_strict): new method for appending values strictly using the passed in signature instead of guessing at the type (MessageItter:: append_dict, append_struct, append_array): use signatures to marshal children if the signature is available * python/exceptions.py (IntrospectionParserException): new exception * python/proxies.py (ProxyMethod::__call__): Marshal args with introspected signatures if available, else we fall back to the old way of doing things. (ProxyObject::_introspect_reply_handler ): parse introspection data * python/service.py (ObjectType::_reflect_on_method): Properly terminate if there are no args in the reflection data * test/python/test-client.py: add tests for talking with the GLib test server. This gives us better coverage for introspection since python to python will always generate arguments as variants. It also allows us to test the robustness of the GLib bindings and interlanguage communications. glib/dbus-gvalue.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit b489f57506320ba3e29088dc612e27112c6a1854 Author: John (J5) Palmieri Date: Mon Sep 26 22:26:38 2005 +0000 * glib/dbus-glib-tool.c: removed extra comma at the end of the DBusBindingOutputMode enum which was causing a warning. #include so using time_t is explicitly defined glib/dbus-glib-tool.c | 3 ++- 1 files changed, 2 insertions(+), 1 deletions(-) commit a32ca0058020e7e23d72d9ad69fe881ba8b98e93 Author: John (J5) Palmieri Date: Tue Sep 6 22:38:54 2005 +0000 * Released 0.50 * Patch from Steve Grubb: - bus/activation.c (bus_activation_service_reload_test): clean up some indentation - dbus/dbus-keyring.c (_dbus_keyring_reload): fix conditional - dbus/dbus-message-factory.c (generate_special): fix a couple of buffer overflows in the test suite. This is non critical because it can not be exploited and this code is only run when doing a make check. * Patch from Yaakov Selkowitz: Build fixes for Cygwin - configure.in: Don't check and link against kdecore, only qt headers - dbus/Makefile.am: Add -no-undefined to libdbus_1_la_LDFLAGS - gcj/org/freedesktop/dbus/Makefile.am: add libdbus_gcj_1_la_LDFLAGS = -no-undefined - glib/Makefile.am: Add -no-undefined to libdbus_glib_1_la_LDFLAGS and $(DBUS_GLIB_LIBS) to dbus_binding_tool_LDADD - qt/Makefile.am: Add -no-undefined to libdbus_qt_1_la_LDFLAGS - tools/Makefile.am: Add platform extentions to binaries (i.e. .exe on windows) * configure.in: - Make it so if no suitable version of python is found we only disable building python instead of exiting the configure script - Require version 2.4 of glib for glib bindings - Up version to 0.50 * python/__init__.py: Sync version with libdbus to (0,50,0) glib/Makefile.am | 6 +++--- 1 files changed, 3 insertions(+), 3 deletions(-) commit 23fb630c1e907187c8d7aa5539b30a34e7cc9632 Author: Colin Walters Date: Fri Aug 26 02:00:37 2005 +0000 2005-08-25 Colin Walters * glib/dbus-gproxy.c (dbus_g_proxy_call): Doc update, thanks to Ryan Lortie for the suggestion. glib/dbus-gproxy.c | 3 ++- 1 files changed, 2 insertions(+), 1 deletions(-) commit 8e13d06500c5b4df219891fc4b5b8242cb9f5cae Author: Ross Burton Date: Wed Aug 17 17:30:45 2005 +0000 Unref message and protect against NULL glib/dbus-gproxy.c | 5 ++++- 1 files changed, 4 insertions(+), 1 deletions(-) commit 03dc49be2e41245f107e71194ebef428d4d4ccf7 Author: Colin Walters Date: Tue Aug 16 21:26:12 2005 +0000 2005-08-16 Colin Walters * glib/dbus-gobject.c (dbus_set_g_error): Don't lose if the DBusError message is NULL. glib/dbus-gobject.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit 20ab99c264aa730de304f637a7e4eacec3e1686d Author: Colin Walters Date: Thu Aug 4 15:49:30 2005 +0000 2005-08-04 Colin Walters * glib/dbus-gvalue-utils.h (_dbus_g_type_specialized_builtins_init) (dbus_g_type_is_fixed, dbus_g_type_fixed_get_size) (dbus_gvalue_set_from_pointer, dbus_g_hash_table_value_foreach) (dbus_g_hash_table_insert_values, dbus_g_hash_table_insert_steal_values) (dbus_gtype_is_valid_hash_key, dbus_gtype_is_valid_hash_value) (dbus_g_hash_func_from_gtype, dbus_g_hash_free_from_gtype) (dbus_g_hash_equal_from_gtype, dbus_gvalue_stor, dbus_gvalue_take): * glib/dbus-gvalue.h (dbus_g_value_types_init) (dbus_gvalue_demarshal, dbus_gvalue_demarshal_variant) (dbus_gvalue_demarshal_message, dbus_gvalue_marshal): Prefix name with _ to ensure they're not exported. All callers updated. * glib/dbus-gvalue.c (typecode_to_gtype) (dbus_typecode_maps_to_basic, basic_typecode_to_gtype) (signature_iter_to_g_type_dict) (signature_iter_to_g_type_array) (dbus_gtype_from_signature_iter, dbus_gtype_from_signature) (dbus_gtypes_from_arg_signature): Move to dbus-gsignature.c. * glib/dbus-binding-tool-glib.c (dbus_binding_tool_output_glib_server): Call dbus_g_type_specialized_builtins_init instead of dbus_g_value_types_init. (dbus_binding_tool_output_glib_client): Ditto. * glib/Makefile.am (DBUS_GLIB_INTERNALS): Add dbus-gsignature.c and dbus-gsignature.h * test/glib/test-service-glib.c (my_object_rec_arrays): Delete unused variable. glib/Makefile.am | 5 +- glib/dbus-binding-tool-glib.c | 36 ++++--- glib/dbus-gmain.c | 23 ++-- glib/dbus-gobject.c | 35 +++--- glib/dbus-gproxy.c | 13 ++- glib/dbus-gsignature.c | 189 ++++++++++++++++++++++++++++++++ glib/dbus-gsignature.h | 19 ++++ glib/dbus-gvalue-utils.c | 46 ++++---- glib/dbus-gvalue-utils.h | 28 +++--- glib/dbus-gvalue.c | 237 +++++++---------------------------------- glib/dbus-gvalue.h | 21 +--- 11 files changed, 350 insertions(+), 302 deletions(-) commit f19bb3b8b599f006e51a1ff81447ac6470c249fc Author: Colin Walters Date: Wed Aug 3 23:21:49 2005 +0000 2005-08-03 Colin Walters * glib/dbus-gobject.c: Add tests on hardcoded object info; this should catch any incompatible changes accidentally made. glib/dbus-gobject.c | 150 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 150 insertions(+), 0 deletions(-) commit f902eead6b209181f7a26b4cb1a967661ac86117 Author: Colin Walters Date: Mon Aug 1 16:12:53 2005 +0000 2005-08-01 Colin Walters Patch from Joe Markus Clarke: * glib/dbus-gidl.c (property_info_unref, arg_info_unref): Fix use-after-free. glib/dbus-gidl.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) commit db1be2d67b4239496940080f44c7e05eed42a610 Author: Colin Walters Date: Mon Aug 1 16:07:19 2005 +0000 2005-08-01 Colin Walters Patch from Joe Markus Clarke: * glib/dbus-gvalue.c (dbus_g_value_types_init): * glib/dbus-gvalue-utils.c (dbus_g_type_specialized_builtins_init) * glib/dbus-gobject.c (write_interface): Don't use C99 style initializers (bug #3933). glib/dbus-gobject.c | 2 +- glib/dbus-gvalue-utils.c | 7 +++---- glib/dbus-gvalue.c | 8 ++++---- 3 files changed, 8 insertions(+), 9 deletions(-) commit 04045b587a62e4b5cafbad0b81e18761c28a41e5 Author: Havoc Pennington Date: Sun Jul 31 02:09:15 2005 +0000 2005-07-30 Havoc Pennington * fix a bunch of Doxygen warnings and mistakes glib/dbus-glib.c | 4 ++-- glib/dbus-gobject.c | 2 +- glib/dbus-gproxy.c | 4 ++-- 3 files changed, 5 insertions(+), 5 deletions(-) commit f91e8613d913ee943afa5bbb6cdafb2ce062c6ef Author: Ross Burton Date: Mon Jul 25 19:16:22 2005 +0000 Remove matchers when all proxies are removed glib/dbus-gproxy.c | 6 ++++++ 1 files changed, 6 insertions(+), 0 deletions(-) commit 2c755e157a9b41451efd5fd88e74c37501e21127 Author: Colin Walters Date: Sun Jul 24 18:04:23 2005 +0000 2005-07-24 Colin Walters * glib/dbus-gvalue.c (signature_iter_to_g_type_array): Don't require typedata; recursive arrays won't have it. * test/glib/test-dbus-glib.c: * test/glib/test-service-glib.c: * test/glib/test-service-glib.xml: Add recursive arrays tests. glib/dbus-gvalue.c | 5 ----- 1 files changed, 0 insertions(+), 5 deletions(-) commit 6bf40ec5a63f7703070f951130d8e78cb044ec66 Author: John (J5) Palmieri Date: Fri Jul 15 20:28:05 2005 +0000 * glib/Makefile.am: Add make-dbus-glib-error-switch.sh to EXTRA_DIST so distcheck doesn't fail * glib/examples/Makefile.am: Add example-service.xml and example-signal-emitter.xml to EXTRA_DIST so distcheck doesn't fail * glib/examples/statemachine/Makefile.am: Add statemachine.xml and statemachine-server.xml to EXTRA_DIST so distcheck doesn't fail * python/Makefile.am: Preprend $(srcdir)/ to source files so the compiler looks in the right places during distcheck glib/Makefile.am | 2 +- glib/examples/Makefile.am | 2 ++ glib/examples/statemachine/Makefile.am | 2 +- 3 files changed, 4 insertions(+), 2 deletions(-) commit a447f257bd0b557b661be74f2d63ba0d31366a46 Author: John (J5) Palmieri Date: Fri Jul 15 19:15:05 2005 +0000 * glib/example/Makefile.am: Fix a typo which cause make distcheck to fail glib/examples/Makefile.am | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit ce277d89860aaf05064d11eb24878cbf41326ff2 Author: Ross Burton Date: Fri Jul 15 13:25:48 2005 +0000 Don't leak messages when calling methods glib/dbus-gproxy.c | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) commit 877add82e329e1de4ab7b4d99084362e250fa34c Author: Colin Walters Date: Tue Jul 12 17:57:04 2005 +0000 2005-07-12 Colin Walters * glib/examples/statemachine/Makefile.am (statemachine-server-glue.h) (statemachine-glue.h): * glib/examples/Makefile.am (example-service-glue.h) (example-signal-emitter-glue.h): * glib/Makefile.am (dbus-glib-error-switch.h): Add libtool --mode=execute so we use the built library instead of any installed one. glib/Makefile.am | 2 +- glib/examples/Makefile.am | 4 ++-- glib/examples/statemachine/Makefile.am | 4 ++-- 3 files changed, 5 insertions(+), 5 deletions(-) commit 31ca9e74c599c17f802698ad8184f9ae654983c5 Author: Colin Walters Date: Mon Jul 11 16:12:49 2005 +0000 2005-07-11 Colin Walters * glib/dbus-gvalue.c (struct _DBusGValue): Delete. (dbus_g_value_types_init): Remove assertion. (dbus_g_value_get_g_type, dbus_g_value_open) (dbus_g_value_iterator_get_values, dbus_g_value_get_signature) (dbus_g_value_copy, dbus_g_value_free): Delete unimplemented functions related to DBusGValue. Now we marshal/demarshal structures as GValueArray. (dbus_gtype_from_signature_iter): Return G_TYPE_VALUE_ARRAY for structures. (signature_iter_to_g_type_array): Don't call signature_iter_to_g_type_struct. (signature_iter_to_g_type_struct): Delete. (dbus_gvalue_to_signature): Delete. (dbus_gvalue_to_signature): New function with same name as other one; we can convert structures to signatures. (demarshal_valuearray): New function. (get_type_demarshaller): Use it. (demarshal_recurse): Delete. (marshal_proxy): New function. (marshal_map): Warn if we can't determine signature from type. (marshal_collection_ptrarray): Ditto. (marshal_collection_array): Ditto. (get_type_marshaller): Use marshal_valuearray. (marshal_recurse): Delete. (_dbus_gvalue_test): Add some tests. * dbus/dbus-glib.h (struct _DBusGValueIterator): (dbus_g_value_get_g_type, DBUS_TYPE_G_VALUE) (dbus_g_value_open, dbus_g_value_iterator_get_value) (dbus_g_value_iterator_get_values, dbus_g_value_iterator_recurse) (dbus_g_value_free): Remove prototypes. * glib/dbus-binding-tool-glib.c (dbus_g_type_get_lookup_function): Handle G_TYPE_VALUE_ARRAY. * glib/examples/example-service.c: * glib/examples/example-client.c: Implement GetTuple. * test/glib/test-dbus-glib.c: * test/glib/test-service-glib.c: * test/glib/test-service-glib.xml: Add structure tests. glib/dbus-binding-tool-glib.c | 1 + glib/dbus-gvalue.c | 358 ++++++++++++++++++--------------------- glib/examples/example-client.c | 32 +++- glib/examples/example-service.c | 21 ++- 4 files changed, 209 insertions(+), 203 deletions(-) commit 5c39fa43d8eb87284abe7d009349523ad5398db0 Author: Colin Walters Date: Sun Jul 10 22:54:18 2005 +0000 2005-07-10 Colin Walters * doc/TODO: Knock off some GLib items with this patch. * glib/dbus-gvalue-utils.c (_dbus_gtype_can_signal_error) (_dbus_gvalue_signals_error): New functions. * glib/dbus-gvalue-utils.h: Prototype them. * glib/dbus-gobject.c (arg_iterate): Update to handle return vals and change to not output const/retval flags for input args. All callers updated. (invoke_object_method): Refactor to handle return values. Add some more comments in various places. Remove debug g_print. * glib/dbus-binding-tool-glib.h (DBUS_GLIB_ANNOTATION_RETURNVAL): New. * glib/dbus-binding-tool-glib.c (dbus_g_type_get_marshal_name): Handle G_TYPE_NONE. (compute_gsignature): New function; refactored from code from compute_marshaller and compute_marshaller_name. Enhance to handle return values and async ops more cleanly. Update for async ops returning NONE instead of BOOLEAN. (compute_marshaller, compute_marshaller_name): Call compute_gsignature and output appropriate string. (generate_glue): Handle return value annotation. Also don't dump constness flag for input arguments. * glib/Makefile.am (DBUS_GLIB_INTERNALS): New variable; contains files shared between installed library and utilities. (libdbus_glib_1_la_SOURCES): Move some stuf into DBUS_GLIB_INTERNALS. (libdbus_gtool_la_SOURCES): Suck in DBUS_GLIB_INTERNALS so the binding tool can access gtype utility functions. * test/glib/test-service-glib.c: * test/glib/test-service-glib.xml: * test/glib/test-dbus-glib.c: Add some tests for return values. glib/Makefile.am | 19 +- glib/dbus-binding-tool-glib.c | 324 ++++++++++++++++++++++----------- glib/dbus-binding-tool-glib.h | 1 + glib/dbus-gobject.c | 242 +++++++++++++++++++------ glib/dbus-gvalue-utils.c | 54 ++++++ glib/dbus-gvalue-utils.h | 4 + glib/examples/statemachine/.cvsignore | 1 + 7 files changed, 479 insertions(+), 166 deletions(-) commit 00de44640de45aa6068ca9d1b42deb801b430320 Author: Colin Walters Date: Sat Jul 9 18:54:45 2005 +0000 2005-07-09 Colin Walters * glib/dbus-gparser.c (parse_annotation): Add annotations to argument if available, not method. * glib/dbus-gobject.c (arg_iterate): More verbose warnings. (invoke_object_method): First, remove some redundant GValues (object_value, error_value) in favor of working on array directly. Second, rework constness to be less buggy. Now we iterate directly over the argument metadata instead of parallel iterating over output signature and metadata. * glib/dbus-glib-tool.h: Add INVALID_ANNOTATION error. * glib/dbus-binding-tool-glib.c (generate_glue): Barf on const annotation on input args. glib/dbus-binding-tool-glib.c | 17 +++++++++++- glib/dbus-glib-tool.h | 3 +- glib/dbus-gobject.c | 54 ++++++++++++++++++++++++---------------- glib/dbus-gparser.c | 7 ++--- 4 files changed, 52 insertions(+), 29 deletions(-) commit 91dc6d18c4ccc69fef3c12e6f628f7458c1d4511 Author: Colin Walters Date: Sat Jul 9 17:52:51 2005 +0000 2005-07-09 Colin Walters * glib/dbus-binding-tool-glib.h (DBUS_GLIB_ANNOTATION_CONST): Define. * glib/dbus-binding-tool-glib.c (generate_glue): Handle Const annotation. * glib/dbus-gobject.c (arg_iterate): Update to parse constval too. (method_dir_signature_from_object_info): Handle arg_iterate change. (write_interface): Ditto. (lookup_object_info): Don't barf if format_version is > 0. (invoke_object_method): Handle arg constness. * glib/dbus-gidl.c (struct ArgInfo): Add annotations. (arg_info_new): Create. (arg_info_unref): Destroy. (arg_info_get_annotations, arg_info_get_annotation) (arg_info_add_annotation): New functions. * glib/dbus-gidl.h: Prototype them. * glib/dbus-gparser.c (parse_annotation): Allow annotations in args, disallow them in properties. (parse_annotation): Handle arg annotations. * test/glib/test-service-glib.xml: * test/glib/test-service-glib.c: Update to make some methods const. glib/dbus-binding-tool-glib.c | 6 +++++ glib/dbus-binding-tool-glib.h | 1 + glib/dbus-gidl.c | 30 +++++++++++++++++++++++++ glib/dbus-gidl.h | 7 ++++++ glib/dbus-gobject.c | 48 +++++++++++++++++++++++++++++++++++------ glib/dbus-gparser.c | 5 +++- 6 files changed, 89 insertions(+), 8 deletions(-) commit 52438e8f3f67fa96ffd9607bad34968875d90226 Author: Colin Walters Date: Sat Jul 9 01:46:51 2005 +0000 2005-07-08 Colin Walters * test/glib/test-service-glib.xml: * test/glib/test-service-glib.c: * test/glib/test-dbus-glib.c: Test a{sv}. * glib/examples/statemachine/statemachine.c: * glib/examples/statemachine/statemachine-server.c: * glib/examples/statemachine/statemachine-client.c: Fix some bugs, add progress bar, etc. * glib/dbus-gvalue.c (register_array, register_dict): Delete; not needed anymore due to generic array/map marshalling. (dbus_g_value_types_init): Don't register basic arrays or the string/string hash. (dbus_gtype_from_signature_iter): Don't try to recurse into variants. (dbus_gtype_to_signature): Check collection/map before type metadata. (demarshal_garray_basic): Renamed to demarshal_collection_array. (demarshal_ghashtable): Renamed to demarshal_map; fix to use new generic map creation/append functions instead of hash table specifically. (get_type_demarshaller): Handle maps. (demarshal_collection): Dispatch on collection type to either demarshal_collection_ptrarray or demarshal_collection_array. (get_type_marshaller): Handle maps. (marshal_collection): Dispatch collection type to either marshal_collection_ptrarray or marshal_collection_array. (_dbus_gvalue_test): New test. * glib/dbus-gvalue-utils.c (unset_and_free_g_value): New function. (hash_free_from_gtype): Use it to free GValues. (hashtable_append): New function. (ptrarray_append): Fix prototype. (slist_append): Ditto. (_dbus_gvalue_utils_test): Extend tests. * glib/dbus-gtype-specialized.c (dbus_g_type_specialized_init_append): Renamed from dbus_g_type_specialized_collection_init_append. Remove const from value, since we steal it. (dbus_g_type_specialized_map_append): New function. * glib/dbus-gtype-specialized.h: Update prototypes. Add DBusGTypeSpecializedMapAppendFunc. * glib/dbus-gtest.c (dbus_glib_internal_do_not_use_run_tests): Run _dbus_gvalue_test. * glib/dbus-gtest.h: Prototype it. glib/dbus-gtest.c | 4 + glib/dbus-gtest.h | 1 + glib/dbus-gtype-specialized.c | 13 +- glib/dbus-gtype-specialized.h | 15 +- glib/dbus-gvalue-utils.c | 116 ++++++- glib/dbus-gvalue.c | 402 +++++++++++----------- glib/examples/statemachine/statemachine-client.c | 192 +++++++++-- glib/examples/statemachine/statemachine-server.c | 27 ++ glib/examples/statemachine/statemachine.c | 44 ++-- 9 files changed, 555 insertions(+), 259 deletions(-) commit 6758d07f4dd3bee533488381c8cf236d9d99a5f0 Author: Ross Burton Date: Fri Jul 8 17:02:42 2005 +0000 Make async bindings work again glib/dbus-binding-tool-glib.c | 31 +++++++++++++------------------ 1 files changed, 13 insertions(+), 18 deletions(-) commit 8068477b92f2ee5ca19623e033e335d4b16d8de5 Author: Colin Walters Date: Fri Jul 8 16:25:28 2005 +0000 2005-07-08 Colin Walters * tools/Makefile.am: Kill of print-introspect in favor of using dbus-send --print-reply=literal. * tools/print-introspect.c: Deleted. * test/glib/test-service-glib.xml: * test/glib/test-service-glib.c (my_object_get_objs): New test for "ao". * test/glib/test-dbus-glib.c (echo_received_cb): Free echo data. (main): Test GetObjs. * glib/examples/statemachine/Makefile.am: * glib/examples/statemachine/sm-marshal.list: * glib/examples/statemachine/statemachine-client.c: * glib/examples/statemachine/statemachine-server.c: * glib/examples/statemachine/statemachine-server.xml: * glib/examples/statemachine/statemachine.c: * glib/examples/statemachine/statemachine.h: * glib/examples/statemachine/statemachine.xml: New example. * glib/examples/example-service.c (main): Move invocation of dbus_g_object_type_install_info earlier, to emphasize it should only be done once. * glib/examples/example-signal-emitter.c (main): Ditto. * glib/examples/Makefile.am (SUBDIRS): Include statemachine. * glib/dbus-gvalue.h (dbus_gtype_to_signature) (dbus_gvalue_marshal): Update prototypes. * glib/dbus-gvalue.c: Update all marshalling functions to take const GValue instead of GValue. (signature_iter_to_g_type_array): Return a GPtrArray for nonfixed types. (dbus_gvalue_to_signature): Update for dbus_gtype_to_signature change. (dbus_gtype_to_signature): Handle generic collecitons and maps. Return a newly-allocated string. (demarshal_proxy, demarshal_object_path, demarshal_object) (demarshal_strv, demarshal_ghashtable): Set error, don't assert if we get the wrong types from message. (get_type_demarshaller): New function, extracted from dbus_gvalue_demarshal. (demarshal_collection): New function, demarshals generic collection. (dbus_gvalue_demarshal): Just invoke result of get_type_demarshaller. Throw error if we don't have one. (marshal_garray_basic): Abort on OOM. (get_type_marshaller): New function, extracted from dbus_gvalue_marshal. (collection_marshal_iterator, marshal_collection): New functions; implements generic marshalling for an iteratable specialized collection. (dbus_gvalue_marshal): Just invoke result of get_type_marshaller. * glib/dbus-gvalue-utils.c (gvalue_from_ptrarray_value): Handle G_TYPE_STRING. (ptrarray_value_from_gvalue): Ditto. (ptrarray_append, ptrarray_free): New functions. (slist_constructor, slist_iterator, slist_copy_elt, slist_copy) (slist_append, slist_end_append, slist_free): New functions. (dbus_g_type_specialized_builtins_init): Add append fuctions for GPtrArray and GSList. Register GSList. (test_specialized_hash, _dbus_gvalue_utils_test): New functions. * glib/dbus-gtype-specialized.h (DBusGTypeSpecializedAppendContext): New. (dbus_g_type_specialized_collection_init_append) (dbus_g_type_specialized_collection_append) (dbus_g_type_specialized_collection_end_append): Prototype. (DBusGTypeSpecializedCollectionVtable): Add append_func and end_append_func. * glib/dbus-gtype-specialized.c (dbus_g_type_specialized_collection_init_append) (dbus_g_type_specialized_collection_append) (dbus_g_type_specialized_collection_end_append): New functions. (dbus_g_type_map_value_iterate): Take const GValue. (dbus_g_type_collection_value_iterate): Ditto. * glib/dbus-gtest.c (dbus_glib_internal_do_not_use_run_tests): Run _dbus_gvalue_utils_test. * glib/dbus-gtest.h: Prototype it. * glib/dbus-gproxy.c (dbus_g_proxy_manager_filter): Avoid using uninitialized owner_list. (dbus_g_proxy_begin_call_internal): Move return_if_fail to public API. (dbus_g_proxy_end_call_internal): Update to use error set from dbus_gvalue_demarshal instead of setting it here. (dbus_g_proxy_begin_call): Move return_if_fail here. * glib/dbus-gobject.c (write_interface): Update for dbus_gtype_to_signature returning new string. * configure.in: Add glib/examples/statemachine. glib/dbus-gobject.c | 6 +- glib/dbus-gproxy.c | 31 +- glib/dbus-gtest.c | 7 + glib/dbus-gtest.h | 1 + glib/dbus-gtype-specialized.c | 44 ++- glib/dbus-gtype-specialized.h | 32 +- glib/dbus-gvalue-utils.c | 261 +++++++++- glib/dbus-gvalue-utils.h | 1 - glib/dbus-gvalue.c | 388 ++++++++++++-- glib/dbus-gvalue.h | 4 +- glib/examples/Makefile.am | 2 + glib/examples/example-service.c | 4 +- glib/examples/example-signal-emitter.c | 4 +- glib/examples/statemachine/.cvsignore | 15 + glib/examples/statemachine/Makefile.am | 35 ++ glib/examples/statemachine/sm-marshal.list | 1 + glib/examples/statemachine/statemachine-client.c | 540 ++++++++++++++++++++ glib/examples/statemachine/statemachine-server.c | 202 ++++++++ glib/examples/statemachine/statemachine-server.h | 37 ++ glib/examples/statemachine/statemachine-server.xml | 14 + glib/examples/statemachine/statemachine.c | 351 +++++++++++++ glib/examples/statemachine/statemachine.h | 77 +++ glib/examples/statemachine/statemachine.xml | 33 ++ 23 files changed, 1983 insertions(+), 107 deletions(-) commit 8b39e9d32cb505d4f9550ca24627020e5edd9681 Author: Colin Walters Date: Wed Jul 6 21:27:45 2005 +0000 2005-07-06 Colin Walters * dbus/dbus-glib.h (DBusGPendingCall, DBusGPendingCallNotify) (DBUS_TYPE_G_PENDING_CALL, dbus_g_pending_call_get_g_type) (dbus_g_pending_call_ref, dbus_g_pending_call_unref): Delete. (dbus_g_pending_call_set_notify, dbus_g_pending_call_cancel): Delete in favor of dbus_g_proxy_begin_call and dbus_g_proxy_cancel_call. (DBusGProxyCall, DBusGProxyCallNotify): New. (dbus_g_proxy_begin_call): Change prototype to take callback, user data, and destroy function. This replaces dbus_g_pending_call_set_notify. (dbus_g_proxy_cancel_call): Prototype. (DBusGAsyncData): Delete, shouldn't be needed anymore. * glib/dbus-gproxy.c (struct _DBusGProxy): Add call_id_counter and pending_calls map. (struct _DBusGProxyManager): Add bus_proxy member, which is an internal proxy for calls to the bus. Remove pending_nameowner_calls, now the internal proxy keeps track. (dbus_g_proxy_manager_unref): Unref bus proxy, remove reference to pending_nameowner_calls. (got_name_owner_cb): Update prototype, and use dbus_g_proxy_end_call. (got_name_owner_cb): Remove reference to pending_nameowner_calls. (dbus_g_proxy_manager_register): Delete directly libdbus code in favor of using internal proxy. (dbus_g_proxy_manager_unregister): Update to use dbus_g_proxy_cancel_call for any pending GetNameOwner call. (dbus_g_proxy_init): Initialize pending calls map. (dbus_g_proxy_constructor): New. (dbus_g_proxy_class_init): Add get/set property functions, constructor, and add NAME, PATH, and INTERFACE properties. (cancel_pending_call): New function. (dbus_g_proxy_dispose): Iterate over any outstanding calls and cancel them. (dbus_g_proxy_set_property, dbus_g_proxy_get_property): New. (GPendingNotifyClosure): New structure. (d_pending_call_notify, d_pending_call_free): Moved here from dbus-glib.c. (DBUS_G_VALUE_ARRAY_COLLECT_ALL): Moved around to satisfy function ordering. (manager_begin_bus_call): New internal function for talking to internal bus proxy. (dbus_g_proxy_new): Construct object using GObjet properties. (dbus_g_proxy_begin_call_internal): Update to take user data, etc. Create closure of same, and insert call into map of pending calls. (dbus_g_proxy_end_call_internal): Take call id instead of pending call. Look up pending call in current set. Remove it when we've completed. (dbus_g_pending_call_end, dbus_g_proxy_end_call_internal): Delete. (dbus_g_proxy_begin_call): Change API to take callback, user data, and destroy function directly. (dbus_g_proxy_end_call): Update to take DBusGProxyCall. (dbus_g_proxy_call): Invoke with NULL callback. (dbus_g_proxy_cancel_call): New function, replaces dbus_g_pending_call_cancel. * glib/dbus-gparser.c (validate_signature): Fix call to dbus_set_g_error. * glib/dbus-gobject.c (dbus_g_object_type_dbus_metadata_quark): New quark for attaching metadata to GType. (info_hash): Delete. (lookup_object_info): Look up using quark. (dbus_g_object_type_install_info): Check that a type is classed, not that it's an object. Also just install type data using quark instead of using global hash. * glib/dbus-glib.c (dbus_g_pending_call_ref) (dbus_g_pending_call_unref, dbus_pending_call_get_g_type) (GPendingNotifyClosure): Delete. (d_pending_call_notify, d_pending_call_free): Move to dbus-gproxy.c. (dbus_g_pending_call_set_notify, dbus_g_pending_call_cancel): Delete. * glib/dbus-binding-tool-glib.c (generate_client_glue): Disable async client method generation until we can fix it... * tools/dbus-viewer.c (load_child_nodes): Use dbus_g_proxy_call. (load_from_service_thread_func): Ditto. * tools/dbus-names-model.c (struct NamesModel): Hold DBusGProxyCall. (have_names_notify): Update prototype, use dbus_g_proxy_cancel_call. (names_model_reload): Update for new dbus_g_proxy_begin_call API. * tools/dbus-monitor.c (filter_func): Update for print_message API change. * test/glib/test-dbus-glib.c: Add more tests for async invocations. Update many begin_call/end_call pairs to just use dbus_g_proxy_call. * tools/dbus-send.c (main): Add --print-reply=literal mode. This allows us to dump print-introspect.c. * tools/dbus-print-message.h (print_message): Add literal argument to print_message which is intended to allow printing arguments without metadata like "string=". * tools/dbus-print-message.c (print_iter): Add literal argument. (print_message): Allow printing string messages literally. glib/dbus-binding-tool-glib.c | 2 + glib/dbus-glib.c | 140 ----------- glib/dbus-gobject.c | 44 ++--- glib/dbus-gparser.c | 2 +- glib/dbus-gproxy.c | 555 +++++++++++++++++++++++++++-------------- 5 files changed, 390 insertions(+), 353 deletions(-) commit 462a36e4898da053ba749857511f2d634dbea665 Author: Colin Walters Date: Tue Jul 5 16:39:56 2005 +0000 2005-07-05 Colin Walters * glib/dbus-gproxy.c (marshal_dbus_message_to_g_marshaller): Remove value refcount leak, original patch from Jorn Baayen . Also remove useless extra value in favor of prepending to value array directly. glib/dbus-gproxy.c | 7 +++---- 1 files changed, 3 insertions(+), 4 deletions(-) commit d80b7960d7d189d7c33e6d230fdbbf8b69546f60 Author: Colin Walters Date: Sat Jul 2 06:05:23 2005 +0000 2005-07-02 Colin Walters * glib/dbus-gmain.c (_dbus_gmain_test): Fix test. glib/dbus-gmain.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) commit c7f14e3c337601053b08dc07a186be81063fc005 Author: Colin Walters Date: Fri Jul 1 15:44:12 2005 +0000 2005-07-01 Colin Walters Patch from Jonathan Matthew * glib/dbus-gvalue.c (basic_typecode_to_gtype): Fix return type. (dbus_g_value_types_init): Marshal G_TYPE_CHAR as DBUS_TYPE_BYTE, G_TYPE_LONG as DBUS_TYPE_INT32, G_TYPE_ULONG as DBUS_TYPE_UINT32, and G_TYPE_FLOAT as DBUS_TYPE_DOUBLE. glib/dbus-gvalue.c | 33 +++++++++++++++++++++++++++++++-- 1 files changed, 31 insertions(+), 2 deletions(-) commit 5c82c5ce0eba4ec3bbb0454f3987f56de968bf95 Author: Colin Walters Date: Thu Jun 30 18:22:09 2005 +0000 2005-06-30 Colin Walters * test/glib/test-dbus-glib.c: * test/glib/test-service-glib.c: * test/glib/test-service-glib.xml: Update tests for new error setting bits, also add async tests (patch from Ross Burton). * test/glib/Makefile.am (test_service_glib_LDADD): Add DBUS_GLIB_THREADS_LIBS. * glib/dbus-gproxy.c (get_name_owner) (dbus_g_pending_call_end_valist): Ditto. * glib/dbus-gobject.c (error_metadata): New mapping from GError domain (GQuark) to DBusGErrorInfo. (gerror_domaincode_to_dbus_error_name): Attempt to look up error quark in error_metadata. Take message interface as default error message interface. (gerror_to_dbus_error_message): Pass message interface. (dbus_set_g_error): Resurrected. (dbus_g_error_info_free): New function. (dbus_g_object_type_install_info): Use g_type_class_ref instead of _peek to actually create the object class if it hasn't been created yet. (dbus_g_error_domain_register): New function. * glib/dbus-gmain.c (dbus_g_bus_get): Switch to dbus_set_g_error. * glib/dbus-gparser.c (validate_signature): Ditto. * dbus/dbus-glib.h (dbus_g_error_set): Delete. (dbus_g_error_domain_register): Prototype. * glib/dbus-glib.c (dbus_g_error_set): Delete. Update tests. glib/dbus-glib.c | 45 +----------------- glib/dbus-gmain.c | 3 +- glib/dbus-gobject.c | 127 ++++++++++++++++++++++++++++++++++++++++++++++++++- glib/dbus-gparser.c | 3 +- glib/dbus-gproxy.c | 6 +- 5 files changed, 134 insertions(+), 50 deletions(-) commit f879e3e832d76a7b3b02cc7d25a3e5b9ef195f42 Author: Colin Walters Date: Wed Jun 29 23:52:35 2005 +0000 2005-06-29 Colin Walters * dbus/dbus-glib.h: Delete DBUS_TYPE_G_PROXY_ARRAY. Add DBUS_TYPE_G_OBJECT_PATH. * glib/dbus-gvalue.c (dbus_g_value_types_init): Remove marshallers for G_TYPE_OBJECT and DBUS_TYPE_G_PROXY_ARRAY (the latter should be handled more generically). Add DBUS_TYPE_G_OBJECT_PATH. (dbus_g_object_path_get_g_type): New function. (dbus_gtype_from_signature_iter): Map DBUS_TYPE_OBJECT_PATH to DBUS_TYPE_G_OBJECT_PATH by default. (demarshal_proxy): Remove unused name variable. (demarshal_object_path, marshal_object_path): New functions. (demarshal_proxy_array, marshal_proxy_array): Delete. * glib/dbus-binding-tool-glib.c (dbus_g_type_get_c_name): Map DBUS_TYPE_G_OBJECT_PATH to char *. (dbus_g_type_get_lookup_function): Map builtin DBUS_TYPE_G_OBJECT_PATH. * test/glib/test-dbus-glib.c * test/glib/test-service-glib.c (my_object_objpath): Adapt tests to new object path marshalling. glib/dbus-binding-tool-glib.c | 5 +- glib/dbus-gvalue.c | 164 ++++++++++++++++------------------------- 2 files changed, 68 insertions(+), 101 deletions(-) commit 1f87d5d3363d1e23208c993eabb3cb1f0341b4d9 Author: Colin Walters Date: Wed Jun 29 17:02:33 2005 +0000 2005-06-29 Colin Walters Patch from Ross Burton * glib/dbus-gobject.c (invoke_object_method): Unset object value in all cases, not only in async case. glib/dbus-gobject.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) commit 49fce903db4124277de6aba92f7c03f24d84e598 Author: Colin Walters Date: Wed Jun 29 16:58:59 2005 +0000 2005-06-29 Colin Walters * glib/dbus-gproxy.c (struct _DBusGProxy): Add new member name_call for keeping track of any outgoing GetNameOwner call. Also add for_owner and associated. (struct _DBusGProxyManager): Add owner_names, which is hash table that maps a base name to a list of names it owns (that we're interested in). Add pending_nameowner_calls which is a list of all outstanding GetNameOwner; avoids us having to iterate over every proxy. Add unassociated_proxies which keeps track of name proxies with no associated name owner. (dbus_g_proxy_manager_unref): Destroy owner_names. (struct DBusGProxyNameOwnerInfo): New struct for keeping track of name refcounts. (find_name_in_info, name_owner_foreach) (dbus_g_proxy_manager_lookup_name_owner, insert_nameinfo) (dbus_g_proxy_manager_monitor_name_owner) (dbus_g_proxy_manager_unmonitor_name_owner) (unassociate_proxies, dbus_g_proxy_manager_replace_name_owner): New functions; they manipulate the owner_names mapping. (got_name_owner_cb): New function. (get_name_owner): New function, extracted from dbus_g_proxy_new_for_name_owner. (dbus_g_proxy_manager_register): For now we need to keep track of all NameOwnerChanged. Also if the proxy is for a name, if we don't already know the name owner, queue a new GetNameOwner request and add it to our list of unassociated proxies. Otherwise inc the refcount. (dbus_g_proxy_manager_unregister): If this proxy is for a name, cancel any pending GetNameOwner call, etc. (dbus_g_proxy_manager_filter): Handle NameOwnerChanged. Also use the owner_names mapping to look up the current names for the signal source, and dispatch to any proxies for that name. (dbus_g_proxy_new): Initialize new members. (dbus_g_proxy_new_for_name): Delete unused proxy variable. (dbus_g_proxy_new_for_name_owner): Use get_name_owner. (dbus_g_pending_call_end_valist): New function, extracted from dbus_g_proxy_end_call_internal. Useful when we don't have a proxy but want to use the GLib infrastructure. Also note how many arguments in reply were over. (dbus_g_pending_call_end): New function, just call dbus_g_pending_call_end_valist. (dbus_g_proxy_end_call_internal): Just call dbus_g_pending_call_end_valist. * glib/dbus-gobject.c (_dbus_gobject_lookup_marshaller): Fix lookup of builtin marshaller for STRING_STRING_STRING. * test/glib/test-dbus-glib.c: * test/glib/test-service-glib.c: * test/glib/test-service-glib.xml: Extend tests to cover name proxies, destruction of owner proxies, etc. * glib/examples/example-signal-recipient.c (dbus_g_proxy_new_for_name_owner): Create a name proxy. * tools/dbus-send.c (main): Print D-BUS error name in addition to message. glib/dbus-gobject.c | 14 +- glib/dbus-gproxy.c | 780 ++++++++++++++++++++++++++---- glib/examples/example-signal-recipient.c | 9 +- 3 files changed, 689 insertions(+), 114 deletions(-) commit f2f505e8027bd4ef84b051ad9cd84ab86524b530 Author: Colin Walters Date: Mon Jun 27 18:20:20 2005 +0000 2005-06-27 Colin Walters * test/glib/test-dbus-glib.c: * test/glib/test-service-glib.c: * test/glib/test-service-glib.xml: Test hash table signal emitting. * glib/dbus-gobject.c (_dbus_gobject_lookup_marshaller): Convert types to their fundamental basis types, since this is what marshallers operate on. Also add an entry for VOID__BOXED. (dbus_g_object_register_marshaller_array): Convert to fundamental. glib/dbus-gobject.c | 28 +++++++++++++++++++++------- 1 files changed, 21 insertions(+), 7 deletions(-) commit f0480850590afa233d7e1ad2b0c8250621c2bb9f Author: Colin Walters Date: Sun Jun 26 17:02:09 2005 +0000 2005-06-26 Colin Walters * glib/dbus-glib.c (dbus_set_g_error): Delete. (dbus_g_error_set): New public function from its ashes; used by both service-side method implementation and GLib bindings internals. (dbus_g_error_has_name, dbus_g_error_get_name): New function. (_dbus_glib_test): Add some tests. * test/glib/test-dbus-glib.c (main): Test dbus_g_error_has_name. * test/glib/test-service-glib.c (my_object_throw_error): Use dbus_g_error_set. * glib/dbus-gobject.c (gerror_to_dbus_error_message): Handle errors thrown by dbus_g_error_set. * glib/dbus-gmain.c (dbus_g_bus_get): Change to dbus_g_error_set. * glib/dbus-gparser.c (validate_signature): Ditto. * glib/dbus-gproxy.c (dbus_g_proxy_new_for_name_owner) (dbus_g_proxy_end_call_internal): Ditto. * glib/Makefile.am: Generate dbus-glib-error-switch.h, which converts DBUS_ERROR_x to DBUS_GERROR_x. (libdbus_glib_1_la_SOURCES, BUILT_SOURCES, CLEANFILES): Add it. * doc/TODO: Remove error TODO. * doc/dbus-tutorial.xml: Update with documentation about error handling. * dbus/make-dbus-glib-error-enum.sh: Tighten up regexp to make sure we only change DBUS_ERROR to DBUS_GERROR, not all ERROR to GERROR. Also add DBUS_GERROR_REMOTE_EXCEPTION. glib/.cvsignore | 1 + glib/Makefile.am | 8 +++ glib/dbus-glib.c | 109 ++++++++++++++++++++++++++++++---- glib/dbus-gmain.c | 2 +- glib/dbus-gobject.c | 15 ++++- glib/dbus-gparser.c | 2 +- glib/dbus-gproxy.c | 6 +- glib/make-dbus-glib-error-switch.sh | 29 +++++++++ 8 files changed, 150 insertions(+), 22 deletions(-) commit ce03d4c9e9be4724a3255085b5ab5e51d9b9c196 Author: Colin Walters Date: Wed Jun 22 23:35:32 2005 +0000 2005-06-22 Colin Walters Patch from Ross Burton * glib/dbus-gobject.c (dbus_g_method_return): Free out_sig. glib/dbus-gobject.c | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) commit 6d152f08fa90bdc14d75b9091cccd5422faf3f11 Author: Colin Walters Date: Tue Jun 21 01:18:25 2005 +0000 2005-06-20 Colin Walters * configure.in: Add glib/examples. * glib/Makefile.am: Add examples/ * glib/examples/.cvsignore * glib/examples/Makefile.am * glib/examples/example-client.c * glib/examples/example-service.c * glib/examples/example-service.xml * glib/examples/example-signal-emitter.c * glib/examples/example-signal-emitter.xml * glib/examples/example-signal-recipient.c: New files; GLib binding examples, ported from python/examples. glib/Makefile.am | 2 + glib/examples/.cvsignore | 17 ++++ glib/examples/Makefile.am | 34 +++++++ glib/examples/example-client.c | 107 +++++++++++++++++++++++ glib/examples/example-service.c | 138 ++++++++++++++++++++++++++++++ glib/examples/example-service.xml | 19 ++++ glib/examples/example-signal-emitter.c | 132 ++++++++++++++++++++++++++++ glib/examples/example-signal-emitter.xml | 13 +++ glib/examples/example-signal-recipient.c | 103 ++++++++++++++++++++++ 9 files changed, 565 insertions(+), 0 deletions(-) commit ad05d7aa3b298fdc6c214550944e9aa1464a1e43 Author: Colin Walters Date: Tue Jun 21 00:30:20 2005 +0000 2005-06-20 Colin Walters * dbus/dbus-glib.h: * glib/dbus-gproxy.c: Rename dbus_g_proxy_invoke to dbus_g_proxy_call. * glib/dbus-binding-tool-glib.c: * doc/dbus-tutorial.xml: * test/glib/test-dbus-glib.c: Update for rename. glib/dbus-binding-tool-glib.c | 2 +- glib/dbus-gproxy.c | 18 ++++++++++-------- 2 files changed, 11 insertions(+), 9 deletions(-) commit 17ba4df65fdf4a7b65eedd2a4f10e616dd1b186c Author: Colin Walters Date: Mon Jun 20 19:54:21 2005 +0000 2005-06-20 Colin Walters Patch suggested by Ross Burton * glib/dbus-gobject.c (export_signals): Free signal name. (g_value_init): Use G_VALUE_NOCOPY_CONTENTS to plug memory leak. Add a bit of documentation. (dbus_g_method_return_error): Free context, and note we do so. glib/dbus-gobject.c | 6 +++++- 1 files changed, 5 insertions(+), 1 deletions(-) commit 01b89e61b5b98ad983babb506c9856aeadef2562 Author: Murray Cumming Date: Sun Jun 19 15:31:25 2005 +0000 2005-06-18 Murray Cumming * dbus/dbus-glib.h: * glib/dbus-gobject.c: * glib/dbus-gproxy.c: * glib/dbus-gvalue.c: Predeclare structs as typedef struct _Something Something instead of typedef struct Something Something, so we can redeclare the prototypes. Other GNOME libraries do this already. glib/dbus-gobject.c | 2 +- glib/dbus-gproxy.c | 8 ++++---- glib/dbus-gvalue.c | 2 +- 3 files changed, 6 insertions(+), 6 deletions(-) commit da18702f63a9f33d4f929113b6361062a86443a6 Author: Colin Walters Date: Fri Jun 17 14:29:48 2005 +0000 2005-06-17 Colin Walters * glib/dbus-gproxy.c (dbus_g_proxy_emit_remote_signal): Don't spew warnings if we get malformed remote signals. * glib/dbus-gobject.c (propsig_iterate): New function. (lookup_object_info): New function, extracted from lookup_object_and_method. (introspect_properties, introspect_signals): Delete; these are merged into write_interface. (write_interface): Write out signals and properties here; dump the org.gtk.object stuff and use the interface given in the introspection data blob. Also fix up property XML. (lookup_values): New function. (introspect_interfaces): Gather a mapping from interface to a list of its methods, signals, and properties, then write out each interface. (lookup_object_and_method): Use lookup_object_info. (struct DBusGSignalClosure): Add interface. (dbus_g_signal_closure_new): Add interface. Don't dup signame; we can just use the constant data. (dbus_g_signal_closure_finalize): Don't free signal name. (signal_emitter_marshaller): Use interface from signal closure. (export_signals): Only export signals mentioned in introspection blob. (dbus_g_connection_register_g_object): Warn if we have no introspection data for an object. (funcsig_equal): Remove unused variable. (dbus_g_object_register_marshaller): Take varargs instead of list. (dbus_g_object_register_marshaller_array): New function, extracted from old dbus_g_object_register_marshaller. * glib/dbus-binding-tool-glib.c (struct DBusBindingToolCData): Add signals and property data. (write_quoted_string): New function, extracted from generate_glue. (generate_glue): Write signals and properties to introspection blob. * dbus/dbus-glib.h (struct DBusGObjectInfo): Include exported_signals and exported_properties. (dbus_g_object_register_marshaller): Update prototype. (dbus_g_object_register_marshaller_array): Prototype. * test/glib/test-dbus-glib.c: Extend testing to cover new signals. * test/glib/test-service-glib.c: Add new test signals and method to emit them. * test/glib/test-service-glib.xml: Add some test signals. * test/glib/Makefile.am (BUILT_SOURCES): Add my-object-marshal.c and my-object-marshal.h (test_service_glib_SOURCES, test_dbus_glib_SOURCES): Add my-object-marshal.c. (my-object-marshal.c, my-object-marshal.h): Implement. * test/glib/.cvsignore: Update. * doc/TODO: Remove two GLib TODO items fixed by this patch. glib/dbus-binding-tool-glib.c | 88 ++++++-- glib/dbus-gobject.c | 547 ++++++++++++++++++++++++----------------- glib/dbus-gproxy.c | 3 + 3 files changed, 394 insertions(+), 244 deletions(-) commit 5c64ac1e7abcb7013c640d8aa6621319341f228d Author: Colin Walters Date: Thu Jun 16 19:50:24 2005 +0000 2005-06-16 Colin Walters * glib/dbus-binding-tool-glib.c: * glib/dbus-gobject.c: * glib/dbus-gproxy.c: Add Nokia copyright; Patch from Ross Burton, for his GLib bindings work. glib/dbus-binding-tool-glib.c | 1 + glib/dbus-gobject.c | 1 + glib/dbus-gproxy.c | 1 + 3 files changed, 3 insertions(+), 0 deletions(-) commit 87556105e7b984f8e56fc75d5c5ede8a69d63d12 Author: Colin Walters Date: Thu Jun 16 19:45:49 2005 +0000 2005-06-16 Colin Walters * glib/dbus-gobject.c (funcsig_hash, funcsig_equal): Use n_params to iterate instead of walking to G_TYPE_INVALID. Patch based on a patch from Ryan Gammon. glib/dbus-gobject.c | 11 ++++++----- 1 files changed, 6 insertions(+), 5 deletions(-) commit b274594d1f15e23be62d3ae2693524652ff58752 Author: Colin Walters Date: Thu Jun 16 04:38:11 2005 +0000 2005-06-16 Colin Walters * glib/dbus-gvalue.c (marshal_basic): Marshal NULL string values as the empty string (#2948). glib/dbus-gvalue.c | 2 ++ 1 files changed, 2 insertions(+), 0 deletions(-) commit 702f09f4f45225f603a6d17ae77c3360c428855a Author: Colin Walters Date: Tue Jun 14 15:55:10 2005 +0000 2005-06-14 Colin Walters * glib/dbus-binding-tool-glib.c: * glib/dbus-gobject.c: * glib/dbus-gvalue.c: Fix indentation and brace style. glib/dbus-binding-tool-glib.c | 74 +++++++++------- glib/dbus-gobject.c | 190 +++++++++++++++++++++-------------------- glib/dbus-gvalue.c | 11 ++- 3 files changed, 145 insertions(+), 130 deletions(-) commit ceb44c57e8ebc78ef420597bae484f7713c2e8bf Author: Colin Walters Date: Tue Jun 14 15:49:43 2005 +0000 2005-06-14 Ross Burton . * glib/dbus-glib.h: Make DBusGMethodInvocation a private structure. Rearrange prototypes a bit. * glib/dbus-gproxy.c (dbus_g_proxy_invoke): Add documentation for first_arg_type. * glib/dbus-gobject.c: Move DBusGMethodInvocation here, add documentation. Move dbus_g_method_return and dbus_g_method_return_error into public API section. glib/dbus-gobject.c | 119 ++++++++++++++++++++++++++++++--------------------- glib/dbus-gproxy.c | 1 + 2 files changed, 71 insertions(+), 49 deletions(-) commit 72b52186a73aac9f4d0ae1868fe1dedcedf3a6e6 Author: Colin Walters Date: Tue Jun 14 14:23:56 2005 +0000 2005-06-14 Colin Walters * glib/dbus-gobject.c (_dbus_gobject_lookup_marshaller): Add missing return statements, noticed by Ross Burton. glib/dbus-gobject.c | 6 ++++++ 1 files changed, 6 insertions(+), 0 deletions(-) commit 40617899dc08750ab5a8cd0fb176dc2111a95420 Author: Colin Walters Date: Mon Jun 13 15:36:31 2005 +0000 2005-06-13 Ross Burton . * glib/dbus-gobject.c: Handle errors on message demarshalling by sending error message back. * glib/dbus-gvalue.c: Initialize return variables. glib/dbus-gobject.c | 11 ++++++++--- glib/dbus-gvalue.c | 8 ++++---- 2 files changed, 12 insertions(+), 7 deletions(-) commit fc23d39a292cee7d4f9ee9a1df0c0141c69d0942 Author: Colin Walters Date: Mon Jun 13 15:34:05 2005 +0000 2005-06-13 Colin Walters * glib/Makefile.am: Fix thinko in last patch. glib/Makefile.am | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit 7c42065c67e99716130a5dec4e493bce3ccc9aaa Author: Colin Walters Date: Mon Jun 13 14:56:51 2005 +0000 2005-06-13 Colin Walters * glib/Makefile.am: Move dbus-gtype-specialized.c and dbus-gtype-specialized.h into a _HEADERS variable, install them. glib/Makefile.am | 8 ++++++-- 1 files changed, 6 insertions(+), 2 deletions(-) commit 8bcbafe775d6bc63290c5c73f138c1511b104c70 Author: Colin Walters Date: Mon Jun 13 03:01:17 2005 +0000 2005-06-12 Colin Walters Async signals and various bugfixes and testing by Ross Burton . * glib/dbus-gvalue.h: (struct DBusBasicGValue): Delete. (dbus_gvalue_genmarshal_name_from_type) (dbus_gvalue_ctype_from_type): Moved to dbus-binding-tool-glib.c. (dbus_gtype_to_dbus_type): Renamed to dbus_gtype_from_signature. (dbus_g_value_types_init, dbus_gtype_from_signature) (dbus_gtype_from_signature_iter, dbus_gtype_to_signature) (dbus_gtypes_from_arg_signature): New function prototypes. (dbus_gvalue_demarshal): Take context and error arguments. (dbus_gvalue_demarshal_variant): New function. (dbus_gvalue_demarshal_message): New function. (dbus_gvalue_store): Delete. * glib/dbus-gvalue.c: File has been almost entirely rewritten; now we special-case more types such as DBUS_TYPE_SIGNATURE, handle arrays and hash tables correctly, etc. Full support for recursive values is not yet complete. * glib/dbus-gproxy.c (dbus_g_proxy_class_init): Change last argument of signal to G_TYPE_POINTER since we now pass a structure. (lookup_g_marshaller): Delete in favor of _dbus_gobject_lookup_marshaller. (marshal_dbus_message_to_g_marshaller): Use _dbus_gobject_lookup_marshaller and dbus_gvalue_demarshal_message to handle remote signal callbacks. (dbus_g_proxy_new_from_proxy): New function; creates a new DBusGProxy by copying an existing one. (dbus_g_proxy_get_interface, dbus_g_proxy_set_interface) (dbus_g_proxy_get_path): New functions. (dbus_g_proxy_marshal_args_to_message): New function; factored out of existing code. (DBUS_G_VALUE_ARRAY_COLLECT_ALL): Collect all arguments from a varargs array. (dbus_g_proxy_begin_call_internal): New function. (dbus_g_proxy_end_call_internal): New function. (dbus_g_proxy_begin_call): Take GTypes instead of DBus types as arguments; simply invoke dbus_g_proxy_begin_call_internal after collecting args into value array. (dbus_g_proxy_end_call): Take GTypes instead of DBus types; invoke dbus_g_proxy_end_call_internal. (dbus_g_proxy_invoke): Simply invoke begin_call_interanl and end_call_internal. (dbus_g_proxy_call_no_reply): Take GTypes instead of DBus types. (array_free_all): New function. (dbus_g_proxy_add_signal): Take GTypes. * glib/dbus-gobject.h: (_dbus_glib_marshal_dbus_message_to_gvalue_array): Delete. (_dbus_gobject_get_path, _dbus_gobject_lookup_marshaller): Prototype. * glib/dbus-gobject.c: Add a global marshal_table hash which stores mappings from type signatures to marshallers. Change lots of invocations of dbus_gtype_to_dbus_type to dbus_gtype_to_signature. (_dbus_glib_marshal_dbus_message_to_gvalue_array): Delete. (introspect_signals): Fix test for query.return_type. (set_object_property): Update invocation of dbus_gvalue_demarshal. (invoke_object_method): Many changes. Handle asynchronous invocations. Convert arguments with dbus_gvalue_demarshal_message. Handle errors. Use DBusSignatureIter instead of strlen on args. Handle all arguments generically. Special-case variants. (dbus_g_method_return, dbus_g_method_return_error): New function. (DBusGSignalClosure): New structure, closes over signal information. (dbus_g_signal_closure_new): New function. (dbus_g_signal_closure_finalize): New function. (signal_emitter_marshaller): New function; is special marshaller which emits signals on bus. (export_signals): New function; introspects object signals and connects to them. (dbus_g_object_type_install_info): Take GType instead of GObjectClass. (dbus_g_connection_register_g_object): Invoke export_signals. (dbus_g_connection_lookup_g_object): New function. (DBusGFuncSignature) New structure; used for mapping type signatures to marshallers. (funcsig_hash): New function; hashes DBusGFuncSignature. (funcsig_equal): New function; compares DBusGFuncSignature. (_dbus_gobject_lookup_marshaller): New function. (dbus_g_object_register_marshaller): New function; used to register a marshaller at runtime for a particular signature. * glib/dbus-gmain.c (_dbus_gmain_test): Add various tests. * glib/dbus-binding-tool-glib.h: Add DBUS_GLIB_ANNOTATION_ASYNC which notes a server method implementation should be asynchronous. * glib/dbus-binding-tool-glib.c (dbus_binding_tool_output_glib_server): Call dbus_g_value_types_init. (write_formal_parameters): Use dbus_gtype_from_signature. Handle variants specially. (dbus_g_type_get_lookup_function): Turn GType into an invocation of a lookup function. (write_args_for_direction): Use dbus_g_type_get_lookup_function. (write_untyped_out_args): New method; write output arguments. (write_formal_declarations_for_direction): Function for writing prototypes. (write_formal_parameters_for_direction): Function for writing implementations. (write_typed_args_for_direction): Function for writing arguments prefixed with GTypes. (write_async_method_client): Write out async version of method. * glib/dbus-binding-tool-glib.c: Include dbus-gvalue-utils.h. (dbus_g_type_get_marshal_name): Move mapping from GType to marshal name into here. (dbus_g_type_get_c_name): Move into here. (compute_marshaller): Convert signature to type with dbus_gtype_from_signature, use dbus_g_type_get_marshal_name. (compute_marshaller_name): Ditto. (compute_marshaller): Handle async signal annotations. (gather_marshallers): Return if we don't have a known prefix. (generate_glue): Collect introspection blob here, and write all of the blob at the end. This allows an object with multiple interfaces to work. Mark async methods in introspection blob. * glib/Makefile.am (libdbus_glib_1_la_SOURCES): Add dbus-gtype-specialized.c, dbus-gtype-specialized.h, dbus-gvalue-utils.h, dbus-gvalue-utils.c. * dbus/dbus-glib.h: Don't include dbus-protocol.h; this avoids people accidentally using DBUS_TYPE_* which should not be necessary anymore. Do include dbus-gtype-specialized.h, which are utilities for GLib container types. Add various #defines for types such as DBUS_TYPE_G_BOOLEAN_ARRAY. (DBusGValueIterator, DBusGValue): Define, not fully used yet. (dbus_g_value_get_g_type): Type for recursive value. (dbus_g_value_open, dbus_g_value_iterator_get_value) (dbus_g_value_iterator_get_values, dbus_g_value_iterator_recurse) (dbus_g_value_free): Prototypes. (dbus_g_object_register_marshaller, dbus_g_proxy_new_from_proxy): Prototype. (dbus_g_proxy_set_interface): Prototype. (dbus_g_proxy_begin_call, dbus_g_proxy_end_call) (dbus_g_proxy_call_no_reply): Take GLib types instead of DBus types. (dbus_g_proxy_get_path, dbus_g_proxy_get_interface): Accessors. (DBusGAsyncData, DBusGMethodInvocation): Structures for doing async invocations. (dbus_g_method_return, dbus_g_method_return_error): Prototypes. * doc/dbus-tutorial.xml: Update GLib section. * tools/dbus-viewer.c (load_child_nodes): Update for new invocation type of dbus_g_proxy_end_call. (load_from_service_thread_func): Ditto. * tools/print-introspect.c (main): Ditto. * tools/dbus-names-model.c (have_names_notify) (names_model_reload, names_model_set_connection) Use GTypes. * python/Makefile.am (INCLUDES): Define DBUS_COMPILATION, needed since Python bindings use GLib bindings. * test/glib/Makefile.am (INCLUDES): Define DBUS_COMPILATION. Add --prefix argument. * tools/Makefile.am: Define DBUS_COMPILATION. Remove unneeded --ignore-unsupported arg. * test/glib/test-service-glib.c: * test/glib/test-service-glib.xml: * test/glib/test-dbus-glib.c: Add many more tests. glib/Makefile.am | 6 +- glib/dbus-binding-tool-glib.c | 642 +++++++++++++++--- glib/dbus-binding-tool-glib.h | 1 + glib/dbus-gmain.c | 29 + glib/dbus-gobject.c | 599 ++++++++++++++--- glib/dbus-gobject.h | 10 +- glib/dbus-gproxy.c | 789 ++++++++++++---------- glib/dbus-gtype-specialized.c | 441 ++++++++++++ glib/dbus-gtype-specialized.h | 104 +++ glib/dbus-gvalue-utils.c | 715 +++++++++++++++++++ glib/dbus-gvalue-utils.h | 70 ++ glib/dbus-gvalue.c | 1508 +++++++++++++++++++++++++++++++++++----- glib/dbus-gvalue.h | 55 +- 13 files changed, 4185 insertions(+), 784 deletions(-) commit 4bc350fedd536bc187768a7bfa2455aae7474f74 Author: John (J5) Palmieri Date: Mon May 16 21:27:03 2005 +0000 * glib/dbus-gmain.c (io_handler_dispatch): fix deadlock when using recursive g_main_loops * python/_dbus.py (class Bus): add the ProxyObjectClass alias for ProxyObject to make it easier for the Twisted networking framework to integrate dbus. * python/proxies.py (class ProxyObject): add the ProxyMethodClass alias for ProxyMethod to make it easier for the Twisted networking framework to integrate dbus. glib/dbus-gmain.c | 8 +------- 1 files changed, 1 insertions(+), 7 deletions(-) commit 3c7dcbf8f47d3061fccdc315716c90a0b69a470f Author: Colin Walters Date: Wed May 11 19:02:31 2005 +0000 2005-05-11 Ross Burton * glib/dbus-glib-tool.c: Add --prefix argument. * glib/dbus-binding-tool-glib.h: Add prefix argument. * glib/dbus-binding-tool-glib.c (compute_marshaller_name): Add prefix argument. (generate_glue): Pass prefix argument down. (dbus_binding_tool_output_glib_server): Pass prefix to glib-genmarshal. glib/dbus-binding-tool-glib.c | 16 ++++++++++------ glib/dbus-binding-tool-glib.h | 2 +- glib/dbus-glib-tool.c | 8 +++++++- 3 files changed, 18 insertions(+), 8 deletions(-) commit 55263b490f4dba73b1590939be2b087856487054 Author: Colin Walters Date: Tue May 3 17:45:29 2005 +0000 2005-05-03 Ross Burton * glib/dbus-gobject.c (dbus_g_connection_register_g_object): Return if we get an error during registration. Set up a weak reference on object to unregister if object is destroyed. (unregister_gobject): New function. glib/dbus-gobject.c | 18 ++++++++++++++---- 1 files changed, 14 insertions(+), 4 deletions(-) commit 260e1fecf1690bb12c5bf7d5ddf793d79a1efed5 Author: David Zeuthen Date: Tue Apr 19 03:35:19 2005 +0000 2005-04-18 David Zeuthen * glib/dbus-gmain.c (io_handler_destroy_source): (timeout_handler_destroy_source, connection_setup_free): Also unref the source to avoid memory leaks. glib/dbus-gmain.c | 3 +++ 1 files changed, 3 insertions(+), 0 deletions(-) commit 56288b6e3a9e5f8bd8920c5f7dac2a2b64842b15 Author: Havoc Pennington Date: Wed Apr 13 14:10:21 2005 +0000 2005-04-13 Havoc Pennington * glib/dbus-gmain.c (message_queue_dispatch): only dispatch one message at a time to avoid monopolizing the main loop, bug #2953 from Benjamin Otte glib/dbus-gmain.c | 6 +++--- 1 files changed, 3 insertions(+), 3 deletions(-) commit ca2ab9616ed7c6e936e495e64303f77956cb6b82 Author: Havoc Pennington Date: Sat Apr 9 23:50:58 2005 +0000 2005-04-09 Havoc Pennington * dbus/dbus-message-util.c (_dbus_message_test): fix signedness warning * glib/dbus-glib-tool.c (main): fix warning * glib/dbus-binding-tool-glib.c (generate_glue): fix warning * dbus/dbus-connection.c (dbus_connection_read_write_dispatch): add a new function that can be used in simple applications that don't have a main loop and are willing to block glib/dbus-binding-tool-glib.c | 3 +++ glib/dbus-glib-tool.c | 1 + 2 files changed, 4 insertions(+), 0 deletions(-) commit b34961c0e5a75ff9f70e0ba439a96d993456ef92 Author: David Zeuthen Date: Wed Apr 6 17:36:47 2005 +0000 2005-04-05 David Zeuthen Fix https://bugs.freedesktop.org/show_bug.cgi?id=2889 * glib/dbus-gmain.c: (io_handler_destroy_source): Remove from list of IO handlers of the ConnectionSetup object (timeout_handler_destroy_source): -do- for timeout handlers (io_handler_source_finalized): Don't remove from list since we now do that in io_handler_destroy_source(). Renamed from io_handler_source_destroyed (timeout_handler_source_destroyed): -do- for timeout handlers (connection_setup_free): It is now safe to iterate over all IO and timeout handlers as the _destroy_source removes them from the list synchronously glib/dbus-gmain.c | 14 ++++++-------- 1 files changed, 6 insertions(+), 8 deletions(-) commit 681e7deee9a01c1f315b0066b87204e0da207d99 Author: Colin Walters Date: Thu Mar 17 17:48:29 2005 +0000 2005-03-17 Colin Walters * bus/print-introspect.c: Move to tools/. * bus/run-with-tmp-session-bus.sh: Ditto. * glib/Makefile.am (dbus-glib-bindings.h): Move generation to tools/Makefile.am. * test/glib/run-test.sh: Update to handle move of run-with-tmp-session-bus.sh. * test/glib/test-service-glib.c: Update to handle move of dbus-glib-bindings.h. * tools/print-introspect.c: Moved here from bus/, and ported to GLib bindings. * tools/run-with-tmp-session-bus.sh: Moved here from bus/. * tools/Makefile.am: Generate dbus-glib-bindings.h and dbus-bus-introspect.xml here. * tools/.cvsignore, glib/.cvsignore, bus/.cvsignore: Update. glib/.cvsignore | 1 - glib/Makefile.am | 8 -------- 2 files changed, 0 insertions(+), 9 deletions(-) commit 1cc2659deb9f108f449ad3ca8f18bff743a4cd81 Author: Colin Walters Date: Sat Mar 12 20:07:21 2005 +0000 2005-03-12 Colin Walters * bus/driver.c (write_args_for_direction): New function, parses a type signature into arguments and outputs to XML. (bus_driver_handle_introspect): Use it instead of hardcoding XML for certain signatures. * bus/Makefile.am (dbus-bus-introspect.xml): Add dependency on dbus-daemon. * glib/dbus-glib-tool.c (main): Parse ignore_unsupported argument, pass it to dbus_binding_tool_output_glib_client. * glib/dbus-binding-tool-glib.c (generate_client_glue): Protect against multiple inclusion. (dbus_binding_tool_output_glib_client): Add G_BEGIN_DECLS/G_END_DECLS. * glib/dbus-binding-tool-glib.c (compute_client_method_name): Change to just take iface prefix directly. (write_formal_parameters): Clarify error message. (check_supported_parameters): New function; checks to see type signatures of method parameters are supported. (generate_client_glue): Handle ignore_unsupported flag. (dbus_binding_tool_output_glib_client): Handle ignore_unsupported parameter. * glib/Makefile.am (dbus-glib-bindings.h): Pass --ignore-unsupported by default until glib bindings support arrays. glib/Makefile.am | 2 +- glib/dbus-binding-tool-glib.c | 64 +++++++++++++++++++++++++++++++++++----- glib/dbus-binding-tool-glib.h | 2 +- glib/dbus-glib-tool.c | 6 +++- 4 files changed, 63 insertions(+), 11 deletions(-) commit c5247484ea45ef9b6b3449a71e3ea80b86de03ad Author: Colin Walters Date: Sat Mar 12 16:33:00 2005 +0000 2005-03-11 Colin Walters * glib/Makefile.am: Generate dbus-glib-bindings.h and install it. * bus/print-introspect.c: New file; prints introspection data for a given name and object path. * bus/run-with-tmp-session-bus.sh: New file, refactored from test/glib/run-test.sh. Creates a temporary session bus and runs another program. * test/glib/run-test.sh: Refactor to invoke run-with-tmp-session-bus.sh. * bus/driver.c (bus_driver_handle_introspect): Fix to print new introspection format. Also change to use DBUS_TYPE_x_AS_STRING macros instead of hardcoding. * glib/.cvsignore, bus/.cvsignore, test/glib/.cvsignore: Update. glib/.cvsignore | 1 + glib/Makefile.am | 8 ++++++++ 2 files changed, 9 insertions(+), 0 deletions(-) commit 10dc75239d071c49622972d061ff7546ed169bc5 Author: Colin Walters Date: Wed Mar 9 17:09:11 2005 +0000 2005-03-09 Colin Walters * glib/dbus-gproxy.c (dbus_g_proxy_invoke): New method; calls to this are generated for client-side wrappers. Invokes a D-BUS method and returns reply values. * glib/dbus-binding-tool-glib.c (write_args_sig_for_direction): New function; writes signature string for argument direction. (write_args_for_direction): Change to pass input values directly instead of via address, and fix indentation. (generate_client_glue): Change to invoke dbus_g_proxy_invoke. Also make generated wrappers inlineable. * dbus/dbus-message.c (dbus_message_iter_get_fixed_array): Add note about using dbus_type_is_fixed. * dbus/dbus-marshal-basic.c (_dbus_type_is_fixed): Moved to dbus/dbus-signature.c as dbus_type_is_fixed. All callers updated. * dbus/dbus-signature.c (dbus_type_is_fixed): Moved here from dbus/dbus-marshal-basic.c:_dbus_type_is_fixed. * dbus/dbus-signature.h: Prototype. * glib/dbus-binding-tool-glib.c (compute_marshaller_name): Fix error printf code. * test/glib/test-dbus-glib.c (main): Be sure to clear error as appropriate instead of just freeing it. (main): Free returned strings using g_free. * test/glib/Makefile.am (test-service-glib-glue.h) (test-service-glib-bindings.h): Add dependency on dbus-binding-tool. * glib/dbus-gvalue.c (MAP_BASIC): Refactored from MAP_BASIC_INIT; simply maps a simple D-BUS type to GType. (dbus_dbus_type_to_gtype): Function which maps D-BUS type to GType. (dbus_gvalue_init): Just invoke dbus_dbus_type_to_gtype and initialize the value with it. (dbus_gvalue_binding_type_from_type): Unused, delete. (dbus_gvalue_demarshal): Switch to hardcoding demarshalling for various types instead of unmarshalling to value data directly. Remove can_convert boolean. (dbus_gvalue_marshal): Remove duplicate initialization; switch to returning directly instead of using can_convert boolean. (dbus_gvalue_store): New function; not related to D-BUS per-se. Stores a GValue in a pointer to a value of its corresponding C type. * glib/dbus-gvalue.h: Remove dbus_gvalue_binding_type_from_type, add dbus_gvalue_store. glib/dbus-binding-tool-glib.c | 73 +++++++----- glib/dbus-gproxy.c | 205 +++++++++++++++++++++++++++++++++ glib/dbus-gvalue.c | 254 +++++++++++++++++++++++------------------ glib/dbus-gvalue.h | 4 +- 4 files changed, 392 insertions(+), 144 deletions(-) commit 61b05621beeb5a929bf68b95fdb9cb63516c1c7e Author: John (J5) Palmieri Date: Mon Mar 7 21:10:46 2005 +0000 * NEWS: Update for 0.31 * configure.in: Release 0.31 add LT_CURRENT, LT_REVISION, LT_AGE for easy soname bumping * qt/Makefile.am: fixed build * dbus/Makefile.am: soname bump for libdbus * glib/Makefile.am: soname bump for libdbus-glib glib/Makefile.am | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit be6ef9488ddc1b9fd3fc303cccf6e6618450be89 Author: Colin Walters Date: Sun Feb 27 17:38:12 2005 +0000 2005-02-27 Colin Walters * glib/dbus-gidl.c (property_info_get_type, arg_info_get_type): Change return value to const char * instead of int so we can do full signatures. (struct PropertyInfo, struct ArgInfo): Store char *. (property_info_new, arg_info_new): Update parameters, strdup. (property_info_unref, arg_info_unref): Free. * glib/dbus-gidl.h: Update prototypes. * glib/dbus-gparser.c (basic_type_from_string): Delete. (validate_signature): New function, just validates signature and sets GError. (parse_property, parse_arg): Invoke validate_signature. Store signature instead of just type code. * glib/dbus-gvalue.c (base_type_from_signature): New utility function to return a primary type for a signature, dropping information about types in container types. (dbus_gvalue_genmarshal_name_from_type) (dbus_gvalue_binding_type_from_type) (dbus_gvalue_ctype_from_type): Update to take full signature instead of type code. (dbus_gtype_to_dbus_type): Moved here from glib/dbus-gobject.c. * glib/dbus-gvalue.h: Update prototypes for above. * glib/dbus-gobject.c (gtype_to_dbus_type): Moved to glib/dbus-gvalue.c as dbus_gtype_to_dbus_type. (introspect_properties, introspect_signals, write_interface): Update to handle signatures, and remove usage of _dbus_gutils_type_to_string. (handle_introspect): Print out type codes instead of e.g. "string" in hardcoded introspection XML; also use x_AS_STRING constants instead of hardcoding in string. * glib/dbus-glib-tool.c (pretty_print): Handle signature change to string. Remove usage of _dbus_gutils_type_to_string. * glib/dbus-gutils.c (_dbus_gutils_type_to_string): Delete. * glib/dbus-gutils.h (_dbus_gutils_type_to_string): Update for deletion. * glib/dbus-binding-tool-glib.c (compute_marshaller) (compute_marshaller_name, generate_glue): Handle signature change to string. (write_formal_parameters, write_args_for_direction): Ditto, and remove FIXME. * tools/dbus-tree-view.c (type_to_string): Delete. (info_set_func_text): Update to print full signatures. * test/glib/test-service-glib.xml: Change types to new introspection format. glib/dbus-binding-tool-glib.c | 20 ++++++------ glib/dbus-gidl.c | 18 ++++++---- glib/dbus-gidl.h | 8 ++-- glib/dbus-glib-tool.c | 8 ++-- glib/dbus-gobject.c | 69 ++++++++------------------------------- glib/dbus-gparser.c | 72 +++++++++------------------------------- glib/dbus-gutils.c | 42 ------------------------ glib/dbus-gutils.h | 1 - glib/dbus-gvalue.c | 71 ++++++++++++++++++++++++++++++++++++++-- glib/dbus-gvalue.h | 8 +++-- 10 files changed, 131 insertions(+), 186 deletions(-) commit 662755210c931da87972398ded13d4651e3d3fec Author: John (J5) Palmieri Date: Thu Feb 24 22:01:34 2005 +0000 glib/Makefile.am: added dbus-gobject.h to sources list so distcheck doesn't fail glib/Makefile.am | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) commit 0573676ce932874b07780036eaeaa42a6f3e1628 Author: Colin Walters Date: Sat Feb 19 23:25:41 2005 +0000 2005-02-19 Colin Walters * glib/dbus-binding-tool-glib.c (dbus_binding_tool_output_glib_server): Fix iochannel refcounting. * glib/dbus-glib-tool.c: Include dbus-glib-tool.h, as well as errno.h and sys/stat.h. (lose): New function, prints error with newline and exits. (lose_gerror): Similar, but takes GError for message. (main): Add --output argument to specify output file to write to, instead of always printing to stdout. In this mode, determine timestamps on source files to see whether any are newer than the target file. If not, exit. Also convert a number of error messages to use lose (since it's shorter), and switch to using g_io_channel_shutdown. glib/dbus-binding-tool-glib.c | 2 +- glib/dbus-glib-tool.c | 119 +++++++++++++++++++++++++++++++---------- 2 files changed, 91 insertions(+), 30 deletions(-) commit 7ff788981218b324d0eeec16fa4b7bb9ec97d694 Author: Havoc Pennington Date: Sat Feb 19 16:17:29 2005 +0000 2005-02-19 Havoc Pennington * glib/dbus-gobject.c (_dbus_glib_marshal_dbus_message_to_gvalue_array): add docs * glib/dbus-glib.c: fix doxygen warnings * glib/dbus-gparser.c (parse_annotation): error if an annotation is found on an glib/dbus-glib.c | 8 ++++---- glib/dbus-gobject.c | 8 +++++++- glib/dbus-gparser.c | 4 +--- 3 files changed, 12 insertions(+), 8 deletions(-) commit 03186401718758948242881cf429bdbb48eb8474 Author: Colin Walters Date: Fri Feb 18 03:14:33 2005 +0000 2005-02-17 Colin Walters * glib/dbus-gobject.h: Don't export _dbus_glib_marshal_dbus_message_to_gvalue_array. * glib/dbus-gobject.c (_dbus_glib_marshal_dbus_message_to_gvalue_array): Do rename. (invoke_object_method): Handle it. * glib/dbus-gproxy.c (marshal_dbus_message_to_g_marshaller): Handle rename. glib/dbus-gobject.c | 4 ++-- glib/dbus-gobject.h | 2 +- glib/dbus-gproxy.c | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) commit a6e8deb82f6202628fcb3b9b3a616d0a98598474 Author: Colin Walters Date: Thu Feb 17 21:19:48 2005 +0000 2005-02-17 Colin Walters * dbus/dbus-protocol.h (DBUS_SERVICE_ORG_FREEDESKTOP_DBUS): Rename to DBUS_SERVICE_DBUS. (DBUS_PATH_ORG_FREEDESKTOP_DBUS): Rename to DBUS_PATH_DBUS. (DBUS_PATH_ORG_FREEDESKTOP_LOCAL): Rename to DBUS_PATH_LOCAL. (DBUS_INTERFACE_ORG_FREEDESKTOP_DBUS): Rename to DBUS_INTERFACE_DBUS. (DBUS_INTERFACE_ORG_FREEDESKTOP_INTROSPECTABLE): Rename to DBUS_INTERFACE_INTROSPECTABLE. (DBUS_INTERFACE_ORG_FREEDESKTOP_PROPERTIES): Rename to DBUS_INTERFACE_PROPERTIES. (DBUS_INTERFACE_ORG_FREEDESKTOP_PEER): Rename to DBUS_INTERFACE_PEER. (DBUS_INTERFACE_ORG_FREEDESKTOP_LOCAL): DBUS_INTERFACE_LOCAL. All other users of those constants have been changed. * bus/driver.c (bus_driver_handle_introspect): Use constants. * glib/dbus-gobject.c (handle_introspect): Use constants. * doc/dbus-faq.xml, doc/dbus-specification.xml: Update for rename. glib/dbus-gobject.c | 10 +++++----- glib/dbus-gproxy.c | 8 ++++---- 2 files changed, 9 insertions(+), 9 deletions(-) commit b085dcd0556e82c8fe347cc4bedd2e5b9b876a95 Author: Colin Walters Date: Thu Feb 17 21:11:18 2005 +0000 2005-02-17 Colin Walters * glib/dbus-gparser.c (struct Parser): Add in_annotation boolean. (parse_node, parse_interface, parse_method, parse_signal) (parse_property, parse_annotation): Lose if we're currently in an annotation. (parse_annotation): New function. (parser_start_element, parser_end_element): Handle annotation. (parse_method, parse_interface): Remove support for c_name attribute, switch to annotations. * glib/dbus-gidl.h (interface_info_get_binding_names) (method_info_get_binding_names) (interface_info_get_binding_name, method_info_get_binding_name) (interface_info_set_binding_name, method_info_set_binding_name): Remove. (interface_info_get_annotations, method_info_get_annotations) (interface_info_get_annotation, method_info_get_annotation) (interface_info_add_annotation, method_info_add_annotation): Prototype. * glib/dbus-gidl.c (struct InterfaceInfo): Substitute "annotations" for "bindings". (struct MethodInfo): Ditto. Straightfoward conversion of binding methods into annotation methods as prototyped. * glib/dbus-glib-tool.c (pretty_print): Print annotations. * glib/dbus-binding-tool-glib.h (DBUS_GLIB_ANNOTATION_C_SYMBOL): Define. * glib/dbus-binding-tool-glib.c (gather_marshallers, generate_glue): Use new annotation API. * doc/introspect.dtd: Fix a number of DTD syntax errors. Add annotation element. * doc/dbus-specification.xml: Discuss introspection annotations, include list of well-known annotations. * test/glib/test-service-glib.xml: Make validate against new DTD. glib/dbus-binding-tool-glib.c | 10 ++-- glib/dbus-binding-tool-glib.h | 2 + glib/dbus-gidl.c | 60 ++++++++++++++-------------- glib/dbus-gidl.h | 24 ++++++------ glib/dbus-glib-tool.c | 30 +++++++------- glib/dbus-gparser.c | 88 ++++++++++++++++++++++++++++++++++++---- 6 files changed, 143 insertions(+), 71 deletions(-) commit 87e81b87d7b443142302ecb48e46191a443ae02a Author: Colin Walters Date: Thu Feb 17 17:41:24 2005 +0000 2005-02-17 Colin Walters This patch is based on initial work from Paul Kuliniewicz . * glib/dbus-gvalue.c (dbus_gvalue_init): New function; move initialization of GValue from dbus type to here. (dbus_gvalue_genmarshal_name_from_type): New function; generates a string for the "glib-genmarshal" program from a DBus type. (dbus_gvalue_binding_type_from_type): New function; turns a DBus type into the C name for it we use in the glib bindings. (dbus_gvalue_ctype_from_type): New function; maps a DBus type into a glib C type (not GValue). (dbus_gvalue_demarshal): invoke dbus_gvalue_init. * glib/dbus-gutils.c (_dbus_gutils_wincaps_to_uscore): Moved here from dbus-gobject.c. * glib/dbus-gutils.h: Prototype it. * glib/dbus-gproxy.c: Include new dbus-gobject.h. (marshal_dbus_message_to_g_marshaller): Use new shared function dbus_glib_marshal_dbus_message_to_gvalue_array. * glib/dbus-gparser.c (parse_interface, parse_method): Handle c_name attribute. Will be changed once we have annotations. * glib/dbus-gobject.c: Change info_hash_mutex from GStaticMutex to GStaticRWLock. Callers updated. (wincaps_to_uscore): Move to dbus-gutils.c. Callers updated. (string_table_next): New function for iterating over zero-terminated string value array. (string_table_lookup): New function; retrieves specific entry in array. (get_method_data): New function; look up method data in object data chunk. (object_error_domain_prefix_from_object_info) (object_error_code_from_object_info): New functions, but not implemented yet. (method_interface_from_object_info): New function; retrieve interface name. (method_name_from_object_info): New function; retrieve method name. (method_arg_info_from_object_info): New function; retrieve argument data. (arg_iterate): New function; iterates over serialized argument data. (method_dir_signature_from_object_info): New function; returns a GString holding type signature for arguments for just one direction (input or output). (method_input_signature_from_object_info) (method_output_signature_from_object_info): New functions. (dbus_glib_marshal_dbus_message_to_gvalue_array): New shared function; converts dbus message arguments into a GValue array. Used for both signal handling and method invocation. (struct DBusGlibWriteIterfaceData): New utility structure. (write_interface): New function; generate introspection XML for an interface. (introspect_interfaces): New function; gathers all interface->methods, generates introspection XML for them. (handle_introspect): Invoke introspect_interfaces. (get_object_property): Be sure to zero-initalize stack-allocated GValue. (lookup_object_and_method): New function; examines an incoming message and attempts to match it up (via interface, method name, and argument signature) with a known object and method. (gerror_domaincode_to_dbus_error_name): New function; converts a GError domain and code into a DBus error name. Needs GError data added to object introspection to work well. (gerror_to_dbus_error_message): Creates a DBusMessage error return from GError. (invoke_object_method): New function to invoke an object method looked up via lookup_object_and_method. Parses the incoming message, turns it into a GValue array, then invokes the marshaller specified in the DBusGMethodInfo. Creates a new message with either return values or error message as appropriate. (gobject_message_function): Invoke lookup_object_and_method and invoke_object_method. * glib/dbus-glib-tool.c: Include dbus-binding-tool-glib.h. (enum DBusBindingOutputMode): New enum for binding output modes. (pretty_print): Print binding names. (dbus_binding_tool_error_quark): GError bits. (version): Fix typo. (main): Create GIOChannel for output. Parse new --mode argument, possible values are "pretty-print", "glib-server", "glib-client". Use mode to invoke appropriate function. * glib/dbus-gobject.h: Prototype dbus_glib_marshal_dbus_message_to_gvalue_array. * glib/dbus-glib-tool.h: New header, just includes GError bits for now. * glib/dbus-gidl.c (struct InterfaceInfo): Add bindings hashtable; maps binding style to name. (struct MethodInfo): Ditto. (get_hash_keys, get_hash_key): Utility function, returns keys for a GHashTable. (interface_info_new, method_info_new): Initialize bindings. (interface_info_unref, method_info_unref): Destroy bindings. (method_info_get_binding_names, method_info_get_binding_name) (interface_info_get_binding_names, interface_info_get_binding_name): Functions for retrieving binding names. (method_info_set_binding_name, interface_info_set_binding_name): Functions for setting binding names. * glib/dbus-binding-tool-glib.h: New file, has prototypes for glib binding generation. * glib/dbus-binding-tool-glib.c: New file, implements server-side and client-side glib glue generation. * glib/Makefile.am (dbus_binding_tool_SOURCES): Add dbus-binding-tool-glib.c, dbus-binding-tool-glib.h, dbus-glib-tool.h. * dbus/dbus-glib.h (struct DBusGMethodMarshaller): Remove in favor of using GClosureMarshal directly. (struct DBusGObjectInfo): Add n_infos member. * test/glib/test-service-glib.xml: New file; contains introspection data for MyTestObject used in test-service-glib.c. * test/glib/test-service-glib.c (enum MyObjectError): New GError enum. (my_object_do_nothing, my_object_increment, my_object_throw_error) (my_object_uppercase, my_object_many_args): New test methods. (main): Use dbus_g_object_class_install_info to include generated object info. * test/glib/Makefile.am: Generate server-side glue for test-service-glib.c, as well as client-side bindings. * test/glib/test-dbus-glib.c: Include test-service-glib-bindings.h. (main): Activate TestSuiteGLibService; test invoke a bunch of its methods using both the dbus_gproxy stuff directly as well as the generated bindings. glib/Makefile.am | 3 + glib/dbus-binding-tool-glib.c | 812 +++++++++++++++++++++++++++++++++++++++++ glib/dbus-binding-tool-glib.h | 33 ++ glib/dbus-gidl.c | 73 ++++ glib/dbus-gidl.h | 14 +- glib/dbus-glib-tool.c | 120 +++++- glib/dbus-glib-tool.h | 37 ++ glib/dbus-gobject.c | 596 +++++++++++++++++++++++++++--- glib/dbus-gobject.h | 35 ++ glib/dbus-gparser.c | 8 + glib/dbus-gproxy.c | 52 +-- glib/dbus-gutils.c | 28 ++ glib/dbus-gutils.h | 1 + glib/dbus-gvalue.c | 171 ++++++++- glib/dbus-gvalue.h | 28 ++- 15 files changed, 1889 insertions(+), 122 deletions(-) commit dd22216537d98b06366ade81eb6f63621d4c6379 Author: Havoc Pennington Date: Wed Feb 16 04:37:27 2005 +0000 2005-02-15 Havoc Pennington * dbus/dbus-connection.c (dbus_connection_dispatch): always complete a pending call, don't run filters first. * glib/dbus-gproxy.c (dbus_g_proxy_end_call): change to use dbus_pending_call_steal_reply * dbus/dbus-pending-call.c (dbus_pending_call_block): just call _dbus_connection_block_pending_call (dbus_pending_call_get_reply): change to steal_reply and return a ref * dbus/dbus-connection.c (dbus_connection_send_with_reply_and_block): port to work in terms of DBusPendingCall (_dbus_connection_block_pending_call): replace block_for_reply with this glib/dbus-gproxy.c | 5 ++++- 1 files changed, 4 insertions(+), 1 deletions(-) commit 3ce5325735aae6b1d4e6a28b45465a586710d23e Author: Havoc Pennington Date: Sat Feb 12 20:27:45 2005 +0000 2005-02-12 Havoc Pennington * tools/dbus-tree-view.c (info_set_func_text): display more details on args * bus/driver.c (bus_driver_handle_list_services): list the bus driver * glib/dbus-gparser.c (parse_arg): generate an arg name if none is supplied * glib/dbus-gidl.c (signal_info_get_n_args): new function (method_info_get_n_args): new function glib/dbus-gidl.c | 12 ++++++++++++ glib/dbus-gidl.h | 2 ++ glib/dbus-gparser.c | 13 ++++++++++++- 3 files changed, 26 insertions(+), 1 deletions(-) commit 89113d257f1f75cea5d0f39bbca4785afc784bf2 Author: Havoc Pennington Date: Thu Feb 10 23:47:54 2005 +0000 2005-02-10 Havoc Pennington * dbus/dbus-object-tree.c (handle_default_introspect_and_unlock): change to be _and_unlock instead of _unlocked * dbus/dbus-connection.c (_dbus_connection_send_preallocated_unlocked_no_update): rename to have no_update so we can find this bug quickly in future glib/dbus-gthread.c | 2 ++ 1 files changed, 2 insertions(+), 0 deletions(-) commit 116d931394d42412595e64185cd9cb97444cd653 Author: Havoc Pennington Date: Sat Feb 5 04:15:57 2005 +0000 2005-02-04 Havoc Pennington * glib/dbus-gproxy.c (dbus_g_proxy_disconnect_signal): use g_quark_try_string() so it actually can return 0 (dbus_g_proxy_connect_signal): ditto 2005-02-04 Havoc Pennington * glib/dbus-gproxy.c (dbus_g_proxy_emit_remote_signal): fix a bogus warning (tristring_from_message): assert cleanly on null path/interface (should not be possible though I decided later) (dbus_g_proxy_dispose): move proxy manager unregistration here (DBUS_G_PROXY_DESTROYED): add this macro, and use it in a bunch of g_return_if_fail() checks glib/dbus-gproxy.c | 59 ++++++++++++++++++++++++++++++++++++++++----------- 1 files changed, 46 insertions(+), 13 deletions(-) commit 1fdc099a4ed729871597c501a9015ec2855bebc2 Author: Havoc Pennington Date: Mon Jan 31 23:17:18 2005 +0000 2005-01-31 Havoc Pennington * glib/dbus-gproxy.c: rewrite how signals work again, this time I think it's sort of right glib/dbus-gproxy.c | 334 ++++++++++++++++++++++++++++++---------------------- 1 files changed, 194 insertions(+), 140 deletions(-) commit 463fb506e9661849d9838aedbdf4b7febe8e132e Author: Havoc Pennington Date: Mon Jan 31 02:55:12 2005 +0000 2005-01-30 Havoc Pennington * tools/dbus-names-model.c: dynamically watch NameOwnerChanged * autogen.sh: change to autotools 1.9 * glib/dbus-gproxy.c: completely change how signals work (dbus_g_proxy_add_signal): new function to specify signature of a signal (dbus_g_proxy_emit_received): marshal the dbus message to GValues, and g_warning if the incoming message has the wrong signature. glib/Makefile.am | 11 ++ glib/dbus-gmarshal.c | 89 ++++++++++++ glib/dbus-gmarshal.h | 21 +++ glib/dbus-gmarshal.list | 1 + glib/dbus-gproxy.c | 345 ++++++++++++++++++++++++++++++++++++----------- 5 files changed, 390 insertions(+), 77 deletions(-) commit c39a68d373c1f73a3bb7d0f45287cee1cd8eff55 Author: Havoc Pennington Date: Sun Jan 30 23:06:32 2005 +0000 2005-01-30 Havoc Pennington * glib/dbus-glib.c (dbus_g_pending_call_set_notify): new function (dbus_g_pending_call_cancel): new function * dbus/dbus-glib.h: move GType decls for connection/message here; * dbus/dbus-glib.c: move all the g_type and ref/unref stuff in here, just kind of rationalizing how we handle all that * tools/dbus-names-model.c: new file for a tree model listing the services on a bus * tools/dbus-tree-view.c (model_new): use proper typing on the model rows glib/dbus-glib.c | 335 ++++++++++++++++++++++++++++++++++++++++++++++++++++ glib/dbus-gmain.c | 172 --------------------------- glib/dbus-gproxy.c | 32 +----- 3 files changed, 338 insertions(+), 201 deletions(-) commit 967f6acd6c220b0be691edd18d9a636f4d16fbaf Author: Havoc Pennington Date: Sun Jan 30 20:06:52 2005 +0000 2005-01-30 Havoc Pennington * glib/dbus-gmain.c: add a custom GSource back that just checks whether the message queue has anything in it; otherwise, there are cases where we won't see messages in the queue since there was no IO visible to the glib main loop * dbus/dbus-connection-internal.h (_DBUS_DEFAULT_TIMEOUT_VALUE): increase default message timeout to 25 seconds glib/dbus-gmain.c | 93 +++++++++++++++++++++++++++++++++++++++++++++++++---- 1 files changed, 86 insertions(+), 7 deletions(-) commit af3c2731c74f014c0713a52d66027a9428c1ddaf Author: Havoc Pennington Date: Sun Jan 30 19:33:29 2005 +0000 2005-01-30 Havoc Pennington * glib/dbus-gmain.c: rewrite the main loop stuff to avoid the custom source, seems to be a lot easier to understand and work better. glib/dbus-gmain.c | 657 +++++++++++++++++++++++++---------------------------- 1 files changed, 315 insertions(+), 342 deletions(-) commit 32587c38401f16a9477f7ea7868120645d072462 Author: Havoc Pennington Date: Sun Jan 30 18:25:14 2005 +0000 2005-01-30 Havoc Pennington I think this main loop thing is conceptually broken, but here are some band aids. I'll maybe rewrite it in a minute. * glib/dbus-gmain.c (add_timeout): timeout stuff doesn't use the custom GSource, so don't pass it in; confusing (gsource_server_finalize, gsource_connection_finalize): add finalize handlers that remove all the watches. glib/dbus-gmain.c | 90 +++++++++++++++++++++++++++++++++++++++++++--------- 1 files changed, 74 insertions(+), 16 deletions(-) commit 4b7acbbfacaa37ce399df1ce616920c09750ae60 Author: Havoc Pennington Date: Sun Jan 30 07:44:08 2005 +0000 2005-01-30 Havoc Pennington * glib/dbus-gobject.c (introspect_properties): fix the XML generated * dbus/dbus-message.c (dbus_message_unref): add an in_cache flag which effectively detects the use of freed messages * glib/dbus-gobject.c (handle_introspect): modify and return the reply message instead of the incoming message * dbus/dbus-object-tree.c (handle_default_introspect_unlocked): gee, maybe it should SEND THE XML instead of just making a string and freeing it again ;-) * tools/dbus-print-message.c (print_message): improve printing of messages * configure.in: add debug-glib.service to the output glib/dbus-gobject.c | 10 +++++----- glib/dbus-gparser.c | 2 ++ 2 files changed, 7 insertions(+), 5 deletions(-) commit 71181795196712bbb64d721464f42432997c7d0c Author: Havoc Pennington Date: Sun Jan 30 05:18:44 2005 +0000 2005-01-30 Havoc Pennington dbus-viewer introspected and displayed the bus driver * dbus/dbus-object-tree.c (object_tree_test_iteration): add tests for a handler registered on "/" * dbus/dbus-object-tree.c (_dbus_decompose_path): fix to handle path "/" properly (run_decompose_tests): add tests for path decomposition * glib/dbus-gutils.c (_dbus_gutils_split_path): fix to handle "/" properly * glib/dbus-gobject.c (handle_introspect): fix quotes * test/glib/run-test.sh: support launching the bus, then running dbus-viewer * test/glib/test-service-glib.c (main): put in a trivial gobject subclass and register it on the connection * bus/driver.c (bus_driver_handle_introspect): implement introspection of the bus driver service * dbus/dbus-protocol.h: add #defines for the XML namespace, identifiers, doctype decl * bus/driver.c (bus_driver_handle_get_service_owner): handle attempts to get owner of DBUS_SERVICE_ORG_FREEDESKTOP_DBUS by returning the service unchanged. (bus_driver_handle_message): remove old check for reply_serial in method calls, now the message type deals with that (bus_driver_handle_message): handle NULL interface * glib/dbus-gproxy.c (dbus_g_proxy_get_bus_name): new function * glib/dbus-gloader-expat.c (description_load_from_string): allow -1 for len * tools/dbus-viewer.c: add support for introspecting a service on a bus * glib/dbus-gproxy.c (dbus_g_pending_call_ref): add (dbus_g_pending_call_unref): add glib/dbus-gidl.c | 14 ++++++++++ glib/dbus-gidl.h | 3 ++ glib/dbus-gloader-expat.c | 4 +++ glib/dbus-gobject.c | 16 ++++++----- glib/dbus-gproxy.c | 62 +++++++++++++++++++++++++++++++++++++++----- glib/dbus-gutils.c | 20 +++++++++----- 6 files changed, 98 insertions(+), 21 deletions(-) commit 3593b814632b482b541ccf3adb2b31887028b234 Author: Havoc Pennington Date: Sat Jan 29 20:12:21 2005 +0000 2005-01-29 Havoc Pennington * tools/dbus-tree-view.c: add support for displaying properties. (run dbus-viewer with an introspect xml file as arg, then resize the window so the tree elements show up, not sure what that is) * glib/dbus-gobject.c (handle_introspect): return org.freedesktop.Properties and org.freedesktop.Introspectable interfaces when we are introspected. * doc/dbus-specification.xml: allow empty interface name when Get/Set a property glib/dbus-gobject.c | 28 ++++++++++++++++++++++++++-- 1 files changed, 26 insertions(+), 2 deletions(-) commit 426cf6b944282d16db0d88b230627793df52f1ad Author: Havoc Pennington Date: Sat Jan 29 19:52:19 2005 +0000 2005-01-29 Havoc Pennington * glib/Makefile.am: rename dbus-glib-tool to dbus-binding-tool; though it uses glib, it could be extended for any binding in principle * glib/dbus-gobject.c (gobject_message_function): change to the new way properties work * dbus/dbus-protocol.h: add the new interfaces * doc/dbus-specification.xml: document the introspection format, Introspectable interface, and add an org.freedesktop.Properties interface. * glib/dbus-gparser.c: add support for a element * glib/dbus-gidl.c: add PropertyInfo * glib/dbus-gobject.c (handle_introspect): put the outermost outside the signal and property descriptions. (introspect_properties): export properties as rather than as method calls glib/.cvsignore | 2 +- glib/Makefile.am | 6 +- glib/dbus-gidl.c | 100 +++++++++++++++++++++++++- glib/dbus-gidl.h | 112 ++++++++++++++++------------- glib/dbus-glib-tool.c | 31 ++++++-- glib/dbus-gobject.c | 104 ++++++++++++++++++--------- glib/dbus-gparser.c | 190 +++++++++++++++++++++++++++++++++++++++++++++---- 7 files changed, 434 insertions(+), 111 deletions(-) commit 54c56014a0d2dab88f1fa3bd17a7c1fd2768c4e9 Author: Havoc Pennington Date: Fri Jan 28 03:06:55 2005 +0000 2005-01-27 Havoc Pennington * dbus/dbus-arch-deps.h.in: add 16/32-bit types * configure.in: find the right type for 16 and 32 bit ints as well as 64 * dbus/dbus-protocol.h (DBUS_TYPE_INT16, DBUS_TYPE_UINT16): add the 16-bit types so people don't have to stuff them in 32-bit or byte arrays. glib/dbus-gparser.c | 4 ++++ glib/dbus-gutils.c | 4 ++++ glib/dbus-gvalue.c | 29 +++++++++++++++++++++++------ 3 files changed, 31 insertions(+), 6 deletions(-) commit 459e046b1ca4bdd06d85458fd4f213354833d1ed Author: Havoc Pennington Date: Fri Jan 21 05:06:10 2005 +0000 2005-01-21 Havoc Pennington * glib/dbus-gmain.c: don't put the GLib bindings in the same toplevel doxygen group as the low-level API stuff * dbus/dbus.h: note that libdbus is the low-level API glib/dbus-gmain.c | 12 +++++++----- 1 files changed, 7 insertions(+), 5 deletions(-) commit 8cecb5bad77434129fc751c2ace45c389f46ef0d Author: Havoc Pennington Date: Tue Jan 18 20:42:15 2005 +0000 2005-01-18 Havoc Pennington * Throughout, grand renaming to strip out the use of "service", just say "name" instead (or "bus name" when ambiguous). Did not change the internal code of the message bus itself, only the programmer-facing API and messages. * doc/dbus-specification.xml: further update the message bus section * bus/config-parser.c (all_are_equiv): fix bug using freed string in error case glib/dbus-gproxy.c | 171 +++++++++++++++++++++++++++------------------------- 1 files changed, 88 insertions(+), 83 deletions(-) commit 40c882bcb60faeee24e3e887f3503e9ecb878166 Author: Havoc Pennington Date: Mon Jan 17 19:49:52 2005 +0000 2005-01-17 Havoc Pennington * dbus/dbus-types.h: hardcode dbus_bool_t to 32 bits * Throughout: modify DBUS_TYPE_BOOLEAN to be a 32-bit type instead of an 8-bit type. Now dbus_bool_t is the type to use whenever you are marshaling/unmarshaling a boolean. glib/dbus-gvalue.c | 4 +++- 1 files changed, 3 insertions(+), 1 deletions(-) commit c8c3d8a243f6b284b3aa46352afb9fb913f09f78 Author: Havoc Pennington Date: Sun Jan 16 15:51:55 2005 +0000 2005-01-16 Havoc Pennington * Add and fix docs according to Doxygen warnings throughout source. * dbus/dbus-marshal-recursive.c (_dbus_type_reader_array_is_empty): change this to just call array_reader_get_array_len() and make it static * dbus/dbus-message.c (dbus_message_iter_get_element_type): rename from get_array_type (dbus_message_iter_init_append): rename from append_iter_init * dbus/dbus-marshal-recursive.c (_dbus_type_reader_get_element_type): rename from _dbus_type_reader_get_array_type glib/dbus-glib.c | 2 +- glib/dbus-gobject.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) commit e116119209a507a5ba305e890f897d31e5b626e1 Author: Havoc Pennington Date: Sat Jan 15 07:15:38 2005 +0000 2005-01-15 Havoc Pennington * Land the new message args API and type system. This patch is huge, but the public API change is not really large. The set of D-BUS types has changed somewhat, and the arg "getters" are more geared toward language bindings; they don't make a copy, etc. There are also some known issues. See these emails for details on this huge patch: http://lists.freedesktop.org/archives/dbus/2004-December/001836.html http://lists.freedesktop.org/archives/dbus/2005-January/001922.html * dbus/dbus-marshal-*: all the new stuff * dbus/dbus-message.c: basically rewritten * dbus/dbus-memory.c (check_guards): with "guards" enabled, init freed blocks to be all non-nul bytes so using freed memory is less likely to work right * dbus/dbus-internals.c (_dbus_test_oom_handling): add DBUS_FAIL_MALLOC=N environment variable, so you can do DBUS_FAIL_MALLOC=0 to skip the out-of-memory checking, or DBUS_FAIL_MALLOC=10 to make it really, really, really slow and thorough. * qt/message.cpp: port to the new message args API (operator<<): use str.utf8() rather than str.unicode() (pretty sure this is right from the Qt docs?) * glib/dbus-gvalue.c: port to the new message args API * bus/dispatch.c, bus/driver.c: port to the new message args API * dbus/dbus-string.c (_dbus_string_init_const_len): initialize the "locked" flag to TRUE and align_offset to 0; I guess we never looked at these anyhow, but seems cleaner. * dbus/dbus-string.h (_DBUS_STRING_ALLOCATION_PADDING): move allocation padding macro to this header; use it to implement (_DBUS_STRING_STATIC): ability to declare a static string. * dbus/dbus-message.c (_dbus_message_has_type_interface_member): change to return TRUE if the interface is not set. * dbus/dbus-string.[hc]: move the D-BUS specific validation stuff to dbus-marshal-validate.[hc] * dbus/dbus-marshal-basic.c (_dbus_type_to_string): move here from dbus-internals.c * dbus/Makefile.am: cut over from dbus-marshal.[hc] to dbus-marshal-*.[hc] * dbus/dbus-object-tree.c (_dbus_decompose_path): move this function here from dbus-marshal.c glib/dbus-gobject.c | 2 +- glib/dbus-gproxy.c | 7 +- glib/dbus-gutils.c | 24 ++++--- glib/dbus-gvalue.c | 186 ++++++++++++++++++++++++++++++++++++++------------- 4 files changed, 156 insertions(+), 63 deletions(-) commit 62f29fd0fea8e1eaa3e61db44ddd1eeba765f153 Author: Havoc Pennington Date: Sat Nov 13 07:07:46 2004 +0000 2004-11-13 Havoc Pennington * test/glib/test-profile.c: fix this thing up a bit * dbus/dbus-message.c (dbus_message_new_empty_header): increase preallocation sizes by a fair bit; not sure if this will be an overall performance win or not, but it does reduce reallocs. * dbus/dbus-string.c (set_length, reallocate_for_length): ignore the test hack that forced constant realloc if asserts are disabled, so we can profile sanely. Sprinkle in some _DBUS_UNLIKELY() which are probably pointless, but before I noticed the real performance problem I put them in. (_dbus_string_validate_utf8): micro-optimize this thing a little bit, though callgrind says it didn't help; then special-case ascii, which did help a lot; then be sure we detect nul bytes as invalid, which is a bugfix. (align_length_then_lengthen): add some more _DBUS_UNLIKELY superstition; use memset to nul the padding instead of a manual loop. (_dbus_string_get_length): inline this as a macro; it showed up in the profile because it's used for loop tests and so forth glib/dbus-gmain.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) commit 0ab857b2916731f92be856c6821d5c9950716f89 Author: Olivier Andrieu Date: Thu Oct 7 09:56:01 2004 +0000 * dbus/dbus-sysdeps.c (_dbus_file_get_contents): fix an incorrect format string. * glib/dbus-dbus-gmain.c (dbus_g_bus_get): do not mangle NULL pointer (bug #1540, Leonardo Boiko). glib/dbus-gmain.c | 9 ++++----- 1 files changed, 4 insertions(+), 5 deletions(-) commit 4b50c510605d5dda629c9d493a61611bb382a55d Author: Havoc Pennington Date: Tue Aug 10 03:06:59 2004 +0000 2004-08-09 Havoc Pennington * COPYING: switch to Academic Free License version 2.1 instead of 2.0, to resolve complaints about patent termination clause. glib/dbus-gidl.c | 2 +- glib/dbus-gidl.h | 2 +- glib/dbus-glib-tool.c | 2 +- glib/dbus-glib.c | 2 +- glib/dbus-gloader-expat.c | 2 +- glib/dbus-gmain.c | 2 +- glib/dbus-gobject.c | 2 +- glib/dbus-gparser.c | 2 +- glib/dbus-gparser.h | 2 +- glib/dbus-gproxy.c | 4 ++-- glib/dbus-gtest-main.c | 2 +- glib/dbus-gtest.c | 2 +- glib/dbus-gtest.h | 2 +- glib/dbus-gthread.c | 2 +- glib/dbus-gtool-test.h | 2 +- glib/dbus-gutils.c | 2 +- glib/dbus-gutils.h | 2 +- 17 files changed, 18 insertions(+), 18 deletions(-) commit 301a3547a2efd9784fa3ab253373fa689c9bd1c3 Author: Olivier Andrieu Date: Thu Jul 29 08:00:45 2004 +0000 * bus/config-loader-libxml.c: complete the implementation of libxml backend for config file loader. Doesn't work with full OOM test yet. * configure.in: change error when selecting libxml into a warning. * test/data/invalid-config-files: add two non-well-formed XML files. * glib/Makefile.am: libdbus_gtool always uses expat, not libxml. * dbus/dbus-transport-unix.c (unix_handle_watch): do not disconnect in case of DBUS_WATCH_HANGUP, several do_reading() may be necessary to read all the buffer. (bug #894) * bus/activation.c (bus_activation_activate_service): fix a potential assertion failure (bug #896). Small optimization in the case of auto-activation messages. * dbus/dbus-message.c (verify_test_message, _dbus_message_test): add test case for byte-through-vararg bug (#901). patch by Kimmo Hämäläinen. glib/Makefile.am | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit ef7e145899ce58a5df564127783f014d8bed233f Author: Havoc Pennington Date: Sun Jun 20 15:28:14 2004 +0000 2004-06-20 Havoc Pennington * dbus/dbus-glib-error-enum.h: autogenerate the GError enum codes from the dbus error names * glib/dbus-glib.h: move to subdir dbus/ since it's included as dbus/dbus-glib.h and that breakage is now visible due to including dbus/dbus-glib.h in dbus-glib-lowlevel.h * glib/dbus-glib.h: s/gproxy/g_proxy/ * dbus/dbus-shared.h: new header to hold stuff shared with binding APIs * dbus/dbus-protocol.h (DBUS_ERROR_*): move errors here rather than dbus-errors.h * glib/dbus-glib.h (dbus_set_g_error): move to dbus-glib-lowlevel.h * glib/dbus-glib.h: remove dbus/dbus.h from here; change a bunch of stuff to enable this * dbus/dbus-glib-lowlevel.h: put dbus/dbus.h here * a bunch of other changes with the same basic "separate glib bindings from dbus.h" theme glib/Makefile.am | 6 +- glib/dbus-gidl.c | 2 +- glib/dbus-glib-tool.c | 2 +- glib/dbus-glib.c | 67 ++++++++++++++ glib/dbus-glib.h | 159 -------------------------------- glib/dbus-gmain.c | 121 +++++++++++++++++++++++-- glib/dbus-gobject.c | 17 ++-- glib/dbus-gproxy.c | 237 +++++++++++++++++++++++++----------------------- glib/dbus-gtest.c | 4 + glib/dbus-gtest.h | 9 +- glib/dbus-gthread.c | 3 +- glib/dbus-gtool-test.h | 4 +- glib/dbus-gutils.c | 2 +- glib/dbus-gutils.h | 15 +++ 14 files changed, 342 insertions(+), 306 deletions(-) commit 9426e419227a721a8b7b04661ec133cb93c389e5 Author: Olivier Andrieu Date: Sat Jun 5 16:32:00 2004 +0000 2004-06-05 Olivier Andrieu * dbus/dbus-connection.h, dbus/dbus-connection.c: have object path registration functions take the path argument as char* instead of char**. * dbus/dbus-marshal.h, dbus/dbus-marshal.c (_dbus_decompose_path): split off the path decompostion part of _dbus_demarshal_object_path. Some misc. fixes to silence compiler warnings. * glib/dbus-gobject.c, test/test-service.c: update accordingly. glib/dbus-gobject.c | 16 +++------------- 1 files changed, 3 insertions(+), 13 deletions(-) commit b2a4e237f907acd5127f85d0e2110b32d8a7ea86 Author: Kristian Hogsberg Date: Wed Jun 2 13:13:14 2004 +0000 2004-06-02 Kristian Hÿÿgsberg * glib/dbus-gproxy.c, glib/dbus-gmain.c, dbus/dbus-string.c, dbus/dbus-object-tree.c, dbus/dbus-message.c: add comments to quiet doxygen. * Doxyfile.in: remove deprecated options. * dbus/dbus-message-handler.c, dbus/dbus-message-handler.h, glib/test-thread.h, glib/test-thread-client.c, glib/test-thread-server.c, glib/test-profile.c, glib/test-dbus-glib.c: remove these unused files. glib/dbus-gmain.c | 12 ++- glib/dbus-gproxy.c | 32 +++++- glib/test-dbus-glib.c | 50 --------- glib/test-profile.c | 223 ---------------------------------------- glib/test-thread-client.c | 95 ----------------- glib/test-thread-server.c | 248 --------------------------------------------- glib/test-thread.h | 1 - 7 files changed, 36 insertions(+), 625 deletions(-) commit 05a2332400f9e23d84e7376b9908f19a59868d5d Author: Havoc Pennington Date: Tue Jun 1 03:02:26 2004 +0000 2004-05-31 Havoc Pennington * glib/dbus-gidl.c (method_info_add_arg): keep args sorted with "in" before "out" * glib/dbus-gobject.c (dbus_type_to_string): move to dbus-gutils.c * glib/dbus-glib-tool.c (main): set up to have a --self-test option that runs the tests, and start filling in some code including for starters just dumping the interfaces to stdout * glib/Makefile.am (INCLUDES): define DBUS_LOCALEDIR * test/data/valid-introspection-files/lots-of-types.xml: test of an example introspection file * glib/dbus-gparser.c (parser_check_doctype): doctype should be "node" (I think...) glib/Makefile.am | 9 +- glib/dbus-gidl.c | 25 +++++ glib/dbus-glib-tool.c | 280 ++++++++++++++++++++++++++++++++++++++++++++++--- glib/dbus-glib.h | 5 +- glib/dbus-gobject.c | 36 +------ glib/dbus-gparser.c | 4 +- glib/dbus-gutils.c | 34 ++++++ glib/dbus-gutils.h | 4 +- 8 files changed, 338 insertions(+), 59 deletions(-) commit c02ba470d7a212d7c51777c467eae808dd954f2f Author: Havoc Pennington Date: Fri May 28 22:30:04 2004 +0000 2004-05-28 Havoc Pennington * test/glib/test-service-glib.c (main): remove unused variable * glib/dbus-gidl.c (base_info_ref): fix a silly compiler warning * dbus/dbus-auth.h (enum): remove AUTHENTICATED_WITH_UNUSED_BYTES from the enum, no longer in use. * dbus/dbus-sysdeps.h: include config.h so DBUS_VA_COPY actually works right. * dbus/dbus-message.c: add various _dbus_return_val_if_fail for whether error_name passed in is a valid error name. glib/dbus-gidl.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) commit 1400b16528f4d0d8f6a60b199e5799eadb0ff0ea Author: Michael Meeks Date: Fri May 28 13:10:35 2004 +0000 2004-05-28 Michael Meeks * glib/dbus-gvalue.c (dbus_gvalue_marshal, dbus_gvalue_demarshal): fix no int64 case. * dbus/dbus-string.c (_dbus_string_parse_basic_type): impl. * dbus/dbus-message.c (_dbus_message_iter_get_basic_type), (_dbus_message_iter_get_basic_type_array): impl. drastically simplify ~all relevant _get methods to use these. (_dbus_message_iter_append_basic_array), (dbus_message_iter_append_basic): impl drastically simplify ~all relevant _append methods to use these. * dbus/dbus-message-builder.c (parse_basic_type) (parse_basic_array, lookup_basic_type): impl. (_dbus_message_data_load): prune scads of duplicate / cut & paste coding. * dbus/dbus-marshal.c (_dbus_demarshal_basic_type_array) (_dbus_demarshal_basic_type): implement, (demarshal_and_validate_len/arg): beef up debug. (_dbus_marshal_basic_type, _dbus_marshal_basic_type_array): impl. glib/dbus-gvalue.c | 4 ++++ 1 files changed, 4 insertions(+), 0 deletions(-) commit 7866137fa3b028e7a8e22f03998754c0967e1501 Author: Olivier Andrieu Date: Thu Apr 15 22:08:04 2004 +0000 2004-04-15 Olivier Andrieu * bus/driver.c (bus_driver_handle_get_service_owner): implement a GetServiceOwner method. * doc/dbus-specification.xml: document it. * dbus/dbus-errors.h: add a 'ServiceHasNoOwner' error. * glib/dbus-gproxy.c (dbus_gproxy_new_for_service_owner): implement, using the bus GetServiceOwner method. * test/glib/test-dbus-glib.c: use dbus_gproxy_new_for_service_owner so that we can receive the signal. glib/dbus-gproxy.c | 55 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 55 insertions(+), 0 deletions(-) commit e03a715a21237d70233d40a393958ec7d3d4027d Author: Michael Meeks Date: Tue Apr 13 11:47:17 2004 +0000 2004-04-13 Michael Meeks * glib/dbus-gobject.c (handle_introspect): split out (introspect_properties): this. (handle_introspect): implement this. glib/dbus-gobject.c | 123 ++++++++++++++++++++++++++++++++++----------------- 1 files changed, 82 insertions(+), 41 deletions(-) commit e7e5d9377e54b9d26a59402197d26bb575c15976 Author: Michael Meeks Date: Mon Mar 29 13:24:50 2004 +0000 2004-03-29 Michael Meeks * glib/dbus-gobject.c (set_object_property): split out / re-work, use the property type, and not the message type(!) (get_object_property): ditto. * glib/dbus-gvalue.c (dbus_gvalue_demarshal), (dbus_gvalue_marshal): make this code re-usable, needed for signals too, also on both proxy and server side. Re-write for more efficiency / readability. glib/Makefile.am | 4 +- glib/dbus-gobject.c | 187 ++------------------------------------------------ glib/dbus-gvalue.c | 115 +++++++++++++++++++++++++++++++ glib/dbus-gvalue.h | 16 +++++ 4 files changed, 142 insertions(+), 180 deletions(-) commit 82d9c846687c428fde8e517ca38d69642de9a66a Author: Richard Hult Date: Tue Dec 2 10:44:21 2003 +0000 2003-12-02 Richard Hult * Update AFL version to 2.0 throughout the source files to reflect the update that was done a while ago. glib/dbus-gidl.c | 2 +- glib/dbus-gidl.h | 2 +- glib/dbus-glib-tool.c | 2 +- glib/dbus-glib.h | 2 +- glib/dbus-gloader-expat.c | 2 +- glib/dbus-gmain.c | 2 +- glib/dbus-gobject.c | 2 +- glib/dbus-gparser.c | 2 +- glib/dbus-gparser.h | 2 +- glib/dbus-gproxy.c | 2 +- glib/dbus-gtest-main.c | 2 +- glib/dbus-gtest.c | 2 +- glib/dbus-gtest.h | 2 +- glib/dbus-gthread.c | 2 +- glib/dbus-gtool-test.h | 2 +- glib/dbus-gutils.c | 2 +- glib/dbus-gutils.h | 2 +- glib/test-profile.c | 2 +- 18 files changed, 18 insertions(+), 18 deletions(-) commit 64858892747bea931226f39dad9e063475bf3c89 Author: Mikael Hallendal Date: Thu Nov 27 01:25:49 2003 +0000 2003-11-26 Mikael Hallendal * bus/*.[ch]: * dbus/*.[ch]: * glib/*.[ch]: Made ref functions return the pointer glib/dbus-gidl.c | 24 ++++++++++++++++++------ glib/dbus-gidl.h | 12 ++++++------ glib/dbus-gmain.c | 4 +++- glib/dbus-gparser.c | 4 +++- glib/dbus-gparser.h | 2 +- glib/dbus-gproxy.c | 6 ++++-- 6 files changed, 35 insertions(+), 17 deletions(-) commit f130073ef0a107d0b57695720f5a94d0e17ce38f Author: Havoc Pennington Date: Tue Oct 21 05:46:51 2003 +0000 2003-10-20 Havoc Pennington hmm, make check is currently not passing. * doc/dbus-specification.xml: add requirement that custom type names follow the same rules as interface names. * dbus/dbus-protocol.h: change some of the byte codes, to avoid duplication and allow 'c' to be 'custom'; dict is now 'm' for 'map' * doc/dbus-specification.xml: update type codes to match dbus-protocol.h, using the ASCII byte values. Rename type NAMED to CUSTOM. Add type OBJECT_PATH to the spec. 2003-10-17 Havoc Pennington * bus/driver.c (create_unique_client_name): use "." as separator in base service names instead of '-' * dbus/dbus-string.c (_dbus_string_get_byte): allow getting nul byte at the end of the string * dbus/dbus-internals.h (_DBUS_LIKELY, _DBUS_UNLIKELY): add optimization macros since string validation seems to be a slow point. * doc/dbus-specification.xml: restrict valid service/interface/member/error names. Add test suite code for the name validation. * dbus/dbus-string.c: limit service/interface/member/error names to [0-9][A-Z][a-z]_ * dbus/dbus-connection.c (dbus_connection_dispatch): add missing format arg to verbose spew * glib/dbus-gproxy.c (dbus_gproxy_call_no_reply): if not out of memory, return instead of g_error * test/test-service.c (path_message_func): support emitting a signal on request * dbus/dbus-bus.c (init_connections_unlocked): only fill in activation bus type if DBUS_BUS_ACTIVATION was set; default to assuming the activation bus was the session bus so that services started manually will still register. (init_connections_unlocked): fix so that in OOM situation we get the same semantics when retrying the function * test/test-service.c (main): change to use path registration, to test those codepaths; register with DBUS_BUS_ACTIVATION rather than DBUS_BUS_SESSION glib/dbus-gobject.c | 4 ++-- glib/dbus-gproxy.c | 12 +++++++++++- 2 files changed, 13 insertions(+), 3 deletions(-) commit 756f88a96232ae730faca81feeb30fcd07458df9 Author: Havoc Pennington Date: Fri Oct 17 16:23:19 2003 +0000 2003-10-16 Havoc Pennington * glib/dbus-gtest-main.c: bracket with #ifdef DBUS_BUILD_TESTS * Makefile.am (GCOV_DIRS): remove "test", we don't care about test coverage of the tests (coverage-report.txt): don't move the .da and .bbg files around glib/dbus-gtest-main.c | 5 +++++ 1 files changed, 5 insertions(+), 0 deletions(-) commit aa0c367ff5214ddbb2578e5b290cfae6aa472a0d Author: Havoc Pennington Date: Thu Oct 16 06:34:50 2003 +0000 2003-10-16 Havoc Pennington * bus/connection.c (bus_pending_reply_expired): either cancel or execute, not both (bus_connections_check_reply): use unlink, not remove_link, as we don't want to free the link; fixes double free mess * dbus/dbus-pending-call.c (dbus_pending_call_block): fix in case where no reply was received * dbus/dbus-connection.c (_dbus_pending_call_complete_and_unlock): fix a refcount leak * bus/signals.c (match_rule_matches): add special cases for the bus driver, so you can match on sender/destination for it. * dbus/dbus-sysdeps.c (_dbus_abort): print backtrace if DBUS_PRINT_BACKTRACE is set * dbus/dbus-internals.c: add pid to assertion failure messages * dbus/dbus-connection.c: add message type code to the debug spew * glib/dbus-gproxy.c (gproxy_get_match_rule): match rules want sender=foo not service=foo * dbus/dbus-bus.c (dbus_bus_get): if the activation bus is the session bus but DBUS_SESSION_BUS_ADDRESS isn't set, use DBUS_ACTIVATION_ADDRESS instead * bus/activation.c: set DBUS_SESSION_BUS_ADDRESS, DBUS_SYSTEM_BUS_ADDRESS if appropriate * bus/bus.c (bus_context_new): handle OOM copying bus type into context struct * dbus/dbus-message.c (dbus_message_iter_get_object_path): new function (dbus_message_iter_get_object_path_array): new function (half finished, disabled for the moment) * glib/dbus-gproxy.c (dbus_gproxy_end_call): properly handle DBUS_MESSAGE_TYPE_ERROR * tools/dbus-launch.c (babysit): support DBUS_DEBUG_OUTPUT to avoid redirecting stderr to /dev/null (babysit): close stdin if not doing the "exit_with_session" thing * dbus/dbus-sysdeps.c (_dbus_become_daemon): delete some leftover debug code; change DBUS_DEBUG_OUTPUT to only enable stderr, not stdout/stdin, so things don't get confused * bus/system.conf.in: fix to allow replies, I modified .conf instead of .conf.in again. glib/dbus-gproxy.c | 26 ++++++++++++++++++++------ 1 files changed, 20 insertions(+), 6 deletions(-) commit 33689cc9f76ff14f77ba9b9d6e17094991fc2ba1 Author: Havoc Pennington Date: Sun Oct 12 05:59:39 2003 +0000 2003-10-12 Havoc Pennington Added test code that 1) starts an actual bus daemon and 2) uses DBusGProxy; fixed bugs that were revealed by the test. Lots more testing possible, but this is the basic framework. * glib/dbus-gproxy.c (dbus_gproxy_manager_unregister): remove empty proxy lists from the proxy list hash * dbus/dbus-message.c (dbus_message_iter_get_args_valist): add a couple of return_if_fail checks * dbus/dbus-pending-call.c (_dbus_pending_call_new): use dbus_new0 to allocate, so everything is cleared to NULL as it should be. * glib/dbus-gmain.c (dbus_connection_setup_with_g_main): pass source as data to dbus_connection_set_timeout_functions() as the timeout functions expected * test/glib/run-test.sh: add a little script to start up a message bus and run tests using it * tools/dbus-launch.1: updates * tools/dbus-launch.c (main): add --config-file option * tools/dbus-launch.c (main): remove confusing else if (runprog) that could never be reached. * dbus/dbus-message.c (dbus_message_new_method_return) (dbus_message_new_error, dbus_message_new_signal): set the no-reply-expected flag on all these. Redundant, but may as well be consistent. glib/dbus-gmain.c | 2 +- glib/dbus-gproxy.c | 17 ++++++++++++----- 2 files changed, 13 insertions(+), 6 deletions(-) commit 6741526f3dedd835d9f0d7ae4beaa097016b0b9e Author: Havoc Pennington Date: Fri Oct 3 03:55:35 2003 +0000 2003-10-02 Havoc Pennington * glib/dbus-gproxy.c (dbus_gproxy_call_no_reply): rename from dbus_gproxy_oneway_call * glib/dbus-gmain.c (dbus_connection_setup_with_g_main) (dbus_server_setup_with_g_main): fix to allow calling them more than once on the same args (dbus_bus_get_with_g_main): new function glib/dbus-glib.h | 14 ++++--- glib/dbus-gmain.c | 99 ++++++++++++++++++++++++++++++++++++++++++++------- glib/dbus-gproxy.c | 8 ++-- 3 files changed, 97 insertions(+), 24 deletions(-) commit b05fc993d8d813ca93fa2c49e4c8b7345613c8e0 Author: Havoc Pennington Date: Tue Sep 30 02:32:48 2003 +0000 2003-09-29 Havoc Pennington * Merge dbus-object-names branch. To see the entire patch do cvs diff -r DBUS_OBJECT_NAMES_BRANCHPOINT -r dbus-object-names, it's huuuuge though. To revert, I tagged DBUS_BEFORE_OBJECT_NAMES_MERGE. 2003-09-28 Havoc Pennington * HACKING: update to reflect new server 2003-09-26 Seth Nickell * python/dbus.py: * python/examples/example-signals.py: Start implementing some notions of signals. The API is really terrible, but they sort of work (with the exception of being able to filter by service, and to transmit signals *as* a particular service). Need to figure out how to make messages come from the service we registered :-( * python/dbus_bindings.pyx.in: Removed duplicate message_handler callbacks. 2003-09-25 Havoc Pennington * bus/session.conf.in: fix my mess 2003-09-25 Havoc Pennington * bus/session.conf.in: fix security policy, reported by Seth Nickell 2003-09-25 Seth Nickell * python/examples/example-service.py: Johan notices complete wrong code in example-service, but completely wrong in a way that works exactly the same (!). Johan is confused, how could this possibly work? Example code fails to serve purpose of making things clear. Seth fixes. 2003-09-25 Mark McLoughlin * doc/dbus-specification.sgml: don't require header fields to be 4-byte aligned and specify that fields should be distinguished from padding by the fact that zero is not a valid field name. * doc/TODO: remove re-alignment item and add item to doc the OBJECT_PATH type. * dbus/dbus-message.c: (HeaderField): rename the original member to value_offset and introduce a name_offset member to keep track of where the field actually begins. (adjust_field_offsets): remove. (append_int_field), (append_uint_field), (append_string_field): don't align the start of the header field to a 4-byte boundary. (get_next_field): impl finding the next marhsalled field after a given field. (re_align_field_recurse): impl re-aligning a number of already marshalled fields. (delete_field): impl deleting a field of any type and re-aligning any following fields. (delete_int_or_uint_field), (delete_string_field): remove. (set_int_field), (set_uint_field): no need to re-check that we have the correct type for the field. (set_string_field): ditto and impl re-aligning any following fields. (decode_header_data): update to take into account that the fields aren't 4-byte aligned any more and the new way to distinguish padding from header fields. Also, don't exit when there is too much header padding. (process_test_subdir): print the directory. (_dbus_message_test): add test to make sure a following field is re-aligned correctly after field deletion. * dbus/dbus-string.[ch]: (_dbus_string_insert_bytes): rename from insert_byte and allow the insert of multiple bytes. (_dbus_string_test): test inserting multiple bytes. * dbus/dbus-marshal.c: (_dbus_marshal_set_string): add warning note to docs about having to re-align any marshalled values following the string. * dbus/dbus-message-builder.c: (append_string_field), (_dbus_message_data_load): don't align the header field. * dbus/dbus-auth.c: (process_test_subdir): print the directory. * test/break-loader.c: (randomly_add_one_byte): upd. for insert_byte change. * test/data/invalid-messages/bad-header-field-alignment.message: new test case. * test/data/valid-messages/unknown-header-field.message: shove a dict in the unknown field. 2003-09-25 Seth Nickell * python/dbus.py: * python/dbus_bindings.pyx.in: Handle return values. * python/examples/example-client.py: * python/examples/example-service.py: Pass back return values from the service to the client. 2003-09-24 Seth Nickell * python/dbus.py: Connect Object methods (when you are sharing an object) up... pass in a list of methods to be shared. Sharing all the methods just worked out too weird. You can now create nice Services over the DBus in Python. :-) * python/dbus_bindings.pyx.in: Keep references to user_data tuples passed into C functions so Python doesn't garbage collect on us. Implement MethodReturn and Error subclasses of Message for creating DBusMessage's of those types. * python/examples/example-client.py: * python/examples/example-service.py: Simple example code showing both how create DBus services and objects, and how to use them. 2003-09-23 Havoc Pennington * glib/dbus-gproxy.c (dbus_gproxy_manager_filter): implement 2003-09-23 Havoc Pennington * glib/dbus-gproxy.c (dbus_gproxy_connect_signal): implement (dbus_gproxy_disconnect_signal): implement (dbus_gproxy_manager_remove_signal_match): implement (dbus_gproxy_manager_add_signal_match): implement (dbus_gproxy_oneway_call): implement 2003-09-23 Havoc Pennington * glib/dbus-gproxy.c (struct DBusGProxy): convert to a GObject subclass. This means dropping the transparent thread safety of the proxy; you now need a separate proxy per-thread, or your own locking on the proxy. Probably right anyway. (dbus_gproxy_ref, dbus_gproxy_unref): nuke, just use g_object_ref 2003-09-22 Havoc Pennington * glib/dbus-gproxy.c (dbus_gproxy_manager_get): implement 2003-09-21 Seth Nickell First checkin of the Python bindings. * python/.cvsignore: * python/Makefile.am: * python/dbus_bindings.pyx.in: * python/dbus_h_wrapper.h: Pieces for Pyrex to operate on, building a dbus_bindings.so python module for low-level access to the DBus APIs. * python/dbus.py: High-level Python module for accessing DBus objects. * configure.in: * Makefile.am: Build stuff for the python bindings. * acinclude.m4: Extra macro needed for finding the Python C header files. 2003-09-21 Havoc Pennington * glib/dbus-gproxy.c (dbus_gproxy_manager_new): start implementing the proxy manager, didn't get very far. * dbus/dbus-bus.c (dbus_bus_add_match): new (dbus_bus_remove_match): new * glib/dbus-gproxy.c (dbus_gproxy_new_for_service): add a path_name argument; adjust the other not-yet-implemented gproxy constructors to be what I think they should be. 2003-09-21 Havoc Pennington * dbus/dbus-bus.c (dbus_bus_get): set exit_on_disconnect to TRUE by default for message bus connections. * dbus/dbus-connection.c (dbus_connection_dispatch): exit if exit_on_disconnect flag is set and we process the disconnected signal. (dbus_connection_set_exit_on_disconnect): new function 2003-09-21 Havoc Pennington Get matching rules mostly working in the bus; only actually parsing the rule text remains. However, the client side of "signal connections" hasn't been started, this patch is only the bus side. * dbus/dispatch.c: fix for the matching rules changes * bus/driver.c (bus_driver_handle_remove_match) (bus_driver_handle_add_match): send an ack reply from these method calls * glib/dbus-gproxy.c (dbus_gproxy_begin_call): fix order of arguments, reported by Seth Nickell * bus/config-parser.c (append_rule_from_element): support eavesdrop=true|false attribute on policies so match rules can be prevented from snooping on the system bus. * bus/dbus-daemon-1.1.in: consistently use terminology "sender" and "destination" in attribute names; fix some docs bugs; add eavesdrop=true|false attribute * bus/driver.c (bus_driver_handle_add_match) (bus_driver_handle_remove_match): handle AddMatch, RemoveMatch messages * dbus/dbus-protocol.h (DBUS_SERVICE_ORG_FREEDESKTOP_BROADCAST): get rid of broadcast service concept, signals are just always broadcast * bus/signals.c, bus/dispatch.c, bus/connection.c, bus/bus.c: mostly implement matching rules stuff (currently only exposed as signal connections) 2003-09-21 Mark McLoughlin * doc/dbus-specification.sgml: Change the header field name to be an enum and update the rest of the spec to reference the fields using the conventinal name. * dbus/dbus-protocol.h: update to reflect the spec. * doc/TODO: add item to remove the 4 byte alignment requirement. * dbus/dbus-message.c: Remove the code to generalise the header/body length and serial number header fields as named header fields so we can reference field names using the protocol values. (append_int_field), (append_uint_field), (append_string_field): Append the field name as a byte rather than four chars. (delete_int_or_uint_field), (delete_string_field): reflect the fact that the field name and typecode now occupy 4 bytes instead of 8. (decode_string_field), (decode_header_data): update to reflect protocol changes and move the field specific encoding from decode_string_field() back into decode_header_data(). * dbus/dbus-internals.[ch]: (_dbus_header_field_to_string): Add utility to aid debugging. * dbus/dbus-message-builder.c: (append_string_field), (_dbus_message_data_load): Update to reflect protocol changes; Change the FIELD_NAME directive to HEADER_FIELD and allow it to take the field's conventional name rather than the actual value. * test/data/*/*.message: Update to use HEADER_FIELD instead of FIELD_NAME; Always align the header on an 8 byte boundary *before* updating the header length. 2003-09-15 Havoc Pennington * dbus/dbus-pending-call.c: add the get/set object data boilerplate as for DBusConnection, etc. Use generic object data for the notify callback. * glib/dbus-gparser.c (parse_node): parse child nodes * tools/dbus-viewer.c: more hacking on the dbus-viewer * glib/dbus-gutils.c (_dbus_gutils_split_path): add a file to contain functions shared between the convenience lib and the installed lib * glib/Makefile.am (libdbus_glib_1_la_LDFLAGS): add -export-symbols-regex to the GLib library * dbus/dbus-object-tree.c (_dbus_object_tree_dispatch_and_unlock): fix the locking in here, and add a default handler for Introspect() that just returns sub-nodes. 2003-09-14 Havoc Pennington * glib/dbus-gthread.c (dbus_g_thread_init): rename to make g_foo rather than gfoo consistent * glib/dbus-gproxy.h: delete for now, move contents to dbus-glib.h, because the include files don't work right since we aren't in the dbus/ subdir. * glib/dbus-gproxy.c (dbus_gproxy_send): finish implementing (dbus_gproxy_end_call): finish (dbus_gproxy_begin_call): finish * glib/dbus-gmain.c (dbus_set_g_error): new * glib/dbus-gobject.c (handle_introspect): include information about child nodes in the introspection * dbus/dbus-connection.c (dbus_connection_list_registered): new function to help in implementation of introspection * dbus/dbus-object-tree.c (_dbus_object_tree_list_registered_and_unlock): new function 2003-09-12 Havoc Pennington * glib/dbus-gidl.h: add common base class for all the foo_info types * tools/dbus-viewer.c: add GTK-based introspection UI thingy similar to kdcop * test/Makefile.am: try test srcdir -ef . in addition to test srcdir = ., one of them should work (yeah lame) * glib/Makefile.am: build the "idl" parser stuff as a convenience library * glib/dbus-gparser.h: make description_load routines return NodeInfo* not Parser* * Makefile.am (SUBDIRS): build test dir after all library dirs * configure.in: add GTK+ detection 2003-09-07 Havoc Pennington * Make Doxygen contented. 2003-09-07 Havoc Pennington * doc/dbus-specification.sgml: more updates 2003-09-06 Havoc Pennington * doc/dbus-specification.sgml: partial updates * bus/dbus-daemon-1.1.in: fix the config file docs for the zillionth time; hopefully I edited the right file this time. * bus/config-parser.c (append_rule_from_element): support send_type, send_path, receive_type, receive_path * bus/policy.c: add message type and path to the list of things that can be "firewalled" 2003-09-06 Havoc Pennington * dbus/dbus-connection.c (dbus_connection_register_fallback): add this (dbus_connection_register_object_path): make this not handle messages to paths below the given path 2003-09-03 Havoc Pennington * test/glib/Makefile.am: add this with random glib-linked test programs * glib/Makefile.am: remove the random test programs from here, leave only the unit tests * glib/dbus-gobject.c (_dbus_gobject_test): add test for uscore/javacaps conversion, and fix (get_object_property, set_object_property): change to .NET convention for mapping props to methods, set_FooBar/get_FooBar, since one language has such a convention we may as well copy it. Plus real methods in either getFooBar or get_foo_bar style won't collide with this convention. 2003-09-01 Havoc Pennington * glib/dbus-gparser.c: implement * glib/dbus-gobject.c: start implementing skeletons support * configure.in: when disabling checks/assert, also define G_DISABLE_ASSERT and G_DISABLE_CHECKS 2003-09-01 Havoc Pennington * glib/Makefile.am: rearrange a bunch of files and get "make check" framework set up 2003-08-31 Havoc Pennington * fix build with --disable-tests 2003-08-30 Havoc Pennington * dbus/dbus-connection.c: purge DBusMessageHandler * dbus/dbus-message-handler.c: remove DBusMessageHandler, just use callbacks everywhere 2003-08-30 Havoc Pennington * test/data/valid-config-files/system.d/test.conf: change to root for the user so warnings don't get printed * dbus/dbus-message.c: add dbus_message_get_path, dbus_message_set_path * dbus/dbus-object-tree.c (do_test_dispatch): add test of dispatching to a path * dbus/dbus-string.c (_dbus_string_validate_path): add * dbus/dbus-marshal.c (_dbus_demarshal_object_path): implement (_dbus_marshal_object_path): implement * dbus/dbus-protocol.h (DBUS_HEADER_FIELD_PATH): new header field to contain the path to the target object (DBUS_HEADER_FIELD_SENDER_SERVICE): rename DBUS_HEADER_FIELD_SENDER to explicitly say it's the sender service 2003-08-30 Havoc Pennington * dbus/dbus-object-tree.c: write tests and fix the discovered bugs 2003-08-29 Havoc Pennington * dbus/dbus-object-tree.c: modify to allow overlapping paths to be registered (struct DBusObjectSubtree): shrink this a lot, since we may have a lot of them (_dbus_object_tree_free_all_unlocked): implement (_dbus_object_tree_dispatch_and_unlock): implement 2003-08-29 Havoc Pennington * dbus/dbus-internals.h: fix _DBUS_N_GLOBAL_LOCKS 2003-08-28 Havoc Pennington purge DBusObjectID * dbus/dbus-connection.c: port to no ObjectID, create a DBusObjectTree, rename ObjectTree to ObjectPath in public API * dbus/dbus-connection.h (struct DBusObjectTreeVTable): delete everything except UnregisterFunction and MessageFunction * dbus/dbus-marshal.c: port away from DBusObjectID, add DBUS_TYPE_OBJECT_PATH * dbus/dbus-object-registry.[hc], dbus/dbus-object.[hc], dbus/dbus-objectid.[hc]: remove these, we are moving to path-based object IDs 2003-08-25 Havoc Pennington Just noticed that dbus_message_test is hosed, I wonder when I broke that. I thought make check was passing earlier... * dbus/dbus-object-tree.c: add new "object tree" to match DCOP container tree, will replace most of dbus-object-registry * dbus/dbus-string.c (_dbus_string_append_printf_valist): fix C99 screwup 2003-08-19 Havoc Pennington * dbus/dbus-message.c (decode_string_field): support FIELD_SENDER (dbus_message_is_error): fix this function * bus/dbus-daemon-1.1: clarify logic on when / rules match * bus/policy.c (bus_client_policy_check_can_receive): fix code to reflect clarified man page (bus_client_policy_check_can_send): ditto * bus/session.conf.in: fixup * bus/system.conf.in: fixup 2003-08-18 Havoc Pennington * dbus/dbus-hash.c (_dbus_hash_table_insert_two_strings): fix ... glib/.cvsignore | 6 +- glib/Makefile.am | 70 ++- glib/dbus-gidl.c | 524 +++++++++++++++++++ glib/dbus-gidl.h | 120 +++++ glib/dbus-glib-tool.c | 77 +++ glib/dbus-glib.h | 121 +++++- glib/dbus-gloader-expat.c | 262 ++++++++++ glib/dbus-gmain.c | 100 ++++- glib/dbus-gobject.c | 790 ++++++++++++++++++++++++++++ glib/dbus-gparser.c | 670 ++++++++++++++++++++++++ glib/dbus-gparser.h | 65 +++ glib/dbus-gproxy.c | 1249 +++++++++++++++++++++++++++++++++++++++++++++ glib/dbus-gtest-main.c | 46 ++ glib/dbus-gtest.c | 77 +++ glib/dbus-gtest.h | 35 ++ glib/dbus-gthread.c | 2 +- glib/dbus-gtool-test.h | 31 ++ glib/dbus-gutils.c | 96 ++++ glib/dbus-gutils.h | 40 ++ 19 files changed, 4345 insertions(+), 36 deletions(-) commit c6510f49417e04522d9cc6a6c51331bef252aba0 Author: Anders Carlsson Date: Tue Aug 5 13:57:20 2003 +0000 2003-08-05 Anders Carlsson * glib/dbus-gmain.c: (watch_fd_new), (watch_fd_ref), (watch_fd_unref), (dbus_gsource_check), (dbus_gsource_dispatch), (add_watch), (remove_watch), (create_source): Refcount fds, fixes some reentrancy issues. glib/dbus-gmain.c | 116 +++++++++++++++++++++++++++++++++++----------------- 1 files changed, 78 insertions(+), 38 deletions(-) commit a3c695d62bcfc46bd12f4165610649a604ed6166 Author: Havoc Pennington Date: Sun Jun 22 19:39:46 2003 +0000 2003-06-22 Havoc Pennington * dbus/dbus-dataslot.c (_dbus_data_slot_allocator_unref) (_dbus_data_slot_allocator_alloc): rework these to keep a reference count on each slot and automatically manage a global slot ID variable passed in by address * bus/bus.c: convert to new dataslot API * dbus/dbus-bus.c: convert to new dataslot API * dbus/dbus-connection.c: convert to new dataslot API * dbus/dbus-server.c: convert to new dataslot API * glib/dbus-gmain.c: ditto * bus/test.c: ditto * bus/connection.c: ditto glib/dbus-gmain.c | 24 ++++++++++-------------- glib/test-thread-server.c | 5 +++-- 2 files changed, 13 insertions(+), 16 deletions(-) commit 1284fea96df990975632f0a5d8d982ec5c974161 Author: Anders Carlsson Date: Thu Jun 19 22:19:56 2003 +0000 2003-06-19 Anders Carlsson * glib/dbus-glib.h: Fix so that dbus-glib.h can be used from C++ (Patch by Miloslav Trmac). glib/dbus-glib.h | 4 ++++ 1 files changed, 4 insertions(+), 0 deletions(-) commit 375ff8ffbed8683c1a46fab9c537ccb9e603e1d7 Author: Anders Carlsson Date: Wed Jun 18 10:48:07 2003 +0000 Add .cvsignore files glib/.cvsignore | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) commit b4dd1b2cb3e226ece5055bc2f24ef819db7d1b08 Author: Havoc Pennington Date: Sat May 17 17:53:16 2003 +0000 2003-05-17 Havoc Pennington * bus/config-parser.c (merge_included): merge in policies from child configuration file. * bus/policy.c (bus_policy_merge): function to merge two policies together glib/test-profile.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) commit ae655688473fc5e5d6a279b3e764a713fc73b8ca Author: Havoc Pennington Date: Mon May 12 02:44:44 2003 +0000 2003-05-11 Havoc Pennington * dbus/dbus-marshal.c (_dbus_marshal_validate_arg): fix to avoid calling _dbus_marshal_validate_arg() for every byte in a byte array, etc. * dbus/dbus-message-handler.c: use atomic reference counting to reduce number of locks slightly; the global lock in here sucks * dbus/dbus-connection.c (_dbus_connection_update_dispatch_status_and_unlock): variant of update_dispatch_status that can be called with lock held; then use in a couple places to reduce locking/unlocking (dbus_connection_send): hold the lock over the whole function instead of acquiring it twice. * dbus/dbus-timeout.c (_dbus_timeout_new): handle OOM * bus/connection.c (bus_connections_setup_connection): fix access to already-freed memory. * dbus/dbus-connection.c: keep a little cache of linked list nodes, to avoid using the global linked list alloc lock in the normal send-message case. Instead we just use the connection lock that we already have to take. * dbus/dbus-list.c (_dbus_list_find_last): new function * dbus/dbus-sysdeps.c (_dbus_atomic_inc, _dbus_atomic_dec): change to use a struct for the atomic type; fix docs, they return value before increment, not after increment. * dbus/dbus-string.c (_dbus_string_append_4_aligned) (_dbus_string_append_8_aligned): new functions to try to microoptimize this operation. (reallocate_for_length): break this out of set_length(), to improve profile info, and also so we can consider inlining the set_length() part. * dbus/dbus-message.c (dbus_message_new_empty_header): init data strings with some preallocation, cuts down on our calls to realloc a fair bit. Though if we can get the "move entire string to empty string" optimization below to kick in here, it would be better. * dbus/dbus-string.c (_dbus_string_move): just call _dbus_string_move_len (_dbus_string_move_len): add a special case for moving an entire string into an empty string; we can just swap the string data instead of doing any reallocs. (_dbus_string_init_preallocated): new function glib/test-profile.c | 16 ++++++++++++---- 1 files changed, 12 insertions(+), 4 deletions(-) commit b36dd8b35d932d01407b88e948c5196b49e31aa0 Author: Havoc Pennington Date: Sun May 11 07:59:08 2003 +0000 2003-05-11 Havoc Pennington Write a "test-profile" that does echo client-server with threads; profile reveals lock contention, memcpy/realloc of buffers, and UTF-8 validation as hot spots. 20% of lock contention eliminated with dbus_atomic_inc/dec implementation on x86. Much remaining contention is global mempool locks for GList and DBusList. * dbus/dbus-sysdeps.c (_dbus_atomic_inc, _dbus_atomic_dec): add x86 implementation * dbus/dbus-connection.c (struct DBusConnection): use dbus_atomic_t for the reference count * dbus/dbus-message.c (struct DBusMessage): declare dbus_atomic_t values as volatile * configure.in: code to detect ability to use atomic integer operations in assembly, from GLib patch * dbus/dbus-internals.c (_dbus_verbose_real): call getpid every time, tired of it being wrong in threads and forked processes * glib/test-profile.c: a little program to bounce messages back and forth between threads and eat CPU * dbus/dbus-connection.c: add debug spew macros for debugging thread locks; include config.h at top; fix deadlock in dbus_connection_flush() glib/Makefile.am | 33 +++++--- glib/test-profile.c | 215 +++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 237 insertions(+), 11 deletions(-) commit 6f4b867ddd6cef070d65149a4d935b4a964987f1 Author: Havoc Pennington Date: Tue Apr 29 22:57:13 2003 +0000 2003-04-29 Havoc Pennington * glib/dbus-gmain.c: docs cleanups * dbus/dbus-types.h: add docs on int64 types * dbus/dbus-memory.c: fix docs to avoid putting private API in public API docs section glib/dbus-gmain.c | 8 +++++++- 1 files changed, 7 insertions(+), 1 deletions(-) commit 7d22e9a86a21e337a31ee42ccdb851ada88c0b40 Author: Havoc Pennington Date: Fri Apr 25 20:41:49 2003 +0000 2003-04-25 Havoc Pennington * glib/dbus-gmain.c (remove_watch): fix for a crash when watches were toggled without add/remove, fix from Anders Gustafsson glib/dbus-gmain.c | 4 ++++ 1 files changed, 4 insertions(+), 0 deletions(-) commit 36a6a6bc4edb1b3280e405b0addb9113dc09de5c Author: Havoc Pennington Date: Thu Apr 24 19:18:22 2003 +0000 2003-04-24 Havoc Pennington * configure.in: add --enable-checks * dbus/dbus-message.c (dbus_message_new): reverse name/service arguments * dbus/dbus-connection.c (dbus_connection_preallocate_send): fix to use thread locks. (_dbus_connection_handler_destroyed_locked): move some private functions into proper docs group * dbus/dbus-internals.h: add _dbus_return_if_fail, _dbus_return_val_if_fail Throughout: use dbus_return_if_fail glib/test-dbus-glib.c | 3 ++- glib/test-thread-client.c | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) commit eb553e370e7651a3104038cbba7ebb7a502118e7 Author: James Willcox Date: Thu Apr 24 02:22:49 2003 +0000 2003-04-23 James Willcox * glib/dbus-glib.h: * glib/dbus-gmain.c: (add_timeout), (wakeup_main), (create_source), (dbus_connection_setup_with_g_main), (dbus_server_setup_with_g_main): * glib/test-dbus-glib.c: (main): * glib/test-thread-client.c: (main): * glib/test-thread-server.c: (new_connection_callback), (main): * tools/dbus-monitor.c: (main): Added a GMainContext argument to dbus_connection_setup_with_g_main() and dbus_server_setup_with_g_main(). glib/dbus-glib.h | 6 ++++-- glib/dbus-gmain.c | 36 +++++++++++++++++++++++------------- glib/test-dbus-glib.c | 2 +- glib/test-thread-client.c | 2 +- glib/test-thread-server.c | 4 ++-- 5 files changed, 31 insertions(+), 19 deletions(-) commit 62cc9827dee1d9fa052a11ce259acc7d1d2dcb9d Author: Havoc Pennington Date: Fri Apr 18 04:18:57 2003 +0000 2003-04-18 Havoc Pennington * glib/dbus-gmain.c: adapt to watch changes * bus/bus.c, bus/activation.c, etc.: adjust to watch changes * dbus/dbus-server.h: remove dbus_server_handle_watch * dbus/dbus-connection.h: remove dbus_connection_handle_watch * dbus/dbus-watch.c (dbus_watch_handle): change DBusWatch to work like DBusTimeout, so we don't need dbus_connection_handle_watch etc. glib/dbus-gmain.c | 9 ++------- 1 files changed, 2 insertions(+), 7 deletions(-) commit 723f9251ee8892f05f4c94a9b0cfa864c5e56bae Author: Alex Larsson Date: Thu Apr 10 12:09:00 2003 +0000 2003-04-10 Alexander Larsson * bus/.cvsignore: * glib/.cvsignore: * test/.cvsignore: Added files to cvsignore * dbus/dbus-message.h: * dbus/dbus-message.c: (dbus_message_iter_get_named): Make get_named() take two out argument and return a boolean. (dbus_message_iter_get_args_valist): Update usage of get_named(). (dbus_message_iter_append_byte): Fix typo (dbus_message_iter_append_named) Fix typo (message_iter_test), (check_message_handling_type), (_dbus_message_test): More tests. glib/.cvsignore | 2 ++ 1 files changed, 2 insertions(+), 0 deletions(-) commit f8c607ec8949388bd09136d0a6635190910a3e9a Author: Alex Larsson Date: Tue Apr 8 15:52:50 2003 +0000 2003-04-08 Alexander Larsson Implemented recursive types, named types and new-style iters * bus/driver.c: * glib/test-thread-client.c: (thread_func): * glib/test-thread-server.c: (handle_test_message): * test/test-service.c: (handle_echo): Update to new api * dbus/Makefile.am: * dbus/dbus-dict.c: * dbus/dbus-dict.h: * dbus/dbus.h Remove DBusDict * dbus/dbus-internals.c: (_dbus_type_to_string): Update for new types. * dbus/dbus-marshal.[ch]: Implement recursive types and the new marshalling format. Remove hardcoded dict marshalling. Marshal named types. * dbus/dbus-message-builder.c: Add BYTE_ARRAY. Remove references to old types * dbus/dbus-message.[ch]: New non-refcounted iter API that supports recursive iters. Use iters for appending, including support for recursive iters. Add byte and named type support. Update everything to new marshalling formats. Add tests for new API. * dbus/dbus-protocol.h: Remove old array types. Add types: BYTE, ARRAY, DICT, NAMED * dbus/dbus-string.c: * dbus/dbus-sysdeps.c: Make parse_double locale safe. * dbus/dbus-test-main.c: Call setlocale. * dbus/dbus-test.c: Kill dict test * doc/dbus-specification.sgml: Update spec * test/data/incomplete-messages/missing-body.message: * test/data/invalid-messages/bad-boolean.message: * test/data/invalid-messages/bad-boolean-array.message: * test/data/invalid-messages/boolean-array-length-too-long.message-raw: * test/data/invalid-messages/boolean-has-no-value.message-raw: * test/data/invalid-messages/too-short-dict.message: * test/data/valid-messages/dict-simple.message: * test/data/valid-messages/dict.message: * test/data/valid-messages/emptiness.message: * test/data/valid-messages/lots-of-arguments.message: * test/data/valid-messages/no-padding.message: * test/data/valid-messages/recursive-types.message: Add missing NAME fields Fix up dicts & arrays * test/data/invalid-messages/dict-with-nil-value.message: Removed, this is not invalid anymore. * test/data/valid-messages/recursive-types.message: Add new test for deeply recursive types. glib/test-thread-client.c | 9 ++++++--- glib/test-thread-server.c | 23 +++++++++++------------ 2 files changed, 17 insertions(+), 15 deletions(-) commit 4612ff9267417cf8860c233a59fe8ec249ee4a62 Author: Havoc Pennington Date: Tue Mar 25 04:37:07 2003 +0000 2003-03-24 Havoc Pennington * dbus/dbus-sysdeps.c (_dbus_set_fd_nonblocking): move to this file * dbus/dbus-errors.c (dbus_set_error, dbus_set_error_const): allow NULL argument for "message" if the error is a well-known one, fill in a generic message in this case. * dbus/dbus-errors.h (DBusResultCode): Kill DBusResultCode in favor of DBusError * bus/test.c (bus_test_flush_bus): add * bus/policy.c (bus_policy_test): test code stub glib/test-dbus-glib.c | 7 ++++--- glib/test-thread-client.c | 8 +++++--- glib/test-thread-server.c | 8 +++++--- 3 files changed, 14 insertions(+), 9 deletions(-) commit 9eb162678713477754e9d88eb68c156d336c80ab Author: Havoc Pennington Date: Sun Mar 16 20:16:46 2003 +0000 2003-03-16 Havoc Pennington * dbus/dbus-string.c (_dbus_string_validate_utf8): oops, unbreak this. always run the test suite before commit... * bus/*: adapt to DBusConnection API changes * glib/dbus-gmain.c: adapt to DBusConnection API changes, requires renaming stuff to avoid dbus_connection_dispatch name conflict. * dbus/dbus-transport.c (_dbus_transport_queue_messages): new function * dbus/dbus-message.c (_dbus_message_loader_queue_messages): separate from _dbus_message_loader_return_buffer() * dbus/dbus-connection.c (dbus_connection_get_n_messages): remove this, because it's now always broken to use; the number of messages in queue vs. the number still buffered by the message loader is undefined/meaningless. Should use dbus_connection_get_dispatch_state(). (dbus_connection_dispatch): rename from dbus_connection_dispatch_message glib/dbus-gmain.c | 64 ++++++++++++++++++++++++++-------------------------- 1 files changed, 32 insertions(+), 32 deletions(-) commit 457dd574d5eda1286571f7070860c6feb56f184e Author: Havoc Pennington Date: Sat Mar 15 20:47:16 2003 +0000 2003-03-15 Havoc Pennington Make it pass the Hello handling test including all OOM codepaths. Now to do other messages... * bus/services.c (bus_service_remove_owner): fix crash when removing owner from an empty list of owners (bus_registry_ensure): don't leave service in the list of a connection's owned services if we fail to put the service in the hash table. * bus/connection.c (bus_connection_preallocate_oom_error): set error flag on the OOM error. * dbus/dbus-connection.c (_dbus_connection_new_for_transport): handle _dbus_transport_set_connection failure * dbus/dbus-transport-unix.c (_dbus_transport_new_for_fd): modify to create watches up front and simply enable/disable them as needed. (unix_connection_set): this can now fail on OOM * dbus/dbus-timeout.c, dbus/dbus-watch.c: add concept of enabling/disabling a watch or timeout. * bus/loop.c (bus_loop_iterate): don't touch disabled watches/timeouts * glib/dbus-gmain.c: adapt to enable/disable watches and timeouts glib/dbus-gmain.c | 44 ++++++++++++++++++++++++++++++++++++++++++-- 1 files changed, 42 insertions(+), 2 deletions(-) commit 0f748f23b6fd40ab314bdc4d18e631cde958c1d2 Author: Havoc Pennington Date: Sat Mar 15 02:19:01 2003 +0000 2003-03-14 Havoc Pennington * dbus/dbus-memory.c: add a "detect buffer overwrites on free" cheesy hack * dbus/dbus-transport-debug.c: rework this a good bit to be less complicated. hopefully still works. * dbus/dbus-server-debug.c (handle_new_client): remove timeout manually * glib/dbus-gmain.c (timeout_handler): don't remove timeout after running it * dbus/dbus-message.c (dbus_message_copy): rename from dbus_message_new_from_message, fix it up to copy all the message fields, add test case * bus/dispatch.c (bus_dispatch_test): add some more test code, not quite passing yet glib/dbus-gmain.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit a15287bc97819cca7b61cc18d6d69232bb05117d Author: Havoc Pennington Date: Fri Mar 14 01:27:58 2003 +0000 2003-03-13 Havoc Pennington * dbus/dbus-timeout.c (_dbus_timeout_list_set_functions): handle out of memory * dbus/dbus-watch.c (_dbus_watch_list_set_functions): handle out of memory * dbus/dbus-connection.h: Make AddWatchFunction and AddTimeoutFunction return a bool so they can fail on out-of-memory * bus/bus.c (bus_context_new): set up timeout handlers * bus/connection.c (bus_connections_setup_connection): set up timeout handlers * glib/dbus-gmain.c: adapt to the fact that set_functions stuff can fail * bus/bus.c (bus_context_new): adapt to changes * bus/connection.c: adapt to changes * test/watch.c: adapt to DBusWatch changes * bus/dispatch.c (bus_dispatch_test): started adding this but didn't finish glib/dbus-gmain.c | 28 +++++++++++++++++----------- 1 files changed, 17 insertions(+), 11 deletions(-) commit e0a3fe2914f611ef4d74bbc1ca39794f0f7ae575 Author: Havoc Pennington Date: Thu Mar 13 00:56:43 2003 +0000 2003-03-12 Havoc Pennington Mega-patch that gets the message bus daemon initially handling out-of-memory. Work still needed. Also lots of random moving stuff to DBusError instead of ResultCode. * dbus/dbus-list.c (_dbus_list_length_is_one): new function * dbus/dbus-connection.c (dbus_connection_send_with_reply_and_block): use DBusError * dbus/dbus-bus.c: adapt to API changes, make it use DBusError not DBusResultCode * dbus/dbus-connection.c (dbus_connection_send): drop the result code here, as the only failure possible is OOM. * bus/connection.c (bus_connection_disconnect): rename bus_connection_disconnected as it's a notification only * bus/driver.c (bus_driver_handle_acquire_service): don't free "name" on get_args failure, should be done by get_args; don't disconnect client for bad args, just return an error. (bus_driver_handle_service_exists): ditto * bus/services.c (bus_services_list): NULL-terminate returned array * bus/driver.c (bus_driver_send_service_lost) (bus_driver_send_service_acquired): send messages from driver to a specific client to the client's unique name, not to the broadcast service. * dbus/dbus-message.c (decode_header_data): reject messages that contain no name field (_dbus_message_get_client_serial): rename to dbus_message_get_serial and make public (_dbus_message_set_serial): rename from set_client_serial (_dbus_message_set_reply_serial): make public (_dbus_message_get_reply_serial): make public * bus/connection.c (bus_connection_foreach): allow stopping iteration by returning FALSE from foreach function. * dbus/dbus-connection.c (dbus_connection_send_preallocated) (dbus_connection_free_preallocated_send) (dbus_connection_preallocate_send): new API for sending a message without possibility of malloc failure. (dbus_connection_send_message): rename to just dbus_connection_send (and same for whole function family) * dbus/dbus-errors.c (dbus_error_free): make this reinit the error * dbus/dbus-sysdeps.c (_dbus_exit): new function * bus/activation.c: handle/return errors * dbus/dbus-errors.h: add more DBUS_ERROR #define * dbus/dbus-sysdeps.c (_dbus_directory_open) (_dbus_file_get_contents) (_dbus_directory_get_next_file): use DBusError instead of DBusResultCode (_dbus_result_from_errno): move to this file glib/test-dbus-glib.c | 20 ++++++++++++++------ glib/test-thread-client.c | 9 +++++---- 2 files changed, 19 insertions(+), 10 deletions(-) commit 284daff1f103a303178243ca3e2dee960651fec0 Author: Alex Larsson Date: Thu Feb 27 14:22:36 2003 +0000 2003-02-27 Alexander Larsson * glib/Makefile.am: * configure.in: Make gthreads-2.0 dependency optional. Don't build thread test if its not found. glib/Makefile.am | 8 +++++++- 1 files changed, 7 insertions(+), 1 deletions(-) commit b9589e9908d368cb064d1614e5c52239394414f4 Author: Alex Larsson Date: Wed Feb 26 15:52:25 2003 +0000 2003-02-26 Alexander Larsson * configure.in: Set DBUS_GLIB_THREADS_LIBS for apps using gthread-2.0 * dbus/dbus-connection.c: * dbus/dbus-connection.h: Fix _dbus_connection_acquire_io_path and _dbus_connection_acquire_dispatch. Add dbus_connection_set_wakeup_main_function and use it when queueing incoming and outgoing messages. * dbus/dbus-dataslot.c: Threadsafe usage of DBusDataSlotAllocator * dbus/dbus-message.c: (dbus_message_get_args_iter): dbus_new can fail. * dbus/dbus-server-unix.c: Add todo comment * glib/dbus-gmain.c: Implement the new wakeup functions for glib. * glib/Makefile.am: * glib/test-thread-client.c: * glib/test-thread-server.c: * glib/test-thread.h: Initial cut at some thread test code. Not really done yet. glib/Makefile.am | 16 +++- glib/dbus-gmain.c | 13 ++- glib/test-thread-client.c | 89 ++++++++++++++++ glib/test-thread-server.c | 246 +++++++++++++++++++++++++++++++++++++++++++++ glib/test-thread.h | 1 + 5 files changed, 362 insertions(+), 3 deletions(-) commit c79213c6d3b041ce00bb00f24d4824e4a77f63ef Author: Havoc Pennington Date: Wed Feb 26 06:42:57 2003 +0000 2003-02-26 Havoc Pennington * dbus/dbus-connection.c (dbus_connection_send_message_with_reply_and_block): fix crash where we ref'd the outgoing message instead of the returned reply * dbus/dbus-transport-unix.c (do_authentication): check read watch at the end of this function, so if we didn't need to read for authentication, we reinstall it for receiving messages * dbus/dbus-message.c (dbus_message_new_reply): allow replies to a NULL sender for peer-to-peer case * dbus/dbus-transport-unix.c (check_read_watch): handle !authenticated case correctly * glib/dbus-gmain.c: add support for DBusServer * dbus/dbus-server.c: add data slot support * glib/dbus-gmain.c (dbus_connection_setup_with_g_main): check return values and handle errors * dbus/dbus-dataslot.c: factor out the data slot stuff from DBusConnection * Doxyfile.in (INPUT): add glib subdir * glib/dbus-gmain.c (dbus_connection_setup_with_g_main): rename setup_with_g_main instead of hookup_with_g_main; write docs glib/dbus-glib.h | 5 +- glib/dbus-gmain.c | 257 +++++++++++++++++++++++++++++++++++++++++-------- glib/dbus-gthread.c | 16 +++ glib/test-dbus-glib.c | 2 +- 4 files changed, 238 insertions(+), 42 deletions(-) commit ebace7f90ea6b3d85a9140be3671ea527c3a5727 Author: Joe Shaw Date: Tue Feb 18 22:51:35 2003 +0000 2003-02-18 Joe Shaw * dbus/dbus-auth.c (handle_server_data_stupid_test_mech): Just get credentials from our currently running process. (get_word): Fix a buglet where we were copying the entire length instead of relative to our position. * dbus/dbus-hash.c (_dbus_hash_test): Don't try to allocate the keys on the stack... it's 640k of data. * dbus/dbus-sysdeps.c (_dbus_read_credentials_unix_socket): Always read the credentials byte off the socket, even if we don't have SO_PEERCRED. (_dbus_poll): Implement poll() using select() for systems which don't have it. * glib/test-dbus-glib.c (main): Print out an error if no parameters are given. * test/data/auth/fallback.auth-script: Added. Tests that a client can fallback to a secondary auth mechanism if the first fails. glib/test-dbus-glib.c | 7 +++++++ 1 files changed, 7 insertions(+), 0 deletions(-) commit 2655a78cdf1114a686d3c2ee28025db133b287c3 Author: Anders Carlsson Date: Sun Feb 16 12:57:26 2003 +0000 2003-02-16 Anders Carlsson * dbus/dbus-auth.c: (client_try_next_mechanism): Plug a leak. * dbus/dbus-threads.c: (dbus_condvar_wait_timeout): Return TRUE if there's no thread implementation around. * glib/dbus-gmain.c: (free_source), (dbus_connection_hookup_with_g_main): Make sure to remove the GSource when the connection is finalized. glib/dbus-gmain.c | 15 +++++++++++++++ 1 files changed, 15 insertions(+), 0 deletions(-) commit 4fbaec0ff143d92f96fb60c585282b5cb03bdc76 Author: Havoc Pennington Date: Sun Feb 16 07:20:54 2003 +0000 2003-02-16 Havoc Pennington * dbus/dbus-connection.c (dbus_connection_set_change_sigpipe): allow people to avoid setting SIGPIPE to SIG_IGN (_dbus_connection_new_for_transport): disable SIGPIPE unless we've been asked not to glib/.cvsignore | 4 ++++ 1 files changed, 4 insertions(+), 0 deletions(-) commit 69a436d7913c1681eea397e768687fab736f9d7c Author: Alex Larsson Date: Sat Feb 15 16:25:08 2003 +0000 2003-02-15 Alexander Larsson * dbus/dbus-threads.c: * dbus/dbus-threads.h: Add condvars. Remove static mutext from API. Implement static mutexes by initializing them from threads_init. * glib/dbus-gthread.c: * qt/dbus-qthread.cpp: Update with the thread api changes. * dbus/dbus-list.c: * dbus/dbus-list.h: Turn StaticMutex into normal mutex + init function. Export new functions _dbus_list_alloc_link, _dbus_list_free_link, _dbus_list_append_link, _dbus_list_prepend_link * dbus/dbus-sysdeps.c: * dbus/dbus-sysdeps.h: New type dbus_atomic_t, and new functions _dbus_atomic_inc, _dbus_atomic_dec. Only slow fallback implementation at the moment. * dbus/dbus-protocol.h: Add DBUS_MESSAGE_LOCAL_DISCONNECT define * dbus/dbus-message.c: Make ref/unref atomic. Fix some docs. * dbus/dbus-connection-internal.h: * dbus/dbus-connection.c: * dbus/dbus-connection.h: Make threadsafe. Change _peek to _borrow,_return & _steal_borrowed. Change disconnect callback to event. Make dbus_connection_dispatch_messages reentrant. * dbus/dbus-transport.c: Don't ref the connection on calls to the transport implementation. * dbus/dbus-message-handler.c: Make threadsafe. * glib/dbus-gmain.c: Don't use peek_message anymore * test/Makefile.am: * test/debug-thread.c: * test/debug-thread.h: Simple thread implementation that asserts() on deadlocks in single-threaded code. * test/bus-test.c: (main) Call debug_threads_init. * test/watch.c: Use disconnect message instead of disconnect callback. * bus/connection.c: * bus/connection.h: Don't call dbus_connection_set_disconnect_function. Instead export bus_connection_disconnect. * bus/dispatch.c: Call bus_connection_disconnect when we get a disconnected message. glib/dbus-gmain.c | 2 +- glib/dbus-gthread.c | 94 ++++++++++++++++++++++++++++++++++++++++++++++----- 2 files changed, 86 insertions(+), 10 deletions(-) commit 530cf7689515707b5430b3207da225320cf244c4 Author: Anders Carlsson Date: Thu Feb 13 21:37:58 2003 +0000 2003-02-13 Anders Carlsson * bus/driver.c: (bus_driver_handle_hello): * bus/driver.h: * bus/services.c: (bus_service_lookup): Reorder message sending so we get a more sane order. * test/bus-test.c: (message_handler): Fix tyop. glib/test-dbus-glib.c | 3 --- 1 files changed, 0 insertions(+), 3 deletions(-) commit 044f4c6ed2170170d833d402079b90277893cd05 Author: Anders Carlsson Date: Thu Feb 13 20:37:07 2003 +0000 2003-02-13 Anders Carlsson * glib/dbus-gmain.c: (timeout_handler), (add_timeout), (remove_timeout): Implement support for timeouts in dbus-glib. glib/dbus-gmain.c | 22 ++++++++++++++++++++++ 1 files changed, 22 insertions(+), 0 deletions(-) commit 12d8e0d2d6aeb5f29ff8b51cdd4aae857d35d13f Author: Alex Larsson Date: Sat Feb 1 22:02:27 2003 +0000 2003-02-02 Alexander Larsson * dbus/dbus-watch.c (dbus_watch_get_flags): Add note in the docs that ERROR or HANGUP won't be returned and are assumed always on. * glib/dbus-gmain.c (add_watch): Always add IO_ERR | IO_HUP * dbus/dbus-message.h: Add semicolon after dbus_message_iter_get_string_array(). Makes qt code build again glib/dbus-gmain.c | 5 +---- 1 files changed, 1 insertions(+), 4 deletions(-) commit bb581faf87398e807a828f2686474869cd23757d Author: Richard Hult Date: Sun Jan 26 00:06:30 2003 +0000 2003-01-26 Richard Hult * glib/dbus-gmain.c (dbus_connection_dispatch): Traverse a copy of the file descriptor list, since it can change under us. glib/dbus-gmain.c | 12 ++++++++---- 1 files changed, 8 insertions(+), 4 deletions(-) commit 74cef08b5e2f2596cade4fc1027933d763cd13ae Author: Anders Carlsson Date: Sat Jan 25 21:22:57 2003 +0000 2003-01-25 Anders Carlsson * glib/dbus-gmain.c: (dbus_connection_prepare), (dbus_connection_check), (dbus_connection_dispatch), (add_watch), (remove_watch), (dbus_connection_hookup_with_g_main): Rewrite the glib handling to use its own GSource instead of a GIOChannel so we can catch messages put in the queue while waiting for a reply. glib/dbus-gmain.c | 193 +++++++++++++++++++++++++++++++++++------------------ 1 files changed, 128 insertions(+), 65 deletions(-) commit 6f062c93ca19a73b34688488e76ec055d2bab2a0 Author: Anders Carlsson Date: Fri Jan 24 23:51:58 2003 +0000 2003-01-25 Anders Carlsson * bus/connection.c: (bus_connection_foreach): * bus/connection.h: Add new bus_connection_foreach function. * bus/driver.c: (send_one_message), (bus_driver_broadcast_message): Add function that broadcasts a message to all clients. (bus_driver_send_service_created), (bus_driver_handle_hello), (bus_driver_send_welcome_message), (bus_driver_handle_list_services), (bus_driver_message_handler): Implement functions that take care of listing services, and notifying clients when new services are created. * bus/services.c: (bus_services_list): * bus/services.h: Add new function that returns an array of strings with the currently registered services. * glib/dbus-glib.h: * glib/dbus-gmain.c: Update copyright year. glib/dbus-glib.h | 2 +- glib/dbus-gmain.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) commit ea868ce1cd9328ffa31cd9419e23498771f8feb2 Author: Anders Carlsson Date: Tue Jan 21 09:23:18 2003 +0000 2003-01-21 Anders Carlsson * dbus/dbus-connection.c: (dbus_connection_send_message): Add a new client_serial parameter. (dbus_connection_send_message_with_reply): Remove a @todo since we've implemented the blocking function. (dbus_connection_send_message_with_reply_and_block): New function that sends a message and waits for a reply and then returns the reply. * dbus/dbus-connection.h: Add new functions. * dbus/dbus-errors.c: (dbus_result_to_string): * dbus/dbus-errors.h: Add new DBUS_RESULT. * dbus/dbus-message-internal.h: * dbus/dbus-message.c: (_dbus_message_get_reply_serial), (_dbus_message_set_sender), (dbus_message_write_header), (dbus_message_new_reply), (decode_header_data), (_dbus_message_loader_return_buffer), (_dbus_message_test): * dbus/dbus-message.h: Add new functions that set the reply serial and sender. Also marshal and demarshal them correctly and add test. * dbus/dbus-protocol.h: Add new DBUS_MESSAGE_TYPE_SENDER. * glib/dbus-glib.h: * glib/dbus-gmain.c: (watch_callback), (free_callback_data), (add_watch), (remove_watch), (add_timeout), (remove_timeout), (dbus_connection_hookup_with_g_main): * glib/test-dbus-glib.c: (main): Rewrite to use GIOChannel and remove the GSource crack. * test/echo-client.c: (main): * test/watch.c: (check_messages): Update for changed APIs glib/dbus-glib.h | 10 +-- glib/dbus-gmain.c | 219 +++++++++++++++++++------------------------------ glib/test-dbus-glib.c | 48 +++-------- 3 files changed, 99 insertions(+), 178 deletions(-) commit f8a3cb6d30e74be85b583ce9ff3482f91cd26b9a Author: Anders Carlsson Date: Tue Jan 7 20:18:23 2003 +0000 2003-01-07 Anders Carlsson * dbus/dbus-connection-internal.h: * dbus/dbus-connection.c: (_dbus_connection_new_for_transport), (_dbus_connection_get_next_client_serial), (dbus_connection_send_message): * dbus/dbus-internals.h: * dbus/dbus-marshal.c: (unpack_uint32), (dbus_unpack_int32), (dbus_pack_int32), (_dbus_marshal_double), (_dbus_marshal_int32), (_dbus_marshal_uint32), (_dbus_demarshal_double), (_dbus_demarshal_int32), (_dbus_demarshal_uint32), (_dbus_demarshal_string), (_dbus_marshal_get_field_end_pos), (_dbus_verbose_bytes), (_dbus_marshal_test): * dbus/dbus-marshal.h: * dbus/dbus-message-internal.h: * dbus/dbus-message.c: (_dbus_message_set_client_serial), (dbus_message_write_header), (_dbus_message_lock), (dbus_message_new), (dbus_message_ref), (dbus_message_unref), (dbus_message_get_name), (dbus_message_append_int32), (dbus_message_append_uint32), (dbus_message_append_double), (dbus_message_append_string), (dbus_message_append_byte_array), (dbus_message_get_fields_iter), (dbus_message_iter_ref), (dbus_message_iter_unref), (dbus_message_iter_has_next), (dbus_message_iter_next), (dbus_message_iter_get_field_type), (dbus_message_iter_get_string), (dbus_message_iter_get_int32), (dbus_message_iter_get_uint32), (dbus_message_iter_get_double), (decode_header_data), (_dbus_message_loader_return_buffer), (message_iter_test), (_dbus_message_test): * dbus/dbus-message.h: * dbus/dbus-protocol.h: * dbus/dbus-test.c: (main): * dbus/dbus-test.h: * glib/test-dbus-glib.c: (message_handler), (main): * test/echo-client.c: (main): * test/watch.c: (check_messages): Make messages sendable and receivable for real. glib/test-dbus-glib.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) commit 9784f2653287c62f32a637f869ad0029412ebfae Author: Anders Carlsson Date: Fri Dec 27 08:26:26 2002 +0000 Ssh glib/.cvsignore | 7 +++++++ 1 files changed, 7 insertions(+), 0 deletions(-) commit c27a1609f595a75be3910c5185f7312cb93575c7 Author: Havoc Pennington Date: Tue Dec 24 06:37:32 2002 +0000 2002-12-24 Havoc Pennington * glib/dbus-gthread.c: fix include * glib/dbus-glib.h: rename DBusMessageHandler for now. I think glib API needs to change, though, as you don't want to use DBusMessageFunction, you want to use the DBusMessageHandler object. Probably dbus_connection_open_with_g_main_loop() and dbus_connection_setup_g_main_loop() or something like that (but think of better names...) that just create a connection that has watch/timeout functions etc. already set up. * dbus/dbus-connection.c (dbus_connection_send_message_with_reply): new function just to show how the message handler helps us deal with replies. * dbus/dbus-list.c (_dbus_list_remove_last): new function * dbus/dbus-string.c (_dbus_string_test): free a string that wasn't * dbus/dbus-hash.c: use memory pools for the hash entries (rebuild_table): be more paranoid about overflow, and shrink table when we can (_dbus_hash_test): reduce number of sprintfs and write valid C89. Add tests for case where we grow and then shrink the hash table. * dbus/dbus-mempool.h, dbus/dbus-mempool.c: memory pools * dbus/dbus-connection.c (dbus_connection_register_handler) (dbus_connection_unregister_handler): new functions * dbus/dbus-message.c (dbus_message_get_name): new * dbus/dbus-list.c: fix docs typo * dbus/dbus-message-handler.h, dbus/dbus-message-handler.c: an object representing a handler for messages. glib/dbus-glib.h | 6 +++--- glib/dbus-gmain.c | 2 +- glib/dbus-gthread.c | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) commit 723dc26c4880ae66688ff707588797e7c83b4fe4 Author: Anders Carlsson Date: Mon Dec 16 01:43:52 2002 +0000 Doh glib/dbus-glib.h | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) commit a2c39755d2c9749d22f547e9b92125509e95aae6 Author: Anders Carlsson Date: Mon Dec 16 00:56:23 2002 +0000 2002-12-16 Anders Carlsson * glib/dbus-glib.h: * glib/dbus-gthread.c: (dbus_gthread_init): Don't use the gdbus prefix for public functions. glib/dbus-glib.h | 4 +--- glib/dbus-gthread.c | 4 ++-- 2 files changed, 3 insertions(+), 5 deletions(-) commit 03900e96a260048f23176319003671c17b6a0013 Author: Anders Carlsson Date: Mon Dec 16 00:26:05 2002 +0000 2002-12-16 Anders Carlsson * Makefile.am: * configure.in: Add GLib checks and fixup .pc files * glib/Makefile.am: * glib/dbus-glib.h: * glib/dbus-gmain.c: (gdbus_connection_prepare), (gdbus_connection_check), (gdbus_connection_dispatch), (gdbus_add_connection_watch), (gdbus_remove_connection_watch), (dbus_connection_gsource_new): * glib/dbus-gthread.c: (dbus_gmutex_new), (dbus_gmutex_free), (dbus_gmutex_lock), (dbus_gmutex_unlock), (dbus_gthread_init): * glib/test-dbus-glib.c: (message_handler), (main): Add GLib support. glib/Makefile.am | 26 +++++++ glib/dbus-glib.h | 40 ++++++++++ glib/dbus-gmain.c | 194 +++++++++++++++++++++++++++++++++++++++++++++++++ glib/dbus-gthread.c | 84 +++++++++++++++++++++ glib/test-dbus-glib.c | 60 +++++++++++++++ 5 files changed, 404 insertions(+), 0 deletions(-) commit 7c0c11bfa019cd4be3f7a62fe936aaf2573fa51e Author: John (J5) Palmieri Date: Wed Jun 28 08:14:04 2006 -0400 Initial commit of module dbus-glib 0 files changed, 0 insertions(+), 0 deletions(-)