platform/upstream/glib.git
14 years agoReturn an error for calls into unknown interfaces or unknown objects
David Zeuthen [Fri, 21 May 2010 16:09:27 +0000 (12:09 -0400)]
Return an error for calls into unknown interfaces or unknown objects

Ryan pointed out on IRC that we didn't do anything here. Looking at
the code, it's painfully obvious that we should be returning an error
here since a comment already says that we've exhausted all possible
options.

Signed-off-by: David Zeuthen <davidz@redhat.com>
14 years agoUse stack-allocated GVariantBuilders
Christian Persch [Fri, 14 May 2010 12:00:24 +0000 (14:00 +0200)]
Use stack-allocated GVariantBuilders

This saves a few allocations.
Also simplify the code a bit in gdbusconnection.

Bug #618616.

14 years agoAdd g_dc[p]gettext, and use it in gsettings
Christian Persch [Wed, 19 May 2010 22:54:51 +0000 (00:54 +0200)]
Add g_dc[p]gettext, and use it in gsettings

Avoid using LC_MESSAGES, and just call g_d[c]gettext directly.

Bug #617004.

14 years agoUpdated Galician translations
Fran Diéguez [Thu, 20 May 2010 17:30:39 +0000 (19:30 +0200)]
Updated Galician translations

14 years agoBug 619142 – Build fixes
David Zeuthen [Thu, 20 May 2010 14:51:00 +0000 (10:51 -0400)]
Bug 619142 – Build fixes

 - Fix various #include issues

 - Change #error to #warning for the EXTERNAL authentication mechanism.
   It is not clear if this should work on Win32 at all.

 - Call close() before unlink() for the SHA1 keyring

 - Change #error to #warning so we don't forget to do
   permission checking of the .dbus-keyrings directory

 - Use Win32 SID for the SHA1 auth mech

 - Apparently we can't use word 'interface' as an identifier

 - Implement a _g_dbus_win32_get_user_sid() function. For now it's
   private. Don't know if it should be public somewhere. Maybe in
   a future GCredentials support for Win32? I don't know.

 - GFileDescriptorBased is not available on Win32. So avoid using
   it in GLocalFile stuff. Now, Win32 still uses GLocalFile + friends
   (which works with file descriptors) so expose a private function
   to get the fd for an OutputStream so things still work.

 - Fixup gio.symbols

 - Fixup tests/gdbus-peer.c so it builds

With this, at least things compile and the gdbus-peer.exe test case
passes. Which is a great start. I've tested this by cross-compiling on
a x86_64 Fedora 13 host using mingw32 and running the code on a 32-bit
Windows 7 box.

https://bugzilla.gnome.org/show_bug.cgi?id=619142

Signed-off-by: David Zeuthen <davidz@redhat.com>
14 years agoEstonian translation updated
Ivar Smolin [Thu, 20 May 2010 11:56:46 +0000 (14:56 +0300)]
Estonian translation updated

14 years agoAdd G_TYPE_CLASS_GET_PRIVATE macro to docs
Javier Jardón [Wed, 19 May 2010 23:55:58 +0000 (01:55 +0200)]
Add G_TYPE_CLASS_GET_PRIVATE macro to docs

14 years agoVersion bump.
Ryan Lortie [Wed, 19 May 2010 21:38:17 +0000 (17:38 -0400)]
Version bump.

14 years agoRelease 2.25.6 2.25.6
Ryan Lortie [Wed, 19 May 2010 21:32:42 +0000 (17:32 -0400)]
Release 2.25.6

14 years agoAdd --uninstall option to glib-compile-schemas
Ryan Lortie [Wed, 19 May 2010 20:02:05 +0000 (16:02 -0400)]
Add --uninstall option to glib-compile-schemas

If --uninstall is given then don't give an error if the schema directory
is empty.  Instead, erase the gschemas.compiled file, if it exists.
This is the right thing to do in the 'make uninstall' rule, where the
schema directory could very well be left empty as a result.

Modify gsettings.m4 to use this option.

14 years agoBug 619038 - increase gsettings.m4 power
Ryan Lortie [Tue, 18 May 2010 22:28:39 +0000 (18:28 -0400)]
Bug 619038 - increase gsettings.m4 power

handle schema checking, installation, uninstallation, cleaning

14 years agoMake config.h.win32.in match what configure produces
Tor Lillqvist [Wed, 19 May 2010 07:47:02 +0000 (10:47 +0300)]
Make config.h.win32.in match what configure produces

No semantic changes.

14 years agoglib-compile-schemas rename missed in docs
Ryan Lortie [Tue, 18 May 2010 22:24:04 +0000 (18:24 -0400)]
glib-compile-schemas rename missed in docs

change a mention of gschema_compile in the docs

14 years agoFix trivial typo in GCredentials code
Javier Jardón [Tue, 18 May 2010 21:45:54 +0000 (23:45 +0200)]
Fix trivial typo in GCredentials code

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=618839

14 years agoBug 619031 - method-calls-in-thread test failing
Ryan Lortie [Tue, 18 May 2010 21:25:43 +0000 (17:25 -0400)]
Bug 619031 - method-calls-in-thread test failing

The test was assuming that g_timeout_add() waited for at least the amount of
time given to it before running the function.  This is not the case -- the
function can be run as much as 1ms early.  Make the lower time bound asserted
in the test more permissive to account for this.

14 years agoBug 618839 - Typo at translation message
Ryan Lortie [Tue, 18 May 2010 20:43:36 +0000 (16:43 -0400)]
Bug 618839  - Typo at translation message

Fix trivial typo in GCredentials code

14 years agoAdd sync method to GSettingsBackend, and pad
Ryan Lortie [Tue, 18 May 2010 20:13:58 +0000 (16:13 -0400)]
Add sync method to GSettingsBackend, and pad

14 years agowhitespace fix
Ryan Lortie [Tue, 18 May 2010 17:43:42 +0000 (13:43 -0400)]
whitespace fix

14 years agoAdd missing gunixfdlist.h include in gdbus-example-server.c
Robert Ancell [Tue, 18 May 2010 02:01:25 +0000 (12:01 +1000)]
Add missing gunixfdlist.h include in gdbus-example-server.c

14 years agoGDBus: Fix obvious crasher when looking up annotations
David Zeuthen [Mon, 17 May 2010 23:51:49 +0000 (19:51 -0400)]
GDBus: Fix obvious crasher when looking up annotations

Signed-off-by: David Zeuthen <davidz@redhat.com>
14 years agoUpdated Galician translations
Fran Diéguez [Mon, 17 May 2010 21:59:42 +0000 (23:59 +0200)]
Updated Galician translations

14 years agogdbus(1): Don't fetch props if introspection data indicates none are available
David Zeuthen [Mon, 17 May 2010 15:08:53 +0000 (11:08 -0400)]
gdbus(1): Don't fetch props if introspection data indicates none are available

Signed-off-by: David Zeuthen <davidz@redhat.com>
14 years agoGDBus: Fix introspection of objects registered at /
David Zeuthen [Mon, 17 May 2010 15:07:53 +0000 (11:07 -0400)]
GDBus: Fix introspection of objects registered at /

Signed-off-by: David Zeuthen <davidz@redhat.com>
14 years agoimprove thread safety in GDelayedSettingsBackend
Ryan Lortie [Sun, 16 May 2010 20:56:36 +0000 (16:56 -0400)]
improve thread safety in GDelayedSettingsBackend

  - hold a lock while accessing the tree of delayed values
  - use weak reference counts with the owner object to avoid doing
    g_object_notify on a dead object
  - dispatch the "has-unapplied" notify to the proper main context

14 years agoGSettingsBackend: make signal dispatch threadsafe
Ryan Lortie [Sun, 16 May 2010 18:17:34 +0000 (14:17 -0400)]
GSettingsBackend: make signal dispatch threadsafe

This commit fixes up a few race conditions in the GSettingsBackend, mostly with
respect to change notifications occuring at the same time as the last reference
count on a GSettings is dropped.  With GDBus feeding us our incoming signals in
a separate thread, this is something that could easily happen.

14 years agogitignore additions for gdbus, new test cases
Ryan Lortie [Sun, 16 May 2010 16:14:46 +0000 (18:14 +0200)]
gitignore additions for gdbus, new test cases

14 years agoGSettings: support emitting signals in threads
Ryan Lortie [Sun, 16 May 2010 11:02:23 +0000 (13:02 +0200)]
GSettings: support emitting signals in threads

The thread-default context that was in effect at the time that the
GSettings was created will be used for emitting signals on that
GSettings.

14 years agoGSettings tool: work-around GDBus issue
Ryan Lortie [Sun, 16 May 2010 11:03:34 +0000 (13:03 +0200)]
GSettings tool: work-around GDBus issue

There is currently no way (near as I can tell) to ensure that a message
has been sent when using GDBus.  If we exit() before we are sure, then
it is very possible that the message isn't sent at all.  This behaviour
was observed when using the GSettings commandline tool with dconf.

A quick and dirty workaround for now.

14 years agointern a key name instead of using strdup()
Ryan Lortie [Sun, 16 May 2010 08:19:46 +0000 (10:19 +0200)]
intern a key name instead of using strdup()

14 years agoReworked Solaris file event notification for GIO. See
Lin Ma [Mon, 17 May 2010 06:42:52 +0000 (14:42 +0800)]
Reworked Solaris file event notification for GIO. See
https://defect.opensolaris.org/bz/show_bug.cgi?id=10194

Updated copyright.

14 years agoUpdated Spanish translation
Jorge González [Mon, 17 May 2010 05:41:48 +0000 (07:41 +0200)]
Updated Spanish translation

14 years agoAdd GDBus files to POTFILES.in
Matthias Clasen [Sun, 16 May 2010 17:07:25 +0000 (13:07 -0400)]
Add GDBus files to POTFILES.in

14 years agoUpdated Galician translations
Fran Diéguez [Sun, 16 May 2010 14:31:25 +0000 (16:31 +0200)]
Updated Galician translations

14 years agoUpdated Indonesian translation
Andika Triwidada [Sun, 16 May 2010 09:30:38 +0000 (16:30 +0700)]
Updated Indonesian translation

14 years agoFix gio tests linking with binutils gold linker
Sebastian Dröge [Sat, 15 May 2010 08:17:35 +0000 (10:17 +0200)]
Fix gio tests linking with binutils gold linker

14 years agoFix build of gdbus tool with binutils gold linker
Sebastian Dröge [Sat, 15 May 2010 08:13:28 +0000 (10:13 +0200)]
Fix build of gdbus tool with binutils gold linker

14 years agoExpand information about schema translation
Matthias Clasen [Sat, 15 May 2010 22:23:23 +0000 (18:23 -0400)]
Expand information about schema translation

I have added some hints on how to use intltool for translation
of summary and description elements, taken from comments in bug #618523.

14 years agoFix build on !linux
Matthias Clasen [Sat, 15 May 2010 22:15:30 +0000 (18:15 -0400)]
Fix build on !linux

Don't define __USE_GNU, thats a glibc-internal macro, and
don't use SOL_SOCKET when not including sys/socket.h.
Maybe this file should be called glinuxcredentialsmessage.c...

Bug #618730

14 years agoUse the new option name
Christian Persch [Sat, 15 May 2010 09:56:21 +0000 (11:56 +0200)]
Use the new option name

It's --schema-file now, not --schema-files.
Bug #616864.

14 years agoBump version
Matthias Clasen [Sat, 15 May 2010 02:30:19 +0000 (22:30 -0400)]
Bump version

14 years ago2.25.5 2.25.5
Matthias Clasen [Sat, 15 May 2010 02:28:46 +0000 (22:28 -0400)]
2.25.5

14 years agoUpdates
Matthias Clasen [Sat, 15 May 2010 02:03:03 +0000 (22:03 -0400)]
Updates

14 years agoFix issues with GSETTINGS_CHECK_RULE
Matthias Clasen [Sat, 15 May 2010 01:58:08 +0000 (21:58 -0400)]
Fix issues with GSETTINGS_CHECK_RULE

Rename the --schema-files option to --schema-file, since it only
accepts one file at a time. Change the GSETTINGS_CHECK_RULE to
use it that way, too. And also make it work better with !srcdir
builds.

Bugs #616731 and #616864

14 years agoGDBus: Use specific variant type in GetAll()
David Zeuthen [Sat, 15 May 2010 01:08:01 +0000 (21:08 -0400)]
GDBus: Use specific variant type in GetAll()

Without this fix, we segfault if the exported object returned an error
on all get_property() calls (in reality, this never happens).

Signed-off-by: David Zeuthen <davidz@redhat.com>
14 years agoGDBus: Fix a double free
David Zeuthen [Sat, 15 May 2010 00:52:15 +0000 (20:52 -0400)]
GDBus: Fix a double free

Fix an unintentional double free introduced in commit
4ad4c306c3b80620185cf975b402e17a6174aea9.

This bug manifested itself when trying to complete this

 $ gdbus introspect --system --dest <tab>

14 years agoPlug mem leaks in gdbus tests & examples
Christian Persch [Fri, 14 May 2010 18:07:15 +0000 (20:07 +0200)]
Plug mem leaks in gdbus tests & examples

Use "&s" instead of "s", and free the variant iters after use.

Bug #618663.

14 years agoPlug a mem leak in gdbusauth
Christian Persch [Fri, 14 May 2010 16:21:01 +0000 (18:21 +0200)]
Plug a mem leak in gdbusauth

From valgrind running gdbus-peer test:

==20513== 32 bytes in 1 blocks are definitely lost in loss record 1 of 15
==20513==    at 0x4024E4C: realloc (vg_replace_malloc.c:429)
==20513==    by 0x4079BB1: g_realloc (gmem.c:174)
==20513==    by 0x4099472: g_string_maybe_expand (gstring.c:396)
==20513==    by 0x409A42A: g_string_insert_c (gstring.c:1050)
==20513==    by 0x42169AC: g_string_append_c_inline (gstring.h:153)
==20513==    by 0x421682C: _my_g_input_stream_read_line_safe (gdbusauth.c:336)
==20513==    by 0x421843E: _g_dbus_auth_run_server (gdbusauth.c:1265)
==20513==    by 0x4222B94: initable_init (gdbusconnection.c:1783)
==20513==    by 0x41CF8D5: g_initable_init (ginitable.c:106)
==20513==    by 0x41CFA8D: g_initable_new_valist (ginitable.c:219)
==20513==    by 0x41CF920: g_initable_new (ginitable.c:139)
==20513==    by 0x4223479: g_dbus_connection_new_sync (gdbusconnection.c:2046)

Bug #618650.

14 years agoPlug mem leak in g_dbus_address_get_stream_sync
Christian Persch [Fri, 14 May 2010 12:27:08 +0000 (14:27 +0200)]
Plug mem leak in g_dbus_address_get_stream_sync

==6279== 21,615 (4,708 direct, 16,907 indirect) bytes in 169 blocks are
definitely lost in loss record 12 of 13
==6279==    at 0x4024D2E: malloc (vg_replace_malloc.c:207)
==6279==    by 0x4079A90: g_malloc (gmem.c:135)
==6279==    by 0x4079DC8: g_malloc_n (gmem.c:252)
==6279==    by 0x4097E66: g_strsplit (gstrfuncs.c:2434)
==6279==    by 0x42169A2: g_dbus_address_get_stream_sync
(gdbusaddress.c:875)

Bug #618622.

14 years agoPlug a mem leak in get_uninitialized_connection
Christian Persch [Fri, 14 May 2010 12:22:45 +0000 (14:22 +0200)]
Plug a mem leak in get_uninitialized_connection

Free the bus address after creating the singleton.

==26308== 39,736 (10,517 direct, 29,219 indirect) bytes in 388 blocks
are definitely lost in loss record 14 of 15
==26308==    at 0x4024D2E: malloc (vg_replace_malloc.c:207)
==26308==    by 0x4079A90: g_malloc (gmem.c:135)
==26308==    by 0x4079DC8: g_malloc_n (gmem.c:252)
==26308==    by 0x4095607: g_strdup (gstrfuncs.c:102)
==26308==    by 0x4216B9A: g_dbus_address_get_for_bus_sync
(gdbusaddress.c:961)
==26308==    by 0x422A7AE: get_uninitialized_connection
(gdbusconnection.c:5241)

Bug #618622.

14 years agoPlug mem leaks in parse_value_from_blob
Christian Persch [Fri, 14 May 2010 12:15:42 +0000 (14:15 +0200)]
Plug mem leaks in parse_value_from_blob

The result of read_string() was leaked.

Bug #618615.

14 years agoPlug a mem leak
Christian Persch [Fri, 14 May 2010 22:08:29 +0000 (18:08 -0400)]
Plug a mem leak

This code leaked the return value of g_variant_get_child_value();
use g_variant_get() instead and free the iter when done.

14 years agoGDBus: Remove cached value if a property is invalidated
David Zeuthen [Fri, 14 May 2010 16:55:25 +0000 (12:55 -0400)]
GDBus: Remove cached value if a property is invalidated

Also add a test case to catch this.

Signed-off-by: David Zeuthen <davidz@redhat.com>
14 years agoGDBus: Fix serialization of empty arrays
David Zeuthen [Fri, 14 May 2010 16:49:51 +0000 (12:49 -0400)]
GDBus: Fix serialization of empty arrays

It turns out that we didn't observe padding (neither when reading nor
writing) for empty arrays which (apparently) is needed according to
the D-Bus spec and reference implementation. A simple test case to
provoke this behavior is as follows (notice the lack of 4 bytes worth
of padding at position 0x0064):

 Error calling dbus_message_demarshal() on this blob: org.freedesktop.DBus.Error.InvalidArgs: Message is corrupted (Alignment padding not null)
 0000: 6c 01 00 01  2e 00 00 00  41 00 00 00  37 00 00 00    l.......A...7...
 0010: 08 01 67 00  08 73 61 7b  73 76 7d 61  73 00 00 00    ..g..sa{sv}as...
 0020: 01 01 6f 00  08 00 00 00  2f 66 6f 6f  2f 62 61 72    ..o...../foo/bar
 0030: 00 00 00 00  00 00 00 00  03 01 73 00  06 00 00 00    ..........s.....
 0040: 4d 65 6d 62  65 72 00 00  11 00 00 00  30 31 32 33    Member......0123
 0050: 34 35 36 37  38 39 30 31  32 33 34 35  36 00 00 00    4567890123456...
 0060: 00 00 00 00  0e 00 00 00  09 00 00 00  53 6f 6d 65    ............Some
 0070: 74 68 69 6e  67 00                                    thing.

 The blob was generated from the following GVariant value:
 ('01234567890123456', @a{sv} {}, ['Something'])

 If the blob was encoded using DBusMessageIter, the payload would have been:

 0000: 6c 01 00 01  32 00 00 00  41 00 00 00  36 00 00 00    l...2...A...6...
 0010: 01 01 6f 00  08 00 00 00  2f 66 6f 6f  2f 62 61 72    ..o...../foo/bar
 0020: 00 00 00 00  00 00 00 00  03 01 73 00  06 00 00 00    ..........s.....
 0030: 4d 65 6d 62  65 72 00 00  08 01 67 00  08 73 61 7b    Member....g..sa{
 0040: 73 76 7d 61  73 00 00 00  11 00 00 00  30 31 32 33    sv}as.......0123
 0050: 34 35 36 37  38 39 30 31  32 33 34 35  36 00 00 00    4567890123456...
 0060: 00 00 00 00  00 00 00 00  0e 00 00 00  09 00 00 00    ................
 0070: 53 6f 6d 65  74 68 69 6e  67 00                       Something.
 ** ERROR:gdbus-serialization.c:547:check_serialization: code should not be reached
 Aborted

and this is now in the libdbus-1-using serialization test case.

Signed-off-by: David Zeuthen <davidz@redhat.com>
14 years agoUpdated Spanish translation
Jorge González [Fri, 14 May 2010 15:55:37 +0000 (17:55 +0200)]
Updated Spanish translation

14 years agobump version
Matthias Clasen [Fri, 14 May 2010 15:49:15 +0000 (11:49 -0400)]
bump version

14 years ago2.25.4 2.25.4
Matthias Clasen [Fri, 14 May 2010 15:25:11 +0000 (11:25 -0400)]
2.25.4

14 years agofix glaring inaccuracy in GVariant docs
Ryan Lortie [Fri, 14 May 2010 15:06:24 +0000 (17:06 +0200)]
fix glaring inaccuracy in GVariant docs

14 years agoanother !srcdir build fix
Matthias Clasen [Fri, 14 May 2010 14:49:03 +0000 (10:49 -0400)]
another !srcdir build fix

14 years agoMore !srcdir build fixes
Matthias Clasen [Fri, 14 May 2010 14:25:31 +0000 (10:25 -0400)]
More !srcdir build fixes

14 years agoinclude gunixcredentialsmessage from unixsocket
Ryan Lortie [Fri, 14 May 2010 13:30:33 +0000 (15:30 +0200)]
include gunixcredentialsmessage from unixsocket

fixes a build issue

14 years agoCleanups
Matthias Clasen [Fri, 14 May 2010 12:38:07 +0000 (08:38 -0400)]
Cleanups

Sort #includes a bit better, and don't include platform-specific
headers in gio.h.

14 years agoFix !srcdir build
Matthias Clasen [Fri, 14 May 2010 05:36:25 +0000 (01:36 -0400)]
Fix !srcdir build

Thankfully we already had a SRCDIR define.

14 years agoFix a typo
Matthias Clasen [Fri, 14 May 2010 04:59:42 +0000 (00:59 -0400)]
Fix a typo

14 years agoUpdates
Matthias Clasen [Fri, 14 May 2010 04:51:51 +0000 (00:51 -0400)]
Updates

14 years agoDocumentation cleanups
Matthias Clasen [Fri, 14 May 2010 04:21:39 +0000 (00:21 -0400)]
Documentation cleanups

14 years agoMerge branch 'gdbus-merge'
Matthias Clasen [Fri, 14 May 2010 03:08:34 +0000 (23:08 -0400)]
Merge branch 'gdbus-merge'

Conflicts:
docs/reference/gio/gio-docs.xml
docs/reference/gio/gio-sections.txt
gio/tests/Makefile.am

14 years agoRemove a reference to Pango
Matthias Clasen [Tue, 11 May 2010 16:48:22 +0000 (12:48 -0400)]
Remove a reference to Pango

14 years agoThe default timeout is 25s
Matthias Clasen [Fri, 14 May 2010 02:15:47 +0000 (22:15 -0400)]
The default timeout is 25s

14 years agoDocument more floating variant details.
Matthias Clasen [Fri, 14 May 2010 01:53:51 +0000 (21:53 -0400)]
Document more floating variant details.

14 years agoAdd some more details to the long description
Matthias Clasen [Fri, 14 May 2010 01:45:18 +0000 (21:45 -0400)]
Add some more details to the long description

14 years agoClean up platform-specific includes
Matthias Clasen [Fri, 14 May 2010 00:29:04 +0000 (20:29 -0400)]
Clean up platform-specific includes

The problem was pointed out in bug 618029. To solve it, we moved
the GUnixFDList typedef to giotypes.h.

14 years agodocumentation for glib-mkenums @valuenum@
Ryan Lortie [Thu, 13 May 2010 23:54:30 +0000 (01:54 +0200)]
documentation for glib-mkenums @valuenum@

14 years agocheck for working gettext() before running tests
Ryan Lortie [Tue, 11 May 2010 17:48:19 +0000 (19:48 +0200)]
check for working gettext() before running tests

14 years agoAdd configure check for memmem()
Ryan Lortie [Thu, 13 May 2010 22:53:42 +0000 (00:53 +0200)]
Add configure check for memmem()

14 years agoGDBus: update gdbus(1) man page
David Zeuthen [Thu, 13 May 2010 22:19:16 +0000 (18:19 -0400)]
GDBus: update gdbus(1) man page

14 years agoGDBus: Nuke G_BUS_TYPE_NONE
David Zeuthen [Thu, 13 May 2010 22:04:48 +0000 (18:04 -0400)]
GDBus: Nuke G_BUS_TYPE_NONE

14 years agoGDBus: Remove g_dbus_is_activated()
David Zeuthen [Thu, 13 May 2010 21:44:42 +0000 (17:44 -0400)]
GDBus: Remove g_dbus_is_activated()

It's generally hard to get this right so don't attempt to do so.

14 years agoGDBus: subscribe to PropertiesChanged() before calling GetAll()
David Zeuthen [Thu, 13 May 2010 21:20:39 +0000 (17:20 -0400)]
GDBus: subscribe to PropertiesChanged() before calling GetAll()

Otherwise there's a slight chance of a race.

14 years agoGDBus: Don't take a GError for g_dbus_proxy_get_cached_property_names()
David Zeuthen [Thu, 13 May 2010 21:10:15 +0000 (17:10 -0400)]
GDBus: Don't take a GError for g_dbus_proxy_get_cached_property_names()

We stopped doing this for get_cached_property() so no reason to do it
here.

Signed-off-by: David Zeuthen <davidz@redhat.com>
14 years agoGDBus: Update docs for GDBusProxy::g-properties-changed signal
David Zeuthen [Thu, 13 May 2010 20:57:29 +0000 (16:57 -0400)]
GDBus: Update docs for GDBusProxy::g-properties-changed signal

Also update the example. See

https://bugzilla.gnome.org/show_bug.cgi?id=618559

for more details.

Signed-off-by: David Zeuthen <davidz@redhat.com>
14 years agoMake GVariant handling in PropertiesChanged more efficient
Christian Persch [Thu, 13 May 2010 17:01:04 +0000 (19:01 +0200)]
Make GVariant handling in PropertiesChanged more efficient

There's no need to re-build the a{sv} array, just get it right out of
the parameters. Also avoid some string copies.

Signed-off-by: David Zeuthen <davidz@redhat.com>
14 years agoPlug some mem leaks
Christian Persch [Thu, 13 May 2010 17:20:26 +0000 (19:20 +0200)]
Plug some mem leaks

g_variant_get (v, "s", &str) returns a string copy; use "&s" instead.

Signed-off-by: David Zeuthen <davidz@redhat.com>
14 years agoGDBus: Add GDBusAuthObserver param in g_dbus_connection_new_for_address()
David Zeuthen [Thu, 13 May 2010 20:32:11 +0000 (16:32 -0400)]
GDBus: Add GDBusAuthObserver param in g_dbus_connection_new_for_address()

This is to match g_dbus_connection_new(). This extension allows us to
extend GDBusAuthObserver to also be used in client-side authentication
in the future (right now it's only used on the server-side).

14 years agoGDBus: Rename ::deny-authentication-peer to ::authorize-authenticated-peer
David Zeuthen [Thu, 13 May 2010 20:20:31 +0000 (16:20 -0400)]
GDBus: Rename ::deny-authentication-peer to ::authorize-authenticated-peer

14 years agoRemove the credentials argument from g_unix_connect_send_credentials()
Matthias Clasen [Thu, 13 May 2010 18:25:29 +0000 (14:25 -0400)]
Remove the credentials argument from g_unix_connect_send_credentials()

Instead, make it always send the current credentials.

14 years agoGDBus: Make message serialization routines take capabilities param
David Zeuthen [Thu, 13 May 2010 18:01:41 +0000 (14:01 -0400)]
GDBus: Make message serialization routines take capabilities param

This is needed to e.g. allow encoding maybe types (once we add
G_DBUS_CAPABILITY_FLAGS_MAYBE_TYPES) if, and only if, that capability
has been negotiated with the peer (via authentication).

14 years agoremove the redundant interface_name parameter
Matthias Clasen [Thu, 13 May 2010 17:09:58 +0000 (13:09 -0400)]
remove the redundant interface_name parameter

14 years agoGDBus: Catch up with new PropertiesChanged signal
David Zeuthen [Thu, 13 May 2010 15:56:15 +0000 (11:56 -0400)]
GDBus: Catch up with new PropertiesChanged signal

After a long discussion, this has finally been standardized in the
D-Bus spec. See

 http://lists.freedesktop.org/archives/dbus/2010-May/012667.html
 http://lists.freedesktop.org/archives/dbus/2010-May/012712.html

Signed-off-by: David Zeuthen <davidz@redhat.com>
14 years agoFill out the export section of the migration guide
Matthias Clasen [Thu, 13 May 2010 05:04:29 +0000 (01:04 -0400)]
Fill out the export section of the migration guide

14 years agoUpdate Shavian transliteration
Thomas Thurman [Thu, 13 May 2010 04:51:30 +0000 (00:51 -0400)]
Update Shavian transliteration

14 years agoAdd an example of exporting a GObject
Matthias Clasen [Thu, 13 May 2010 04:39:26 +0000 (00:39 -0400)]
Add an example of exporting a GObject

This is more manual work than dbus-glib.

14 years agoGDBus: add 'monitor' verb to gdbus(1)
David Zeuthen [Thu, 13 May 2010 03:12:14 +0000 (23:12 -0400)]
GDBus: add 'monitor' verb to gdbus(1)

This uncovered a bug in name watching if the name wasn't activatable.

Also provoked the need for on_connection variants of g_bus_watch_name
(added g_bus_watch_proxy's variant as well).

14 years agoGDBus: Make gdbus(1) print annotations when introspecting data
David Zeuthen [Thu, 13 May 2010 02:09:18 +0000 (22:09 -0400)]
GDBus: Make gdbus(1) print annotations when introspecting data

Also make the gdbus-example-server include some example
annotations. The output looks like this:

$ gdbus introspect --session --dest org.gtk.GDBus.TestServer --object-path /org/gtk/GDBus/TestObject
node /org/gtk/GDBus/TestObject {
  interface org.freedesktop.DBus.Properties {
    methods:
      Get(in  s interface_name,
          in  s property_name,
          out v value);
      GetAll(in  s interface_name,
             out a{sv} properties);
      Set(in  s interface_name,
          in  s property_name,
          in  v value);
    signals:
      PropertiesChanged(s interface_name,
                        a{sv} changed_properties);
  };
  interface org.freedesktop.DBus.Introspectable {
    methods:
      Introspect(out s xml_data);
  };
  interface org.freedesktop.DBus.Peer {
    methods:
      Ping();
      GetMachineId(out s machine_uuid);
  };
  @org.gtk.GDBus.Annotation("OnInterface")
  @org.gtk.GDBus.Annotation("AlsoOnInterface")
  interface org.gtk.GDBus.TestInterface {
    methods:
      @org.gtk.GDBus.Annotation("OnMethod")
      HelloWorld(in  s greeting,
                 out s response);
      EmitSignal(@org.gtk.GDBus.Annotation.("OnArg")
                 in  d speed_in_mph);
      GimmeStdout();
    signals:
      @org.gtk.GDBus.Annotation("Onsignal")
      VelocityChanged(d speed_in_mph,
                      @org.gtk.GDBus.Annotation.("OnArg_NonFirst")
                      s speed_as_string);
    properties:
      @org.gtk.GDBus.Annotation("OnProperty")
        @org.gtk.GDBus.Annotation("OnAnnotation_YesThisIsCrazy")
      readonly s FluxCapicitorName = 'DeLorean';
      readwrite s Title = 'Back To C!';
      readonly s ReadingAlwaysThrowsError;
      readwrite s WritingAlwaysThrowsError = "There's no home like home";
      writeonly s OnlyWritable;
      readonly s Foo = 'Tick';
      readonly s Bar = 'Tock';
  };
};

14 years agoAdd a note about implemented standard interfaces
Matthias Clasen [Thu, 13 May 2010 01:51:06 +0000 (21:51 -0400)]
Add a note about implemented standard interfaces

14 years agoGDBusProxy: Remove error in get_cached_property() and add set_cached_property()
David Zeuthen [Thu, 13 May 2010 00:43:40 +0000 (20:43 -0400)]
GDBusProxy: Remove error in get_cached_property() and add set_cached_property()

This makes it possible to use the cached properties mechanism even if
constructing the proxy with the DO_NOT_LOAD_PROPERTIES flag.

This is useful for cases where you obtain the and track object
properties out-of-band. For example, in udisks, the plan is to have
something like this

 Manager.GetObjects    (out ao paths, out aa{sa{sv}} all_properties);
 Manager.ObjectAdded   (o path, a{sa{sv}} all_properties);
 Manager.ObjectChanged (o path, a{sa{sv}} all_properties);
 Manager.ObjectRemoved (o path, a{sa{sv}} all_properties);

E.g. the first GetObjects() call will return *all* data about *all*
exported objects. Further, this way a client will only need to listen
these three signals (three AddMatch) on the Manager object and it will
never need to do GetAll() etc (e.g. can use DO_NOT_LOAD_PROPERTIES).

(Of course this only works if the client is interested in all
objects... while this is true for udisks it is generally not true for
other D-Bus services).

Also use expected_interface to check for programming errors.

14 years agoUpdated Shavian transliteration
Thomas Thurman [Wed, 12 May 2010 22:41:27 +0000 (18:41 -0400)]
Updated Shavian transliteration

14 years agoAdd some more verbiage
Matthias Clasen [Wed, 12 May 2010 21:56:56 +0000 (17:56 -0400)]
Add some more verbiage

14 years agoGDBus: Add an example of a GDBusProxy subclass
David Zeuthen [Wed, 12 May 2010 19:49:48 +0000 (15:49 -0400)]
GDBus: Add an example of a GDBusProxy subclass

14 years agoUpdate an example to the latest auth observer api
Matthias Clasen [Wed, 12 May 2010 17:01:40 +0000 (13:01 -0400)]
Update an example to the latest auth observer api

14 years agoCorrect env var names
Matthias Clasen [Wed, 12 May 2010 17:01:02 +0000 (13:01 -0400)]
Correct env var names

and add a note about priority