Skip to content


Subversion checkout URL

You can clone with
Download ZIP
Commits on Aug 16, 2011
  1. @desrt

    glib 2.29.16

    desrt authored
  2. @desrt

    distcheck fixes

    desrt authored
Commits on Aug 15, 2011
  1. More NEWS updates

    Matthias Clasen authored
  2. @desrt

    Updated Esperanto translation

    desrt authored
    Esperanto weekdays and month days are written in lowercase (as in
  3. @smcv

    Add a stress-test for GDBusProxy in threads with no default main context

    smcv authored David Zeuthen committed
    Destroying a GDBusProxy in a thread used to race with NameOwnerChanged
    being delivered to the main context's thread (GNOME #651133).
    Also, g_dbus_proxy_call_sync in a thread would race with NameOwnerChanged
    being delivered to the main context's thread and rewriting the name_owner
    (GNOME #656039).
    Bug-NB: NB#259760
    Signed-off-by: Simon McVittie <>
    Signed-off-by: David Zeuthen <>
  4. @smcv

    GDBusProxy: hold properties_lock while using any mutable property

    smcv authored David Zeuthen committed
    This changes the meaning of "properties_lock" from "lock for D-Bus
    properties" to "lock for GObject properties".
    The most common problem, and the only one I've reproduced in a regression
    test, is name_owner, which can be updated by the thread that owns
    the GDBusProxy's main context (i.e. the thread-default main context of
    the thread that constructed it) at the same time that a blocking call
    is made. When a GDBusProxy is constructed in a thread-pool thread for
    short-term use, the main context will typically be the global default
    main context (which is actively running in the main thread!), making
    this extremely problematic.
    The interface info is perhaps a theoretical concern - one thread could
    conceivably set it at the same time that another thread uses it, but only
    in relatively pathological situations. The current API for this does have
    the problem that it returns a borrowed ref, but interface info is
    hopefully permanent anyway.
    The default timeout is probably only a theoretical concern - it's just an
    int, so writes are indivisible, and there's no worry about whether
    something has been freed - but to be safe, let's hold the lock for that
    Bug-NB: NB#259760
    Signed-off-by: David Zeuthen <>
  5. @smcv

    GDBusProxy: factor out async_init_data_set_name_owner

    smcv authored David Zeuthen committed
    This removes the need for async_init_get_name_owner_cb to cope with being
    called without a real GAsyncResult, and will simplify the addition of
    correct thread-locking.
    In async_init_data_set_name_owner, use the name_owner parameter instead
    of the corresponding member of GDBusProxyPrivate, partly to reduce
    pointer-chasing but mainly to avoid needing to hold the lock.
    Signed-off-by: David Zeuthen <>
  6. @smcv

    g_dbus_proxy_get_property: use accessors for all mutable state

    smcv authored David Zeuthen committed
    These ought to have thread-locking, and having it in the accessor seems
    better than duplicating it here.
    Signed-off-by: David Zeuthen <>
  7. @smcv

    GDBusProxy: if a well-known name is not owned, don't GetAll from the …

    smcv authored David Zeuthen committed
    If you run:
        ( cd gio/tests && G_DBUS_DEBUG=all ./gdbus-proxy-well-known-name )
    you can see that in the case where the name com.example.TestService isn't
    owned yet, the GDBusProxy calls GetAll() with no destination, resulting
    in an error reply from the peer (the dbus-daemon itself). That's clearly
    not right!
    However, if priv->name is NULL, that indicates the special case where we
    really do want to talk directly to a peer, instead of via the bus daemon
    (most likely to be used on peer-to-peer connections); in that special
    case, do call GetAll().
    Signed-off-by: Simon McVittie <>
    Signed-off-by: David Zeuthen <>
  8. @desrt
  9. @desrt
  10. GDBusObjectManagerClient: Emit signals on proxy before emitting on ma…

    David Zeuthen authored
    This is needed because the proxy may need to update its internal state
    which a signal handler connected to the manager may rely on.
    Signed-off-by: David Zeuthen <>
  11. @ajacoutot @cgwalters

    open(2): POSIX compatibility.

    ajacoutot authored cgwalters committed
    Posix allows for open(2) to fail with errno = EINTR.
    Normal this isn't seen when opening files. However in some case we are
    opening a fifo for write which will block until another process opens it
    for read. If a signal is received while blocked, open(2) fails with
    errno = EINTR.
Commits on Aug 14, 2011
  1. Add g_mkdtemp in the spirit of g_mkstemp

    Matthias Clasen authored
    At the same time, also add g_mkdtemp_full and g_dir_make_tmp
    variants. The patch also unifies the unique-name-generating
    code for all variants of mkstemp and mkdtemp and adds tests
    for the new functions.
    Based on patches by Paolo Bonzini,
  2. GHmac: pedantic doc fixes

    Matthias Clasen authored
    Add a link to an explanation of what HMAC is, and tweak
    some formatting.
  3. News for 2.29.16

    Matthias Clasen authored
  4. hmac: Implementation of HMAC in glib

    Stef Walter authored
    This implements g_hmac_xxx() functionality using the standard checksum
    functions supported by glib.
    HMAC is a secure way to hash a key and a password. Many other
    approaches fraught with append and prepend issues.
    Includes test cases defined in relevant RFCs
Commits on Aug 13, 2011
  1. @elmarco


    elmarco authored Matthias Clasen committed
    The implementation of GValue is not public or documented.  When
    allocated on the stack, initializing a GValue is usually done as
    documented with:
    GValue value = { 0, };
    There is lot code around (including WebKit) that added all the missing
    fields, resulting in this ugly and non-obvious:
    GValue value = { 0, { { 0 } } };
    However, this doesn't play nice with -Wmissing-field-initializers for
    example. Thus, G_VALUE_INIT.
  2. @sjoerd-ccu
  3. GDBusProxy: on_properties_changed initialize some variables

    Matthias Clasen authored
    This avoids calling g_variant_unref and g_free on uninitialized memory
    if PropertiesChanged is received in the creating thread's thread-default
    main context's thread, at the same time as releasing the last ref in
    another thread. This would result in "goto out" before the variables
    freed after that label had been initialized to NULL.
    Based on a patch by Simon McVittie, bug 656282
  4. gdatetime: Add a test for %OM

    Matthias Clasen authored
  5. Remove a gccism

    Matthias Clasen authored
    Pointed out in bug 656152.
  6. Fix statfs/statvfs decision

    Matthias Clasen authored
    We want to force use of statvfs when statfs is deficient.
    This does not make any difference on Linux.
  7. Trivial typo fix

    Matthias Clasen authored
Commits on Aug 12, 2011
  1. In addition to /media and $HOME, also show mounts in $XDG_USER_DIR

    David Zeuthen authored
    Prepare for the future where udisks will use $XDG_USER_DIR/Volumes
    instead of /media when mounting filesystems on behalf of the user.
    Signed-off-by: David Zeuthen <>
  2. @atriwidada
  3. @fanc999

    Update VS property sheets ("install" phase)

    fanc999 authored
    Copy the new GioTLS headers that were introduced into the GIO
    library in commit 	0f99cfa during the
    "install" stage.
Commits on Aug 11, 2011
  1. @alshopov

    Updated Bulgarian translation

    alshopov authored
  2. @behdad
  3. @martinpitt
  4. @martinpitt
  5. @martinpitt

    [gi] Fix parameter name typos in Gio docstrings

    martinpitt authored
    Found by GIR compiler when building gobject-introspection:
    gir/gio-2.0.c:33525: Warning: Gio: g_tls_password_set_description: unknown
    parameter 'flags' in documentation comment, should be one of 'password',
    gir/gio-2.0.c:14568: Warning: Gio: g_action_group_action_state_changed: unknown
    parameter 'state' in documentation comment, should be one of 'action_group',
    'action_name', 'value'
  6. @fanc999

    Bug 652827: Update

    fanc999 authored
    Add check macro for HAVE_WIN32_BUILTINS_FOR_ATOMIC_OPERATIONS, as it is
    now required for MSVC builds of glib/gatomic.c GLib 2.29.15+.
    It is true that the MinGW cross-compiler on Linux systems will have
    HAVE_WIN32_BUILTINS_FOR_ATOMIC_OPERATIONS defined during the completion
    of ./configure, but since this file is primarily meant for people
    compiling -on- Windows (and that the "native" Windows MinGW would neither
    ./configure to define HAVE_GCC_BUILTINS_FOR_ATOMIC_OPERATIONS and
    HAVE_WIN32_BUILTINS_FOR_ATOMIC_OPERATIONS), this file will be updated as
    it is for now at least until the situation for "native" Windows MinGW
    change. (please see Bug 652827 regarding this paragraph)
  7. @behdad

    Bug 652827 - glib-2.29.8 no longer builds with's toolchain

    behdad authored
    Check for Win32 atomic intrinsics.
  8. @behdad

    Cleanup gatomic checks

    behdad authored
Something went wrong with that request. Please try again.