platform/upstream/glib.git
11 years agogobject: rename an unused parameter to make AIX happy
Dan Winship [Thu, 2 May 2013 17:58:25 +0000 (13:58 -0400)]
gobject: rename an unused parameter to make AIX happy

11 years agoGSocks5Proxy: don't crash if parsing negotiation reply fails
Simon McVittie [Thu, 2 May 2013 15:50:01 +0000 (16:50 +0100)]
GSocks5Proxy: don't crash if parsing negotiation reply fails

The GError should be initialized to NULL, otherwise we'll
"pile up" errors, then try to free an uninitialized pointer.

Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
Bug: https://bugzilla.gnome.org/show_bug.cgi?id=699493

11 years agohindi update
Rajesh Ranjan [Thu, 2 May 2013 08:15:46 +0000 (13:45 +0530)]
hindi update

11 years agoUpdated Slovenian translation
Matej Urbančič [Wed, 1 May 2013 18:32:44 +0000 (20:32 +0200)]
Updated Slovenian translation

11 years agoBump version to 2.37.1
Matthias Clasen [Wed, 1 May 2013 09:20:02 +0000 (05:20 -0400)]
Bump version to 2.37.1

11 years agoAdd 2.38 indexes to the docs 2.37.0
Matthias Clasen [Wed, 1 May 2013 04:16:25 +0000 (00:16 -0400)]
Add 2.38 indexes to the docs

11 years agoUpdates
Matthias Clasen [Wed, 1 May 2013 04:15:06 +0000 (00:15 -0400)]
Updates

11 years agogio: fix small leak
Tim Lunn [Wed, 1 May 2013 00:39:26 +0000 (10:39 +1000)]
gio: fix small leak

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

11 years agoGApplication: don't leak 'hint' on remote Open
Ryan Lortie [Sun, 21 Apr 2013 14:55:40 +0000 (10:55 -0400)]
GApplication: don't leak 'hint' on remote Open

We were using format string "s" to deconstruct the open hint into a
'const gchar *' which, of course, we never freed.  Fix that.

11 years agobytesicon: don't use g_object_unref() on GBytes
Cosimo Cecchi [Fri, 26 Apr 2013 21:11:02 +0000 (17:11 -0400)]
bytesicon: don't use g_object_unref() on GBytes

We need to use g_bytes_unref()

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

11 years agobytesicon: fix a memory leak
Cosimo Cecchi [Fri, 26 Apr 2013 21:07:41 +0000 (17:07 -0400)]
bytesicon: fix a memory leak

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

11 years agoconfigure: Assume C90 compatible malloc() prototype
Colin Walters [Fri, 26 Apr 2013 12:12:01 +0000 (08:12 -0400)]
configure: Assume C90 compatible malloc() prototype

This ancient code was attempting to cope with (unknown) systems whose
malloc() prototype was incompatible with the standard.  This test was
fragile; it would break if the build environment provided -Wall in
CFLAGS.

Now that it's 2013, let's assume that target systems have a sane
malloc().  If someone complains, we can revisit this.

https://bugzilla.gnome.org/698716

11 years agog_object_new: check for NULL from _constructor()
Ryan Lortie [Fri, 26 Apr 2013 15:27:51 +0000 (11:27 -0400)]
g_object_new: check for NULL from _constructor()

There is some code in the wild (like in gnome-session) that does this
from its custom _constructor() implementation:

{
  GObject *obj;

  obj = ((chain up));

  if (!object_is_viable (obj))
    {
      g_object_unref (obj);
      return NULL;
    }
  else
    return obj;
}

This has never been a valid use of GObject and this code has always
caused memory to be leaked[1] by growing the construction_objects list.
The ability to legitimately return NULL from a constructor was exactly
the reason that we created GInitable, in fact.

That doesn't change the fact that the g_object_new() rewrite will crash
in this case, so instead of doing that, let's emit a critical and avoid
the crash.  This will allow people to upgrade their GLib without also
upgrading their gnome-session.  Meanwhile, people can fix their broken
code.

[1] not in the strictest sense of the word, because it's still reachable

11 years agoTamil Translation Updated
Shantha kumar [Fri, 26 Apr 2013 06:10:25 +0000 (11:40 +0530)]
Tamil Translation Updated

11 years agogio/tests: Find "true" in PATH opposed to hardcoding the location
Mike Ruprecht [Thu, 25 Apr 2013 07:24:53 +0000 (02:24 -0500)]
gio/tests: Find "true" in PATH opposed to hardcoding the location

Not all systems have /usr/bin/true. Some have it in /bin/true.
Instead of trying to guess a hardcoded path to find it, let
g_app_info_create_from_commandline() internally search PATH
to find the program.

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

11 years ago[l10n] Updated Italian translation.
Milo Casagrande [Thu, 25 Apr 2013 07:01:11 +0000 (09:01 +0200)]
[l10n] Updated Italian translation.

11 years agodocs: fix docs for g_icon_[de]serialize()
Cosimo Cecchi [Wed, 24 Apr 2013 15:58:47 +0000 (11:58 -0400)]
docs: fix docs for g_icon_[de]serialize()

11 years agoUpdated Polish translation
Piotr Drąg [Tue, 23 Apr 2013 22:01:48 +0000 (00:01 +0200)]
Updated Polish translation

11 years agoGObject: substantially rework g_object_new()
Ryan Lortie [Thu, 28 Mar 2013 03:34:30 +0000 (23:34 -0400)]
GObject: substantially rework g_object_new()

Make a number of improvements to g_object_new():

 - instead of looking up the GParamSpec for the named property once in
   g_object_new() (in order to collect) and then again in g_object_newv
   (when actually setting the property), g_object_new_internal() is a
   new function that takes the GParamSpec on the interface to avoid the
   second lookup

 - in the case that ->constructor() is not set, we need not waste time
   creating an array of GObjectConstructParam to pass in.  Just directly
   iterate the list of parameters, calling set_property() on each.

 - instead of playing with linked lists to keep track of the construct
   properties, realise that the number of construct properties that we
   will set is exactly equal to the length of the construct_properties
   list on GObjectClass and the only thing that may change is where the
   value comes from (in the case that it was passed in)

   This assumption was already implicit in the existing code and can be
   seen from the sizing of the array used to hold the construct
   properties, but it wasn't taken advantage of to make things simpler.

 - instead of allocating and filling a separate array of the
   non-construct properties just re-iterate the passed-in list and set
   all properties that were not marked G_PARAM_CONSTRUCT (since the ones
   that were construct params were already used during construction)

 - use the new g_param_spec_get_default_value() API instead of
   allocating and setting the GValue for each construct property that
   wasn't passed from the user

Because we are now iterating the linked list of properties in-order we
need to append to that list during class initialising instead of
prepending.

These changes show a very small improvement on the simple-construction
performance testcase (probably just noise) and they improve the
complex-construction case by ~30%.

Thanks to Alex Larsson for reviews and fixes.

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

11 years agoGParamSpec: add g_param_spec_get_default_value()
Ryan Lortie [Tue, 23 Apr 2013 15:11:20 +0000 (11:11 -0400)]
GParamSpec: add g_param_spec_get_default_value()

The way of getting the default value out of a GParamSpec is to allocate
a GValue, initialise it, then call g_param_spec_set_default() to set the
default value into that GValue.

This is exactly how we handle setting the default value for all of the
construct properties that were not explicitly passed to g_object_new().

Instead of doing the alloc/init/store on all construct properties on
every call to g_object_new(), we can cache those GValues in the private
data of the GParamSpec itself and reuse them.

This patch does not actually make that change to g_object_new() yet, but
it adds the API to GParamSpec so that a future patch to GObject can make
the change.

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

11 years agoGType: add accessor for instance private offset
Ryan Lortie [Tue, 23 Apr 2013 14:38:23 +0000 (10:38 -0400)]
GType: add accessor for instance private offset

Since instance private data is now always at a constant offset to the
instance pointer, we can add an accessor for it that doesn't also
require an instance.

The idea is that classes can call this from their class_init and store
it in a file-scoped static variable and use that to find their private
data on instances very quickly, without a priv pointer.

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

11 years agoPartially revert "Merge waitpid() from g_spawn_sync into gmain()"
Ryan Lortie [Tue, 23 Apr 2013 17:26:48 +0000 (13:26 -0400)]
Partially revert "Merge waitpid() from g_spawn_sync into gmain()"

This partially reverts commit ce0022933c255313e010b27f977f4ae02aad1e7e.

It used to be safe to use g_spawn_sync() from processes that had their
own SIGCHLD handler because it simply called wait().  When it was
changed to depend on the GLib child watching infrastructure this meant
that GLib had to own the SIGCHLD handler.

This caused hangs in at least Pidgin.

The patch contained two other improvements to the child watch code which
we want to keep, so only revert the changes to gspawn itself.

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

11 years agoTest GUnixSocketAddress construction
Ryan Lortie [Tue, 23 Apr 2013 18:30:42 +0000 (14:30 -0400)]
Test GUnixSocketAddress construction

This test fails without the previous fix and works properly with it.

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

11 years agoGUnixSocketAddress: fix construct parameter issue
Ryan Lortie [Tue, 23 Apr 2013 17:38:33 +0000 (13:38 -0400)]
GUnixSocketAddress: fix construct parameter issue

GUnixSocketAddress has some very strange logic for interpreting its
construct paramters.  This logic behaves differently in these two cases:

  g_object_new (G_TYPE_UNIX_SOCKET_ADDRESS,
                "abstract", FALSE,
                "address-type", ...,
                NULL);

and

  g_object_new (G_TYPE_UNIX_SOCKET_ADDRESS,
                "address-type", ...,
                NULL);

even though the default value for "abstract" is already FALSE.

Change the way the code works so that it is not sensitive to people
merely setting a property to its default value.

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

11 years agogtype: tweak valgrind hints
Ryan Lortie [Tue, 23 Apr 2013 15:59:09 +0000 (11:59 -0400)]
gtype: tweak valgrind hints

The valgrind client requests were not producing the intended result in
some cases, so step up our game a bit.

11 years agoRevert "GObject: prevent installing properties after init"
Ryan Lortie [Mon, 22 Apr 2013 22:32:05 +0000 (18:32 -0400)]
Revert "GObject: prevent installing properties after init"

This reverts commit ddb0ce14215cd62c7a2497d6cf9f2ea63c40ebb5.

Colin's smoke testing has found issues in at least gjs and
gnome-settings-daemon.  We'll need to see if we can address those.

11 years agoGObject: prevent installing properties after init
Ryan Lortie [Mon, 22 Apr 2013 21:37:18 +0000 (17:37 -0400)]
GObject: prevent installing properties after init

GObject has previously allowed installing properties after class_init
has finished running.  This means that you could install some of your
own properties on G_TYPE_OBJECT, for example, although they wouldn't
have worked properly.

Prevent this from happening.  Require that all properties are installed by
the time class_init has finished.

Complaints go to this bug:

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

11 years agogtype: put private data before the instance
Ryan Lortie [Mon, 22 Apr 2013 16:33:30 +0000 (12:33 -0400)]
gtype: put private data before the instance

Classically, a GTypeInstance has had the following layout:

 [[[[GTypeInstance] GObject] TypeA] TypeB] [TypeAPrivate] [TypeBPrivate]

where TypeB is a subclass of TypeA which is a GObject.  Both TypeA and
TypeB use pivate data.

The main problem with this approach is that the offset between a pointer
to an instance of TypeA and the TypeAPrivate is not constant: it changes
depending on the depth of derivation and the size of the instance
structures of the derived types.  For example, changing the size of the
TypeB structure in the above example would push the TypeAPrivate further
along.

This complicates the implementation of g_type_instance_get_private().
In particular, during object construction when the class pointer to the
'complete type' of the object is not yet stored in the header of the
GTypeInstance, we need a lookup table in order to be able to implement
g_type_instance_get_private() accurately.

We can avoid this problem by storing the private data before the
structures, in reverse order, like so:

  [TypeBPrivate] [TypeAPrivate] [[[[GTypeInstance] GObject] TypeA] TypeB]

Now the distance between TypeA and TypeAPrivate depends only on the size
of GObject and GTypeInstance, which are static.  Even in the case of
TypeB, the distance is not statically known but can be determined at
runtime and is constant (because we will know the size of TypeAPrivate
by the time we initialise TypeB and it won't change).

This approach requires a slighty dirty trick: allocating extra memory
_before_ the pointer we return from g_type_create_instance().  The main
problem with this is that it will cause valgrind to behave very badly,
reporting almost everything as "possibly lost".

We can correct for this by including a few valgrind client requests in
order to inform it that the start of the GTypeInstance should be
considered a block of memory and that pointers to it should mean that
this block is reachable.  In order to make the private data reachable,
we also declare it as a block and include an extra pointer from the end
of the primary block pointing back at it.  All of this is only done if
we are running under Valgrind.

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

11 years agogslice: disable by default under valgrind
Ryan Lortie [Mon, 22 Apr 2013 16:28:44 +0000 (12:28 -0400)]
gslice: disable by default under valgrind

All experienced GLib hackers know that G_SLICE=always-malloc is
absolutely essential when valgrinding but many users of GLib don't know
about this and get hit pretty hard when valgrinding their programs.

When initialising gslice, add a check to see if we are running under
valgrind and disable ourselves if we are.

We only do the check in the case that G_SLICE= was not specified in the
environment, so setting it to an empty string will prevent this default
behaviour.

I considered modifying gslice to use the VALGRIND_MALLOCLIKE_BLOCK
client request in all cases in order to just mark the blocks properly
but these calls are not free and gslice is pretty hyper-optimised.  It's
easier to just disable gslice completely and this way we only have to do
one check during startup.  It's also theoretically possible that someone
might want to use valgrind to debug gslice, in which case the extra
annotations would probably cause quite a lot of difficulty.

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

11 years agoAdd a copy of valgrind.h to glib/
Ryan Lortie [Mon, 22 Apr 2013 16:10:35 +0000 (12:10 -0400)]
Add a copy of valgrind.h to glib/

This is a BSD-licenced header file that is designed to be copy-pasted
into programs.  It will allow us to detect if we are running under
Valgrind and send "client requests" to it.

We will use this for a couple of reasons in upcoming patches.

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

11 years agoGMenu: add g_menu_item_set_icon() convenience
Ryan Lortie [Sat, 20 Apr 2013 22:55:03 +0000 (18:55 -0400)]
GMenu: add g_menu_item_set_icon() convenience

This function takes a GIcon, serialises it and sets the resulting
GVariant as the "icon" attribute on the menu item.  We will need to add
a patch to Gtk to actually consume this icon.

Also add G_MENU_ATTRIBUTE_ICON.

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

11 years agotests: Fix appinfo test
Jasper St. Pierre [Mon, 22 Apr 2013 17:12:12 +0000 (13:12 -0400)]
tests: Fix appinfo test

11 years agoUpdated Spanish translation
Daniel Mustieles [Mon, 22 Apr 2013 15:49:06 +0000 (17:49 +0200)]
Updated Spanish translation

11 years agoUpdated gujarati file
Sweta Kothari [Mon, 22 Apr 2013 10:23:10 +0000 (15:53 +0530)]
Updated gujarati file

11 years agoUpdated POTFILES.in
Piotr Drąg [Sun, 21 Apr 2013 22:37:20 +0000 (00:37 +0200)]
Updated POTFILES.in

11 years agoGIcon: add g_icon_[de]serialize()
Ryan Lortie [Sat, 20 Apr 2013 22:50:21 +0000 (18:50 -0400)]
GIcon: add g_icon_[de]serialize()

Add support for serialising a GIcon to a GVariant and deserialising the
result back to a GIcon.

This solves a number of problems suffered by the existing to_string()
API, primarily these:

 - not forcing the icon to be a utf8 string means that we can
   efficiently encode a PNG (ie: just give the array of bytes)

 - there is no need to ensure that proper types are loaded before using
   the deserialisation interface.  'Foreign' icon types will probably
   emit a serialised format the deserialises to a GBytesIcon.

We additionally clearly document what is required for being a consumer
or implementation of #GIcon.

Further patches will be required to GdkPixbuf and GVfsIcon to bring
their implementations in line with the new rules (essentially: introduce
implementations of the new serialize() API).

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

11 years agoIntroduce GBytesIcon
Ryan Lortie [Sat, 20 Apr 2013 21:23:31 +0000 (17:23 -0400)]
Introduce GBytesIcon

GBytesIcon is an icon that has a GBytes inside of it where the GBytes
contains some sort of encoded image in a widely-recognised file format.
Ideally this will be a PNG.

It implements GLoadableIcon, so GTK will already understand how to use
it, but we will add another patch there to make things more efficient.

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

11 years agoGIcon: pure re-factor of _from_string()
Ryan Lortie [Sat, 20 Apr 2013 20:41:09 +0000 (16:41 -0400)]
GIcon: pure re-factor of _from_string()

Split out the 'simple string format' cases of URIs, file paths and
themed icons to a separate function.

This function will be shared by g_icon_deserialize().

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

11 years agogdesktopappinfo: Allow getting the desktop ID from the filename
Jasper St. Pierre [Sat, 20 Apr 2013 19:13:42 +0000 (15:13 -0400)]
gdesktopappinfo: Allow getting the desktop ID from the filename

11 years agogactionmap: don't require GActionGroup
Lars Uebernickel [Sat, 20 Apr 2013 22:58:14 +0000 (18:58 -0400)]
gactionmap: don't require GActionGroup

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

11 years agog_variant_get_data_as_bytes: return a sub-bytes if necessary
Lars Uebernickel [Sat, 20 Apr 2013 15:44:21 +0000 (11:44 -0400)]
g_variant_get_data_as_bytes: return a sub-bytes if necessary

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

11 years agoGVariant: add new g_variant_new_take_string() API
Ryan Lortie [Sat, 20 Apr 2013 15:44:53 +0000 (11:44 -0400)]
GVariant: add new g_variant_new_take_string() API

Lots of people have variously asked for APIs like
g_variant_new_string_printf() in order to avoid having to use
g_strdup_printf(), create a GVariant using g_variant_new_string(), then
free the temporary string.

Instead of supporting that, plus a million other potential cases,
introduce g_variant_new_take_string() as a compromise.

It's not possible to write:

 v = g_variant_new_take_string (g_strdup_printf (....));

to get the desired result and avoid the extra copies.  In addition, it
works with many other functions.

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

11 years agoAdd async version of g_file_make_directory()
Sébastien Wilmet [Wed, 17 Apr 2013 14:37:55 +0000 (16:37 +0200)]
Add async version of g_file_make_directory()

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

11 years agoGFile: fix the *_async_thread()
Sébastien Wilmet [Wed, 17 Apr 2013 13:07:03 +0000 (15:07 +0200)]
GFile: fix the *_async_thread()

In the *_async_thread() functions, call the corresponding synchronous
function instead of calling the interface vfunc, which can be NULL.

In some cases the check for the vfunc == NULL was done, but to be
consistent it is better to always call the synchronous version (and the
code is simpler).

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

11 years agoGMenu: add g_menu_remove_all() API
Ryan Lortie [Mon, 8 Apr 2013 19:27:16 +0000 (15:27 -0400)]
GMenu: add g_menu_remove_all() API

Removes all of the items from a GMenu.  The keyboard indicator wants to
do this as part of refreshing the layout list, as an example.

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

11 years agoGVariant parser: tweak lexer for format strings
Ryan Lortie [Wed, 17 Apr 2013 16:12:20 +0000 (12:12 -0400)]
GVariant parser: tweak lexer for format strings

Tweak the lexer so that '[%s]' gets parsed as three separate tokens,
instead of the closing bracket getting sucked into the format string.

11 years agoGVariant parser: turn two asserts into soft errors
Ryan Lortie [Wed, 17 Apr 2013 16:08:00 +0000 (12:08 -0400)]
GVariant parser: turn two asserts into soft errors

Parsing wrongly-typed GVariant text format data is a well-defined
operation and it ought to result in a GError.  We do that for most
cases, but 'v' and 'ay' were being treated differently.  Fix those as
well.

11 years agoutils: avoid redundant set/endpwent around getpwuid
Robert Bragg [Wed, 17 Apr 2013 08:35:50 +0000 (04:35 -0400)]
utils: avoid redundant set/endpwent around getpwuid

set/endpwent are only required for iterating through passwd entries
using getpwent(). Since we are explicitly requesting a passwd entry
for a uid then the set/endpwent calls are redundant.

Removing these redundant calls is required for building on Android
since their C library doesn't implement these.

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

11 years agoGVariant: fix transfer annotation
Giovanni Campagna [Fri, 12 Apr 2013 15:25:15 +0000 (17:25 +0200)]
GVariant: fix transfer annotation

g_variant_new_from_bytes() returns a floating reference, so it
must be annotated (transfer none)

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

11 years agocheck-abis.sh: allow _ftext as that's leaked on mips
Emilio Pozuelo Monfort [Sat, 13 Apr 2013 10:02:24 +0000 (12:02 +0200)]
check-abis.sh: allow _ftext as that's leaked on mips

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

11 years agoFix compilation on Android with the bionic C library
Sebastian Dröge [Wed, 28 Nov 2012 15:55:54 +0000 (16:55 +0100)]
Fix compilation on Android with the bionic C library

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

11 years agobookmarkfile: Fix annotations on GBookmarkFile
Jasper St. Pierre [Wed, 27 Mar 2013 20:41:44 +0000 (16:41 -0400)]
bookmarkfile: Fix annotations on GBookmarkFile

11 years agotests: Add test for disabled help options
Marek Kasik [Wed, 10 Apr 2013 11:48:49 +0000 (13:48 +0200)]
tests: Add test for disabled help options

Test whether help options are hidden when they are disabled
by g_option_context_set_help_enabled(.., FALSE).

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

11 years agoDon't show help options when help is disabled
Marek Kasik [Tue, 9 Apr 2013 16:03:53 +0000 (18:03 +0200)]
Don't show help options when help is disabled

Check whether help is enabled when creating help text
in g_option_context_get_help().

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

11 years agobuilding.xml: Fix a typo of "fo" to "of"
Jason Quinn [Thu, 11 Apr 2013 09:00:38 +0000 (05:00 -0400)]
building.xml: Fix a typo of "fo" to "of"

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

11 years agoUpdated Hungarian translation
Balázs Úr [Wed, 10 Apr 2013 21:33:20 +0000 (23:33 +0200)]
Updated Hungarian translation

11 years agoAdd async version of g_file_trash()
Sébastien Wilmet [Thu, 31 Jan 2013 17:45:32 +0000 (18:45 +0100)]
Add async version of g_file_trash()

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

11 years agoAdd missing details in GFile documentation
Sébastien Wilmet [Thu, 31 Jan 2013 17:44:24 +0000 (18:44 +0100)]
Add missing details in GFile documentation

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

11 years agogmain: fix double-unlock in g_main_context_unref()
Dan Winship [Wed, 10 Apr 2013 15:39:12 +0000 (11:39 -0400)]
gmain: fix double-unlock in g_main_context_unref()

When unreffing a context with sources still attached, it would end up
unlocking an already-unlocked context, causing crashes on platforms
that (unlike Linux) actually check for that.

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

11 years agogunixmounts: remove warning on unused variable
Lionel Landwerlin [Fri, 5 Apr 2013 14:21:23 +0000 (15:21 +0100)]
gunixmounts: remove warning on unused variable

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

11 years agoFix deprecation warning for g_io_channel_read
Robert Ancell [Wed, 10 Apr 2013 03:53:14 +0000 (15:53 +1200)]
Fix deprecation warning for g_io_channel_read

11 years agowin32: Allow POSIX threads to be used if --with-threads=posix
Руслан Ижбулатов [Tue, 9 Apr 2013 12:09:33 +0000 (14:09 +0200)]
win32: Allow POSIX threads to be used if --with-threads=posix

All tests pass with this patch AND a good pthreads implementation
(i'm using winpthreads, not pthreads-w32).

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

11 years agowin32: Fix warning
Руслан Ижбулатов [Tue, 9 Apr 2013 12:02:54 +0000 (14:02 +0200)]
win32: Fix warning

11 years agoUse AC_LINK_IFELSE instead of AC_TRY_COMPILE
Руслан Ижбулатов [Sat, 3 Dec 2011 03:08:26 +0000 (07:08 +0400)]
Use AC_LINK_IFELSE instead of AC_TRY_COMPILE

Fixes #665445

11 years agog_dbus_connection_signal_subscribe: add path and namespace matching
Lars Uebernickel [Mon, 8 Apr 2013 06:13:10 +0000 (08:13 +0200)]
g_dbus_connection_signal_subscribe: add path and namespace matching

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

11 years agog_atomic_int_get, g_atomic_pointer_get: accept const arguments
James Turner [Fri, 5 Apr 2013 19:29:55 +0000 (15:29 -0400)]
g_atomic_int_get, g_atomic_pointer_get: accept const arguments

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

11 years agosimpler regex match on the shebang
Antoine Jacoutot [Tue, 26 Mar 2013 11:34:51 +0000 (12:34 +0100)]
simpler regex match on the shebang

The previous pattern didn't match on traditional non-GNU sed(1).
https://bugzilla.gnome.org/show_bug.cgi?id=696629

11 years agogunixmounts: correctly flag hasmntopt usage
Lionel Landwerlin [Fri, 5 Apr 2013 14:18:28 +0000 (15:18 +0100)]
gunixmounts: correctly flag hasmntopt usage

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

11 years agoUpdated kn translations
Shankar Prasad [Fri, 5 Apr 2013 11:53:01 +0000 (17:23 +0530)]
Updated kn translations

11 years agoUpdated kn translations
Shankar Prasad [Fri, 5 Apr 2013 10:50:28 +0000 (16:20 +0530)]
Updated kn translations

11 years agoUpdated kn translations
Shankar Prasad [Fri, 5 Apr 2013 07:06:07 +0000 (12:36 +0530)]
Updated kn translations

11 years agoGDateTime to GTimeZone in opaque structure doc
Jesse van den Kieboom [Fri, 5 Apr 2013 06:01:17 +0000 (08:01 +0200)]
GDateTime to GTimeZone in opaque structure doc

11 years agogversionmacros: fix a typo
Cosimo Cecchi [Thu, 4 Apr 2013 17:15:00 +0000 (13:15 -0400)]
gversionmacros: fix a typo

11 years agoapplication: introduce methods to mark the application as busy
Cosimo Cecchi [Wed, 3 Apr 2013 18:12:03 +0000 (14:12 -0400)]
application: introduce methods to mark the application as busy

This feature is intended for clients that want to signal a desktop shell
their busy state, for instance because a long-running operation is
pending.
The API works in a similar way to g_application_hold and
g_application_release: applications can call g_application_mark_busy()
to increase a counter that will keep the application marked as busy
until the counter reaches zero again.

The busy state is exported read-only on the org.gtk.Application interface
for clients to use.

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

11 years agogtype: interface-after-init exception for gtk#
Ryan Lortie [Thu, 4 Apr 2013 15:12:42 +0000 (11:12 -0400)]
gtype: interface-after-init exception for gtk#

gtk# also has a problem with the new interface-after-init restriction
that nobody noticed until now.  Add an exception for them as well so
that they have a cycle or so to sort things out.

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

11 years agogtype: interface-after-init exception for glibmm
Ryan Lortie [Thu, 4 Apr 2013 13:31:11 +0000 (09:31 -0400)]
gtype: interface-after-init exception for glibmm

glibmm has a pretty difficult-to-solve problem caused by our recent
change to deny addition of interfaces to classes after initialisation.

They're looking for a long-term workaround for the problem, but in the
meantime we can allow the registration to succeed (with warning) if the
class looks like it's being defined by gtkmm.

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

11 years agogobject: fix G_DEFINE_TYPE_EXTENDED docs so code snippet actually compiles
Andres G. Aragoneses [Thu, 4 Apr 2013 11:10:28 +0000 (12:10 +0100)]
gobject: fix G_DEFINE_TYPE_EXTENDED docs so code snippet actually compiles

Flags being used in the G_DEFINE_TYPE_EXTENDED sample was "0", so it
should expand to 0 as well, otherwise the compiler would bark with:
maman-bar.c: In function ‘maman_bar_get_type’:
maman-bar.c:36:53: error: ‘flags’ undeclared (first use in this function)
maman-bar.c:36:53: note: each undeclared identifier is reported only once for each function it appears in

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

11 years agoAssamese translation updated
Nilamdyuti Goswami [Thu, 4 Apr 2013 07:56:59 +0000 (13:26 +0530)]
Assamese translation updated

11 years agogsettings: implemented --version command
David Gomes [Wed, 3 Apr 2013 19:15:49 +0000 (20:15 +0100)]
gsettings: implemented --version command

This was discussed in
https://bugzilla.gnome.org/show_bug.cgi?id=697131

11 years agoUpdated Norwegian bokmål translation
Kjartan Maraas [Wed, 3 Apr 2013 09:51:27 +0000 (11:51 +0200)]
Updated Norwegian bokmål translation

11 years agogmacros: Mark G_UNAVAILABLE() functions as deprecated (gcc <= 4.4)
Colin Walters [Wed, 3 Apr 2013 04:31:28 +0000 (00:31 -0400)]
gmacros: Mark G_UNAVAILABLE() functions as deprecated (gcc <= 4.4)

RHEL6 ships with GCC 4.4 by default, which doesn't understand the
nicer deprecated attribute that takes a message.  However, we can at
least fall back to the old G_DEPRECATED, rather than silently doing
nothing.

This gives me warning messages when building OSTree on RHEL6 when I
accidentally added a usage of g_unix_fd_source_new().

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

11 years agoGThreadedResolver: set an error if no records could be found
Giovanni Campagna [Fri, 29 Mar 2013 14:39:26 +0000 (15:39 +0100)]
GThreadedResolver: set an error if no records could be found

It is possible that the upstream servers return something, but
we then filter all results because they are of the wrong type.
In that case the API and subsequent GTask calls expect a GError
to be set.

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

11 years agocodegen: move G_DEFINE_INTERFACE{,_WITH_CODE} before _default_init
Guido Günther [Sun, 24 Mar 2013 16:11:49 +0000 (17:11 +0100)]
codegen: move G_DEFINE_INTERFACE{,_WITH_CODE} before _default_init

to avoid warnings when built with -Wredundant-decls:

  sessionmanager-presence-generated.c:316:1: warning: redundant redeclaration of ‘session_manager_presence_default_init’ [-Wredundant-decls]
  sessionmanager-presence-generated.c:281:1: note: previous definition of ‘session_manager_presence_default_init’ was here
  sessionmanager-presence-generated.c:1273:1: warning: redundant redeclaration of ‘object_default_init’ [-Wredundant-decls]
  sessionmanager-presence-generated.c:1259:1: note: previous definition of ‘object_default_init’ was here

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

11 years agocodegen: Avoid warnings when the generated client code is built with -Wunused-parameter
Guido Günther [Mon, 18 Mar 2013 21:31:36 +0000 (22:31 +0100)]
codegen: Avoid warnings when the generated client code is built with -Wunused-parameter

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

11 years agoghash: Suppress -Wmaybe-uninitialized from GCC 4.4
Colin Walters [Tue, 2 Apr 2013 18:10:15 +0000 (14:10 -0400)]
ghash: Suppress -Wmaybe-uninitialized from GCC 4.4

It's not clever enough to figure out that these are always initialized
in code paths that use them.

Reviewed-By: Benjamin Otte <otte@gnome.org>
11 years agogaction: add parser for detailed action names
Ryan Lortie [Mon, 1 Apr 2013 19:01:20 +0000 (15:01 -0400)]
gaction: add parser for detailed action names

Expand and formalise the syntax for detailed action names, adding a
well-documented (and tested) public parser API for them.

Port the only GLib-based user of detailed action names to the new API:
g_menu_item_set_detailed_action().  The users in Gtk+ will also be
ported soon.

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

11 years agoAdd GLib 2.38 version macros
Ryan Lortie [Mon, 1 Apr 2013 20:53:33 +0000 (16:53 -0400)]
Add GLib 2.38 version macros

11 years agoFix compile error in gdbusmessage.c for win64
Hib Eris [Sun, 31 Mar 2013 14:40:34 +0000 (16:40 +0200)]
Fix compile error in gdbusmessage.c for win64

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

11 years agogtask: free error on finalize if it's set
Xan Lopez [Tue, 26 Mar 2013 18:19:41 +0000 (19:19 +0100)]
gtask: free error on finalize if it's set

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

11 years agoFix tiny docs typo.
Murray Cumming [Tue, 26 Mar 2013 09:51:48 +0000 (10:51 +0100)]
Fix tiny docs typo.

11 years agobump version for start of unstable branch
Ryan Lortie [Mon, 25 Mar 2013 21:49:20 +0000 (17:49 -0400)]
bump version for start of unstable branch

11 years agoGLib 2.36.0 2.36.0 upstream/2.36.0
Ryan Lortie [Mon, 25 Mar 2013 21:39:21 +0000 (17:39 -0400)]
GLib 2.36.0

11 years agog_file_copy(): Ensure G_FILE_COPY_OVERWRITE preserves permissions
Colin Walters [Sun, 17 Mar 2013 22:33:59 +0000 (18:33 -0400)]
g_file_copy(): Ensure G_FILE_COPY_OVERWRITE preserves permissions

We need to close the stream *before* applying the file modes, because
g_file_replace() allocates a temporary file.  At the moment we're
applying the modes to the extant file, then immediately rename()ing
over it with the default perms.

This regressed with commit 166766a89fcd173dcd6ffda11f902029928f7f28.

The real fix here is to have g_file_create_with_info() so that we can
atomically create a file with the permissions we want.

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

11 years agoCompleted for Malayalam
Ani Peter [Mon, 25 Mar 2013 17:38:52 +0000 (23:08 +0530)]
Completed for Malayalam

11 years agoPunjabi: Translation updated (aalam)
A S Alam [Mon, 25 Mar 2013 17:20:00 +0000 (22:50 +0530)]
Punjabi: Translation updated (aalam)

11 years agoUpdated Telugu Translations
Krishnababu Krothapalli [Mon, 25 Mar 2013 09:56:55 +0000 (15:26 +0530)]
Updated Telugu Translations

11 years agoUpdated Telugu Translations
Krishnababu Krothapalli [Wed, 28 Nov 2012 10:36:58 +0000 (16:06 +0530)]
Updated Telugu Translations

11 years agoCorrected some GLIB_AVAILABLE_IN_*
Murray Cumming [Mon, 25 Mar 2013 09:16:49 +0000 (10:16 +0100)]
Corrected some GLIB_AVAILABLE_IN_*

11 years agoUpdate Czech translation
Petr Kovar [Sun, 24 Mar 2013 19:20:55 +0000 (20:20 +0100)]
Update Czech translation

11 years agoInit padding to NULL to avoid a missing initializer warning
Guido Günther [Sat, 23 Mar 2013 11:41:15 +0000 (12:41 +0100)]
Init padding to NULL to avoid a missing initializer warning

like

sessionmanager-presence-generated.c:920:1: warning: missing initializer [-Wmissing-field-initializers]
sessionmanager-presence-generated.c:920:1: warning: (near initialization for ‘_org_gnome_session_manager_presence_skeleton_vtable.padding’) [-Wmissing-field-initializers]

https://bugzilla.gnome.org/review?bug=696108