Matthias Clasen [Wed, 8 Aug 2012 13:55:29 +0000 (09:55 -0400)]
Make --enable-man and --enable-gtk-doc independent
Previously, --enable-man --disable-gtk-doc would silently skip
man page generation, because we didn't even desdend into docs/reference.
Fix this by always going there.
https://bugzilla.gnome.org/show_bug.cgi?id=681336
Matthias Clasen [Thu, 16 Aug 2012 21:21:03 +0000 (17:21 -0400)]
Fix an example
Pointed out by Chandni Verma in
https://bugzilla.gnome.org/show_bug.cgi?id=682025
Javier Jardón [Tue, 14 Aug 2012 17:45:10 +0000 (02:45 +0900)]
Revert "Use upstream gettext instead the glib one"
Commited by mistake
This reverts commit
e930e3b3aac2fe4d62996d8033121a40153f2da3.
Sebastian Geiger [Thu, 9 Aug 2012 21:01:29 +0000 (23:01 +0200)]
compiling.xml: Add note and fix gcc example
Because of the '--as-needed' default option
for the linker, the linking will fail, if the
file name appears after any of the options or
the pkg-config invocation.
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=681854
Javier Jardón [Mon, 16 May 2011 12:23:47 +0000 (13:23 +0100)]
Use upstream gettext instead the glib one
Dirgita [Sun, 12 Aug 2012 23:04:31 +0000 (06:04 +0700)]
Updated Indonesian translation
Colin Walters [Tue, 7 Aug 2012 21:26:43 +0000 (17:26 -0400)]
build: Switch back to using AS_IF for conditionals
See https://bugzilla.gnome.org/show_bug.cgi?id=674483
https://bugzilla.gnome.org/show_bug.cgi?id=681413
Chao-Hsiung Liao [Tue, 7 Aug 2012 05:36:35 +0000 (13:36 +0800)]
Updated Traditional Chinese translation(Hong Kong and Taiwan)
Stef Walter [Mon, 6 Aug 2012 16:20:48 +0000 (18:20 +0200)]
gtlscertificate: Add certificate-bytes and private-key-bytes props
* These properties contain the same data as certificate and
private-key, but as GBytes
https://bugzilla.gnome.org/show_bug.cgi?id=681319
Ryan Lortie [Mon, 6 Aug 2012 20:20:36 +0000 (16:20 -0400)]
bump version
Ryan Lortie [Mon, 6 Aug 2012 19:56:26 +0000 (15:56 -0400)]
GLib 2.33.8
Matthias Clasen [Mon, 6 Aug 2012 16:08:21 +0000 (12:08 -0400)]
Don't use GIO in GTestDBus setup
Using GIO here may cause the gvfs module to be loaded, which
in turn gets onto the session bus to talk to gvfsd - not ideal
if you are trying to control the session bus life cycle. Instead,
just use old-fashioned glib file utils.
Matthias Clasen [Mon, 6 Aug 2012 16:08:04 +0000 (12:08 -0400)]
More updates
Matthias Clasen [Mon, 6 Aug 2012 15:55:59 +0000 (11:55 -0400)]
Solaris build fix for GIO
Solaris/OpenSolaris/OpenIndiana define FIONREAD in sys/filio.h.
This commit adds a configure check for this header, and includes
it conditionally in gio/gsocket.c.
Patch by Fabian Groffen, bug 675524.
Dan Winship [Fri, 3 Feb 2012 18:03:38 +0000 (13:03 -0500)]
gio/tests/g-icon.c: fix some path checks on win32
Some of the tests needed to be modified to use G_DIR_SEPARATOR_S
rather than hardcoded "/"s.
https://bugzilla.gnome.org/show_bug.cgi?id=669331
Dan Winship [Fri, 3 Feb 2012 17:42:10 +0000 (12:42 -0500)]
gicon: make g_icon_new_for_string() recognize win32 paths
(but for compatibility, make it still recognize unix paths on win32
too)
https://bugzilla.gnome.org/show_bug.cgi?id=669331
Dan Winship [Fri, 3 Feb 2012 16:35:26 +0000 (11:35 -0500)]
gio/tests/file: skip the file monitor tests if using GPollFileMonitor
test_create_delete() assumes that if it creates a file and then
immediately deletes it, that the file monitor will notice this and
record it as a create followed by a delete. But that won't work with
GPollFileMonitor, which will just think nothing changed. So skip the
test in that case.
https://bugzilla.gnome.org/show_bug.cgi?id=669331
Dan Winship [Fri, 3 Feb 2012 16:12:02 +0000 (11:12 -0500)]
gio/tests/g-file.c: fix some path checks on win32
Some of the tests needed to be modified to use G_DIR_SEPARATOR_S
rather than hardcoded "/"s.
https://bugzilla.gnome.org/show_bug.cgi?id=669331
Dan Winship [Fri, 3 Feb 2012 16:10:50 +0000 (11:10 -0500)]
glocalfile: fix g_file_get_parse_name() on win32
When getting the parse name for a file: URI on win32, we were not
translating "\" to "/", resulting in incorrect output.
https://bugzilla.gnome.org/show_bug.cgi?id=669331
Matthias Clasen [Mon, 6 Aug 2012 15:03:42 +0000 (11:03 -0400)]
Plug a minor memory leak in GDBusObjectProxy
As pointed out by Patrick Ohly in bug 680505,
GDBusObjectProxy was forgetting to free its object_path.
David Rothlisberger [Mon, 16 Jul 2012 12:12:15 +0000 (13:12 +0100)]
gobject docs: Remove confusing acronym
In the wikipedia disambiguation page[1] the only entry that even
remotely makes sense in this context is "and so on". Google searches
for "aso memory management" and "aso garbage collection" don't yield
anything relevant.
[1] http://en.wikipedia.org/wiki/ASO
https://bugzilla.gnome.org/show_bug.cgi?id=679996
David Rothlisberger [Mon, 16 Jul 2012 09:57:46 +0000 (10:57 +0100)]
gobject docs: Remove incorrect reference to signals docs
The chapter on signals comes after this chapter, not before (see
"tut_gobject.xml" in docs/reference/gobject/gobject-docs.xml).
https://bugzilla.gnome.org/show_bug.cgi?id=679996
Brian Koning [Mon, 23 Jul 2012 15:04:45 +0000 (11:04 -0400)]
Remove extra newline chars in local g_application_command_line_print/err
The extra newline chars in the local implementation of g_application_command_line_print and g_application_command_line_printerr() cause an unwanted newline after printed strings. This patch removes the newline chars to make the functions consistent with their documentation.
https://bugzilla.gnome.org/show_bug.cgi?id=680459
Pavel Vasin [Mon, 16 Jul 2012 11:57:26 +0000 (15:57 +0400)]
GDBusActionGroup: hold ref until async init done
to avoid use-after-free if GDBusActionGroup was finalized
https://bugzilla.gnome.org/show_bug.cgi?id=679509
Pavel Vasin [Sun, 15 Jul 2012 10:34:53 +0000 (14:34 +0400)]
gio/tests/actions: test for bug679509
Matthias Clasen [Mon, 6 Aug 2012 12:51:40 +0000 (08:51 -0400)]
Deprecated GSlice config API
This was marked as 'internal debugging' in the headers, and
should have never been made public. As a first step to repair
this, deprecate it.
https://bugzilla.gnome.org/show_bug.cgi?id=680831
Matthias Clasen [Mon, 6 Aug 2012 12:49:30 +0000 (08:49 -0400)]
configure.ac: Use AS_HELP_STRING throughout
https://bugzilla.gnome.org/show_bug.cgi?id=680831
Stef Walter [Fri, 3 Aug 2012 19:51:08 +0000 (21:51 +0200)]
gtlscertificate: Don't confuse certificate and public key in docs
* A certificate sorta acts as a public key, but more specifically
it contains a public key (in its subjectPublicKeyInfo) field.
* Documentation was confusing and could have read like the
certificate and certificate-pem properties were returning the
public key part of the certificate.
https://bugzilla.gnome.org/show_bug.cgi?id=681158
Stef Walter [Tue, 31 Jul 2012 14:47:45 +0000 (16:47 +0200)]
gchecksum: Add g_compute_checksum_for_bytes()
* Add a GBytes based version of g_compute_checksum_for_data()
* Add appropriate tests
https://bugzilla.gnome.org/show_bug.cgi?id=680912
Stef Walter [Fri, 3 Aug 2012 16:19:36 +0000 (18:19 +0200)]
checksum: Use functions instead of macros when building tests
* No need for hard to debug and maintain macros here.
https://bugzilla.gnome.org/show_bug.cgi?id=681151
Javier Jardón [Tue, 17 Apr 2012 11:59:11 +0000 (12:59 +0100)]
Make gtk-doc not a hard dependency of GLib
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=674314
Mark Nauwelaerts [Wed, 25 Apr 2012 12:21:06 +0000 (14:21 +0200)]
gclosure: do not copy and leak when generically marshalling return value
https://bugzilla.gnome.org/show_bug.cgi?id=674800
Mark Nauwelaerts [Thu, 19 Jul 2012 14:38:59 +0000 (16:38 +0200)]
tests: add check for leaking signal return value
https://bugzilla.gnome.org/show_bug.cgi?id=674800
Mark Nauwelaerts [Thu, 19 Jul 2012 14:38:06 +0000 (16:38 +0200)]
tests: make refcount signals test slightly valgrind cleaner
Matthias Clasen [Sat, 4 Aug 2012 21:49:53 +0000 (17:49 -0400)]
NEWS updates for 2.33.8
Matthias Clasen [Thu, 2 Aug 2012 22:36:25 +0000 (00:36 +0200)]
docs: Improve man page consistency
Make Options sections refsect1 instead of refsect2, and use
uppercase for argument names. Also add a product name, and
shorten some argument names.
Matthias Clasen [Thu, 2 Aug 2012 22:33:34 +0000 (00:33 +0200)]
docs: Improve man page generation
Use $(AM_V_GEN) for generating man pages, and set some parameters
for the XSL stylesheets. Among other things, don't generate AUTHORS
and COPYRIGHT sections.
Matthias Clasen [Thu, 2 Aug 2012 21:52:46 +0000 (23:52 +0200)]
Rework the man page configury
Default to generate man pages if the required tools and
stylesheets are found. Error out if --enable-man is given
but tools or stylesheets are missing.
Matthias Clasen [Thu, 2 Aug 2012 21:51:52 +0000 (23:51 +0200)]
docs: Don't put links in section titles
Stef Walter [Wed, 1 Aug 2012 08:41:02 +0000 (10:41 +0200)]
gtlscertificate: Add g_tls_certificate_is_same() function
* Certificate equality in PKIX in general is equality between
the DER encoding of the certificates.
https://bugzilla.gnome.org/show_bug.cgi?id=681116
Stef Walter [Wed, 1 Aug 2012 12:22:53 +0000 (14:22 +0200)]
gtlsdatabase: Don't complain if no callbacks for async functions
https://bugzilla.gnome.org/show_bug.cgi?id=681118
Sweta Kothari [Fri, 3 Aug 2012 08:05:05 +0000 (13:35 +0530)]
Updated gujarati file
Sweta Kothari [Fri, 3 Aug 2012 08:02:12 +0000 (13:32 +0530)]
Updated gujarati file
David Zeuthen [Wed, 1 Aug 2012 15:57:22 +0000 (11:57 -0400)]
GDBusError: Fix up G_STATIC_ASSERT guidance
This was reported in bug 680994.
https://bugzilla.gnome.org/show_bug.cgi?id=680994
Signed-off-by: David Zeuthen <zeuthen@gmail.com>
Dan Winship [Wed, 25 Jul 2012 18:41:04 +0000 (14:41 -0400)]
gthreadpool: set default max_unused_threads and max_idle_time values
GThreadPool defaulted to 0 for max_unused_threads (meaning thread-pool
threads would exit immediately if there was not already another task
waiting for them), and 0 for max_idle_time (meaning unused threads
would linger forever, though this is only relevant if you changed
max_unused_threads).
However, GIOScheduler changed the global defaults to 2 and 15*1000,
respectively, arguing that these were more useful defaults. And they
are, so let's use them.
https://bugzilla.gnome.org/show_bug.cgi?id=661767
Dan Winship [Mon, 30 Jul 2012 12:06:57 +0000 (08:06 -0400)]
gmain: allow g_source_get_context() on destroyed sources
g_source_get_context() was checking that the source wasn't destroyed
(since a source doesn't hold a ref on its context, and so
source->context might point to garbage in that case). However, it's
useful to be allowed to call g_source_get_context() on a source that
is destroyed-but-currently-running.
So instead, let g_source_get_context() return the context whenever
it's non-NULL, and clear the source->context of any sources that are
still in a context's sources list when the context is freed. Since
sources are only removed from the list when the source is freed (not
when it is destroyed), this means that now whenever a source has a
non-NULL context pointer, then that pointer is valid.
This also means that g_source_get_time() will now return-if-fail
rather than crashing if it is called on a source whose context has
been destroyed.
Add tests to glib/tests/mainloop to verify that g_source_get_context()
and g_source_get_time() work on destroyed sources.
https://bugzilla.gnome.org/show_bug.cgi?id=661767
Dan Winship [Sun, 29 Jul 2012 17:06:53 +0000 (13:06 -0400)]
glib/tests/mainloop: test g_source_get_time()
Verify that
- g_source_get_time() does not change within a single callback
(even if the real time does)
- g_source_get_time() does not change between different callbacks in
the same mainloop iteration
- g_source_get_time() does change between iterations if the real
time did.
https://bugzilla.gnome.org/show_bug.cgi?id=661767
Owen W. Taylor [Mon, 30 Jul 2012 11:33:05 +0000 (13:33 +0200)]
g_file_make_directory_with_parents: Fix error propagation
When creating a directory fails for some reason other than
the parent not existing, don't clear the error before we try
to propagate it.
To reproduce, run 'ostadmin init' on /ostree or otherwise try to
run the function on a directory with a parent directory where the
current user is not allowed to write.
https://bugzilla.gnome.org/show_bug.cgi?id=680823
Colin Walters [Mon, 30 Jul 2012 09:11:08 +0000 (05:11 -0400)]
GFile: Note semantics of g_file_delete()
Particularly for someone programming on Unix, this helps them
understand that we will unlink symbolic links, and not follow them.
Colin Walters [Sat, 28 Jul 2012 13:30:22 +0000 (09:30 -0400)]
GFile: Add g_file_delete_async()
This looks like it was stubbed out but not implemented; the vtable
entry dates to commit
3781343738de4abddf56982325a77bd70a98cd26 which
is just alex's initial merge of gio into glib.
I was working on some code that wants an asynchronous rm -rf
equivalent, and so yeah, this is desirable.
https://bugzilla.gnome.org/show_bug.cgi?id=680760
Colin Walters [Sun, 29 Jul 2012 13:29:03 +0000 (09:29 -0400)]
Add .dir-locals.el to tell Emacs users not to use tabs for C
Requested by Ryan.
https://bugzilla.gnome.org/show_bug.cgi?id=680787
Fran Diéguez [Mon, 30 Jul 2012 00:42:30 +0000 (02:42 +0200)]
Updated Galician translations
Andrej Žnidaršič [Sun, 29 Jul 2012 11:11:18 +0000 (13:11 +0200)]
Updated Slovenian translation
Lionel Landwerlin [Fri, 27 Jul 2012 12:52:17 +0000 (14:52 +0200)]
glib: fix locale detection on android
g_utf8_strup() tries to call setlocale() before starting to compute
the length of its first argument. Calling setlocale() can return NULL
(as specified in the man page), and obviously that happens on android.
https://bugzilla.gnome.org/show_bug.cgi?id=680704
Мирослав Николић [Wed, 25 Jul 2012 08:33:27 +0000 (10:33 +0200)]
Updated Serbian translation
Yaron Shahrabani [Tue, 24 Jul 2012 19:39:15 +0000 (22:39 +0300)]
Updated Hebrew translation.
Tobias Endrigkeit [Mon, 23 Jul 2012 20:11:53 +0000 (22:11 +0200)]
[l10n] Updated German translation
Kjartan Maraas [Mon, 23 Jul 2012 09:42:22 +0000 (11:42 +0200)]
Updated Norwegian bokmål translation
Colin Walters [Fri, 20 Jul 2012 14:40:56 +0000 (10:40 -0400)]
Revert unintential IAPI break for g_key_file_load_from_data()
The old (length) annotation actually wasn't being read. Changing
it to an array was telling g-i that it was an array of utf8, which
is clearly not true.
We *could* add (element-type guint8), but that would change it to a
byte array, as opposed to the original utf8 version.
Just removing the annotation should bring us back to where we
were, which was fine.
https://bugzilla.gnome.org/show_bug.cgi?id=680310
Chun-wei Fan [Thu, 19 Jul 2012 15:15:59 +0000 (23:15 +0800)]
gio/Makefile.am: Filter out gcontenttype.c for MSVC builds
gcontenttype.c was split into gcontenttype.c and gcontenttype-win32.c
in commit
32192ee9 ("Split gcontenttype.c"), so we don't want to include
gcontenttype.c in the Visual C++ build as it is no longer a source file
meant for Windows.
Thanks to Thomas H.P. Anderson for pointing this out.
Matthias Clasen [Thu, 19 Jul 2012 10:37:59 +0000 (06:37 -0400)]
Check for PR_SET_NAME
Bug 680148 claims that PR_SET_NAME may not be defined when
using an old kernel. Deal with it.
Matthias Clasen [Thu, 19 Jul 2012 10:32:29 +0000 (06:32 -0400)]
Be more careful when using xlocale
Bug 680074 shows that we may end up in situations where only
some of the xlocale functions we need are available. Rather than
trying to find the minimal set of required functions for each
use, define a global USE_XLOCALE and only use any xlocale functions
if we have a full set.
Matthias Clasen [Thu, 19 Jul 2012 10:20:10 +0000 (06:20 -0400)]
Cosmetic: Fix up line endings
Somehow a few ^M sneaked in here.
Dan Winship [Wed, 18 Jul 2012 19:08:44 +0000 (15:08 -0400)]
gmain: handle child sources being destroyed before parent
Fix a crash when a child source is destroyed before its parent. Also,
add a test case for this and the previous fix.
Dan Winship [Wed, 18 Jul 2012 18:19:36 +0000 (14:19 -0400)]
g_source_add_child_source: sync blocked state
Child sources are supposed to be blocked when their parents are, so
when adding a source to a blocked source, block the child too. Fixes a
warning when unblocking the parent.
Dan Winship [Tue, 17 Jul 2012 20:21:03 +0000 (16:21 -0400)]
gio/tests/converter-stream: add a new test, rename an old one
Add a test that the decompressor input streams handle truncated data
correctly. (They do; I wrote the test thinking there was a bug there,
but there isn't.)
Also, rename the "corruption" tests to "roundtrip", since "corruption"
makes it sound like we're testing how the converters deal with
corrupted data, as opposed to merely testing that they don't corrupt
data themselves. And fix the bug reference.
Dan Winship [Tue, 17 Jul 2012 17:17:01 +0000 (13:17 -0400)]
g_cancellable_source_new: don't use a file descriptor
Rather than implementing GCancellableSource by polling on its fd,
implement it by just waking its GMainContext up from the "cancelled"
signal handler, thereby helping to reduce file descriptor usage.
Suggested by Ryan Lortie.
https://bugzilla.gnome.org/show_bug.cgi?id=680121
Matthias Clasen [Tue, 17 Jul 2012 18:23:08 +0000 (14:23 -0400)]
Bump version
Matthias Clasen [Tue, 17 Jul 2012 17:50:58 +0000 (13:50 -0400)]
More updates
Stef Walter [Tue, 17 Jul 2012 16:34:16 +0000 (18:34 +0200)]
GIOScheduler: Fix access after free in "cancelled" handler
* GCancellable can be "cancelled" more than once if
g_cancellable_reset() is called.
* Don't assume that because the "cancelled" signal fired
it won't fire again.
https://bugzilla.gnome.org/show_bug.cgi?id=680111
Matthias Clasen [Tue, 17 Jul 2012 17:00:00 +0000 (13:00 -0400)]
2.33.6
https://bugzilla.gnome.org/show_bug.cgi?id=680111
Dan Winship [Tue, 17 Jul 2012 13:12:39 +0000 (09:12 -0400)]
GAsyncInitable: partially revert the init_finish changes
g_async_initable_real_init_finish() was previously handling all
GSimpleAsyncResults, even if they weren't created by
g_async_initable_real_init_async(), and libnm-glib accidentally relied
on that behavior. So remove the g_simple_async_result_is_valid()
check.
Krzesimir Nowak [Sun, 15 Jul 2012 17:10:43 +0000 (19:10 +0200)]
GVariantType: Add (constructor) annotation for some constructors.
This are mistaken by g-ir-scanner as GVariantType's methods, because
they take a GVariantType* as a first parameter.
https://bugzilla.gnome.org/show_bug.cgi?id=679968
Daniel Mustieles [Mon, 16 Jul 2012 14:42:49 +0000 (16:42 +0200)]
Updated Spanish translation
Marc-André Lureau [Mon, 9 Jul 2012 02:12:02 +0000 (04:12 +0200)]
win32: g_getenv() should return "" if variable exists and empty
On Windows, GetEnvironmentVariable() returns 0 for empty variables.
Checking GetLastError() == ERROR_ENVVAR_NOT_FOUND helps make a
difference between a variable that does not exist or an empty one
which should return "".
https://bugzilla.gnome.org/show_bug.cgi?id=679617
Marc-André Lureau [Mon, 9 Jul 2012 01:54:55 +0000 (03:54 +0200)]
win32: fix g_get_environ()
The current code create the strv array incorrectly, it is too big and
leaves invalid holes. This may result in crashes when freeing the
returned value.
https://bugzilla.gnome.org/show_bug.cgi?id=679617
Matthias Clasen [Mon, 16 Jul 2012 10:01:55 +0000 (06:01 -0400)]
Bump version
Matthias Clasen [Mon, 16 Jul 2012 00:36:10 +0000 (20:36 -0400)]
More updates
Ihar Hrachyshka [Sun, 15 Jul 2012 09:27:03 +0000 (12:27 +0300)]
Updated Belarusian translation.
Piotr Drąg [Sat, 14 Jul 2012 23:23:25 +0000 (01:23 +0200)]
Updated Polish translation
Chao-Hsiung Liao [Sat, 14 Jul 2012 05:51:12 +0000 (13:51 +0800)]
Updated Traditional Chinese translation(Hong Kong and Taiwan)
Matthias Clasen [Fri, 13 Jul 2012 21:37:37 +0000 (17:37 -0400)]
Fix GModule documentation a bit
The documentation for g_module_make_resident was for some reason
in the doc comment for g_module_name.
https://bugzilla.gnome.org/show_bug.cgi?id=679813
Matthias Clasen [Fri, 13 Jul 2012 21:37:12 +0000 (17:37 -0400)]
Fix doc build
Nilamdyuti Goswami [Fri, 13 Jul 2012 12:23:45 +0000 (17:53 +0530)]
Assamese translation updated
Matthias Clasen [Fri, 13 Jul 2012 03:40:43 +0000 (23:40 -0400)]
Update NEWS
Marc-André Lureau [Wed, 11 Jul 2012 17:41:58 +0000 (19:41 +0200)]
win32: fix build g_spawn_check_exit_status() with mingw
With mingw, only gspawn-win32.c is compiled, but it is missing some
new symbols.
https://bugzilla.gnome.org/show_bug.cgi?id=679691
Krzesimir Nowak [Thu, 12 Jul 2012 14:09:57 +0000 (16:09 +0200)]
GRegex, GConvert: Add some missing annotations.
Also, removed pointless (allow-none) return annotation.
https://bugzilla.gnome.org/show_bug.cgi?id=679762
Cosimo Cecchi [Thu, 12 Jul 2012 00:25:59 +0000 (20:25 -0400)]
mount-operation: add a Since tag to the show-unmount-progress signal
Cosimo Cecchi [Fri, 6 Jul 2012 19:41:47 +0000 (15:41 -0400)]
mount-operation: add show-unmount-progress signal
The actual implementation will be in gvfs.
https://bugzilla.gnome.org/show_bug.cgi?id=676111
Tom Tryfonidis [Wed, 11 Jul 2012 23:38:20 +0000 (02:38 +0300)]
Updated Greek translation
Rui Matos [Tue, 10 Jul 2012 09:38:34 +0000 (11:38 +0200)]
GDBusNodeInfo: remove a spurious for loop
https://bugzilla.gnome.org/show_bug.cgi?id=679671
Rui Matos [Tue, 10 Jul 2012 09:37:56 +0000 (11:37 +0200)]
GDBusNodeInfo: the XML string must contain exactly one node element
Make the documentation clear about this.
https://bugzilla.gnome.org/show_bug.cgi?id=679671
Colin Walters [Tue, 10 Jul 2012 15:27:22 +0000 (11:27 -0400)]
Add g_spawn_check_exit_status()
Many (if not "almost all") programs that spawn other programs via
g_spawn_sync() or the like simply want to check whether or not the
child exited successfully, but doing so requires use of
platform-specific functionality and there's actually a fair amount of
boilerplate involved.
This new API will help drain a *lot* of mostly duplicated code in
GNOME, from gnome-session to gdm. And we can see that some bits even
inside GLib were doing it wrong; for example checking the exit status
on Unix, but ignoring it on Windows.
https://bugzilla.gnome.org/show_bug.cgi?id=679691
Dan Winship [Thu, 10 May 2012 15:09:52 +0000 (11:09 -0400)]
gio: add g_async_result_is_tagged()
Rather than doing a two step first-check-the-GAsyncResult-subtype-then-
check-the-tag, add a GAsyncResult-level method so that you can do them
both at once, simplifying the code for "short-circuit" async return
values where the vmethod never gets called.
https://bugzilla.gnome.org/show_bug.cgi?id=661767
Dan Winship [Thu, 10 May 2012 13:00:45 +0000 (09:00 -0400)]
gio: Add g_async_result_legacy_propagate_error()
Finish deprecating the "handle GSimpleAsyncResult errors in the
wrapper function" idiom (and protect against future GSimpleAsyncResult
deprecation warnings) by adding a "legacy" GAsyncResult method
to do it in those classes/methods where it had been traditionally
done.
(This applies only to wrapper methods; in cases where an _async
vmethod explicitly uses GSimpleAsyncResult, its corresponding _finish
vmethod still uses g_simple_async_result_propagate_error.)
https://bugzilla.gnome.org/show_bug.cgi?id=667375
https://bugzilla.gnome.org/show_bug.cgi?id=661767
Dan Winship [Mon, 11 Jun 2012 17:44:19 +0000 (13:44 -0400)]
gio: handle GSimpleAsyncResult errors in _finish vmethods
Originally, the standard idiom with GSimpleAsyncResult was to handle
all errors in the _finish wrapper function, so that vmethods only had
to deal with successful results. But this means that chaining up to a
parent _finish vmethod won't work correctly. Fix this by also checking
for errors in all the relevant vmethods. (We have to redundantly check
in both the vmethod and the wrapper to preserve compatibility.)
https://bugzilla.gnome.org/show_bug.cgi?id=667375
https://bugzilla.gnome.org/show_bug.cgi?id=661767
Dan Winship [Tue, 17 Apr 2012 13:55:33 +0000 (09:55 -0400)]
GFile: remove some unnecessary code
The "mainloop_barrier" in copy_async_thread() is unnecessary, since
the g_simple_async_result_complete_in_idle() will be queued after all
of the g_io_scheduler_job_send_to_mainloop_async()s, and sources with
the same priority will run in the order in which they were queued.
https://bugzilla.gnome.org/show_bug.cgi?id=661767
Antoine Jacoutot [Mon, 9 Jul 2012 16:17:01 +0000 (18:17 +0200)]
goptions: use G_N_ELEMENTS instead of nitems
Ryan Lortie [Mon, 9 Jul 2012 16:43:50 +0000 (12:43 -0400)]
GVariant: fix string validation
String validation was done by checking if the string was valid utf8 and
ensuring that the first non-utf8 character was the last character (ie:
the nul terminator).
No check was actually done to make sure that this byte actually
contained a nul, however, so it was possible that you could have a
string like "hello\xff" with length 6 that would correctly validate.
Fix that, and test it.
Stef Walter [Sat, 5 May 2012 10:51:16 +0000 (12:51 +0200)]
Fix up GObject interface documentation
* Document how to override interfaces already implemented
in a base class, and also call those base class implementations
from a derived reimplementation.
* Don't recomend people use base_init() style functions to
initialize interface signals and properties, use default_init()
aka class_init() instead (as G_DEFINE_INTERFACE() uses).
* The above solves the interface init called multiple times
problem, so remove some needless naysaying about that.
* Document default_init() in the interface initialization discussion
* Linkify more stuff.
* Remove some crud and typos
https://bugzilla.gnome.org/show_bug.cgi?id=675504