Matthias Clasen [Sat, 17 Aug 2013 21:25:25 +0000 (17:25 -0400)]
GApplication: Stop using deprecated api
Matthias Clasen [Sat, 17 Aug 2013 21:22:05 +0000 (17:22 -0400)]
Quell a few compiler warnings
Matthias Clasen [Sat, 17 Aug 2013 17:45:34 +0000 (13:45 -0400)]
Take out an unused line from gdatetime tests
This line was apparently causing build problems on Win64,
and since the only test involving the t_str variable was
already commented out, lets just take this out altogether.
https://bugzilla.gnome.org/show_bug.cgi?id=696970
Stef Walter [Tue, 14 May 2013 06:49:55 +0000 (08:49 +0200)]
Mark up warnings/critical functions for clang analyzer
The clang code analyzer needs to know that functions like g_error
g_critical an g_return_if_fail should be seen by the analyzer in the
same way as g_assert(). That is the analyzer should think they are
fatal.
https://bugzilla.gnome.org/show_bug.cgi?id=700268
Dan Winship [Sun, 17 Feb 2013 20:11:18 +0000 (15:11 -0500)]
GSocket: fix g_socket_bind() allow_reuse semantics
With UDP sockets, g_socket_bind() with allow_reuse=TRUE on Linux
behaved in a way that the documentation didn't suggest, and that
didn't match other OSes. (Specifically, it allowed binding multiple
multicast sockets to the same address.)
Since this behavior is useful, and since allow_reuse didn't have any
other meaning with UDP sockets, update the docs to reflect the Linux
behavior, and make it do the same thing on non-Linux.
https://bugzilla.gnome.org/show_bug.cgi?id=689245
Dan Winship [Sun, 17 Feb 2013 14:41:55 +0000 (09:41 -0500)]
GSocket: fix broadcast documentation
The :broadcast property only affects sending broadcast packets, not
receiving them.
Robert Ancell [Thu, 30 May 2013 23:07:55 +0000 (11:07 +1200)]
Add G_SPAWN_DEFAULT to GSpawnFlags
This is convenient for language bindings, and also makes
invocations of g_spawn functions in C more readable.
https://bugzilla.gnome.org/show_bug.cgi?id=701318
Matthias Clasen [Sat, 17 Aug 2013 16:35:33 +0000 (12:35 -0400)]
Make g_date_time_new check its arguments
The documentation for this function explicitly gives valid
ranges for the arguments and states that out-of-range arguments
will cause NULL to be returned. Only, the code didn't check
the ranges, and crashed instead. Fix that and add a testcase
for invalid arguments. It turns out that the test_z testcase
was providing invalid arguments and relied on g_date_time_new
to return a non-NULL value anyway, so this commit fixes that
testcase as well.
https://bugzilla.gnome.org/show_bug.cgi?id=702674
Ryan Lortie [Fri, 7 Jun 2013 15:41:41 +0000 (11:41 -0400)]
Export __glib_assert_msg
Put __glib_assert_msg in the dynamic symbol table, but not in any public
headers.
This variable is _not_ part of our API but this way debuggers and
automated crash report utilities will be able to access this variable,
even if debug symbols are not available.
https://bugzilla.gnome.org/show_bug.cgi?id=701800
Dan Winship [Sat, 17 Aug 2013 14:35:13 +0000 (10:35 -0400)]
update .gitignores
Dan Winship [Thu, 7 Feb 2013 15:02:55 +0000 (10:02 -0500)]
build: fix dtrace-related warnings
Fix the warnings when compiling and linking the probes files by
calling dtrace with all the -W flags removed from CFLAGS (since dtrace
generates bad C code), and with CC set to "libtool --mode=compile ..."
(so that it will output a proper .lo file and libtool won't warn when
linking it into the .la).
https://bugzilla.gnome.org/show_bug.cgi?id=693335
Dan Winship [Sun, 2 Jun 2013 22:59:09 +0000 (19:59 -0300)]
glib/tests/gdatetime: use UTC time in test_GDateTime_diff()
test_GDateTime_diff() checks that the span from 2009-01-01 to
2010-01-01 is exactly 365 * G_TIME_SPAN_DAY, but it does this using
local time, and so fails if you are in a timezone that is in the
southern hemisphere which only did DST during one of 2008-2009 and
2009-2010 (in which case the year will end up being one hour too long
or too short).
Switch the diff tests to use UTC time instead; there are plenty of
other local time tests already.
https://bugzilla.gnome.org/show_bug.cgi?id=701529
Wouter Bolsterlee [Sat, 17 Aug 2013 12:58:12 +0000 (14:58 +0200)]
Updated Dutch translation
Daiki Ueno [Fri, 16 Aug 2013 15:44:14 +0000 (17:44 +0200)]
codegen: Treat input file as binary
Under C locale, open() in Python 3 sets the file encoding to ASCII.
As expat looks at encoding="..." in XML declaration, gdbus-codegen can
simply open the input file as binary and let expat decode the content.
https://bugzilla.gnome.org/show_bug.cgi?id=696633
Chun-wei Fan [Fri, 16 Aug 2013 02:35:19 +0000 (10:35 +0800)]
config.h.win32.in: Drop unneeded item
...We no longer have the iconv cache code around.
Chun-wei Fan [Fri, 16 Aug 2013 02:29:41 +0000 (10:29 +0800)]
Update config.h.win32.in
Make its entries match the items that are being checked by the autotools
builds in config.h.in.
Colin Walters [Thu, 15 Aug 2013 22:24:45 +0000 (18:24 -0400)]
giochannel: Add an out annotation for g_io_channel_read_unichar()
Since it's an output variable.
https://bugzilla.gnome.org/show_bug.cgi?id=704165
Dan Winship [Thu, 15 Aug 2013 15:30:59 +0000 (11:30 -0400)]
gio/tests/task: fix a race condition in test_run_in_thread()
When running a task in a thread, GTask may still be internally holding
a ref on the task in that thread even after the callback is called in
the original thread (depending on thread scheduling). Fix the test to
handle that by using a weak notify that signals a GCond, and wait for
that GCond from the main thread. (And add a corresponding check to
test_return_on_cancel().)
https://bugzilla.gnome.org/show_bug.cgi?id=705152
Nick Schermer [Wed, 7 Aug 2013 19:01:00 +0000 (21:01 +0200)]
gobject: Handle ref_count==0 in notify_by_pspec
Just like g_object_notify, check for a zero ref_count in
g_object_notify_by_pspec and leave if it is 0.
This allows using functions in ->finalize() that possibly also
notify a property change on the object. Previously,
this resulted in an error from g_object_ref.
https://bugzilla.gnome.org/show_bug.cgi?id=705570
Theppitak Karoonboonyanan [Wed, 14 Aug 2013 10:07:38 +0000 (17:07 +0700)]
Updated Thai translation.
Matthias Clasen [Tue, 13 Aug 2013 20:48:51 +0000 (16:48 -0400)]
GSimpleActionGroup: Deprecated redundant API
See https://bugzilla.gnome.org/show_bug.cgi?id=705600
Cosimo Cecchi [Tue, 13 Aug 2013 13:16:48 +0000 (15:16 +0200)]
themedicon: correctly fallback to symbolic icons
When an icon is requested as symbolic, our generic fallback algorithm
uses fullcolor icons when the specified icon name is not found, treating
the "-symbolic" suffix as another component of the icon name.
Change the algorithm to check beforehand if the icon is symbolic, remove
the suffix if so, and re-add it at the end for all the generated icon
names.
https://bugzilla.gnome.org/show_bug.cgi?id=680926
Aurimas Černius [Sun, 11 Aug 2013 18:01:50 +0000 (21:01 +0300)]
Updated Lithuanian translation
Kjartan Maraas [Thu, 8 Aug 2013 20:14:04 +0000 (22:14 +0200)]
Updated Norwegian bokmål translation
Daniel Mustieles [Thu, 8 Aug 2013 09:14:31 +0000 (11:14 +0200)]
Updated Spanish translation
Ryan Lortie [Mon, 29 Jul 2013 14:00:20 +0000 (10:00 -0400)]
g_get_tmp_dir(): Clean up envars
On UNIX, we should only ever be looking at TMPDIR.
On Windows, we should only ever look at TEMP.
Also, clean up the documentation to better describe what is actually
happening. The previous docs may have left someone confused about why
this function returns "/var/tmp" on Solaris, even with no TMPDIR set.
https://bugzilla.gnome.org/show_bug.cgi?id=705075
Yaron Shahrabani [Sun, 4 Aug 2013 07:31:19 +0000 (10:31 +0300)]
Updated Hebrew translation.
Emanuele Aina [Sat, 3 Aug 2013 09:51:00 +0000 (11:51 +0200)]
gtype: Fix typo in g_type_class_add_private() error message
https://bugzilla.gnome.org/show_bug.cgi?id=705398
Yuri Myasoedov [Sun, 4 Aug 2013 05:44:21 +0000 (09:44 +0400)]
Updated Russian translation
Sandeep Sheshrao Shedmake [Sun, 4 Aug 2013 03:27:37 +0000 (08:57 +0530)]
Updated Marathi Translations
Marek Černocký [Sat, 3 Aug 2013 18:05:34 +0000 (20:05 +0200)]
Updated Czech translation
Chao-Hsiung Liao [Sat, 3 Aug 2013 13:06:46 +0000 (21:06 +0800)]
Updated Traditional Chinese translation(Hong Kong and Taiwan)
Rafael Ferreira [Sat, 3 Aug 2013 02:15:58 +0000 (23:15 -0300)]
Updated Brazilian Portuguese translation proofread by Enrico Nicoletto
Fran Diéguez [Fri, 2 Aug 2013 10:16:30 +0000 (12:16 +0200)]
Updated Galician translations
Rico Tzschichholz [Thu, 1 Aug 2013 18:41:50 +0000 (20:41 +0200)]
GMenuModel: Fix typo in annotation
Sweta Kothari [Thu, 1 Aug 2013 08:16:52 +0000 (13:46 +0530)]
Updated Gujarati Translations
Daniel Svensson [Tue, 30 Jul 2013 22:20:44 +0000 (18:20 -0400)]
gdesktopappinfo: Add missing return value
Nilamdyuti Goswami [Tue, 30 Jul 2013 17:10:49 +0000 (22:40 +0530)]
Assamese translation updated
Dan Winship [Tue, 30 Jul 2013 13:12:48 +0000 (09:12 -0400)]
gsocket: fix a cut-and-pasted error message
Matthias Clasen [Mon, 29 Jul 2013 22:07:32 +0000 (18:07 -0400)]
post-release version bump
Matthias Clasen [Mon, 29 Jul 2013 21:18:06 +0000 (17:18 -0400)]
2.37.5
Ryan Lortie [Mon, 29 Jul 2013 21:15:19 +0000 (17:15 -0400)]
GMenuModel: add annotations to virtual functions
Patch from Ted Gould.
https://bugzilla.gnome.org/show_bug.cgi?id=704931
Sébastien Wilmet [Mon, 29 Jul 2013 15:29:05 +0000 (17:29 +0200)]
Fix G_ADD_PRIVATE_DYNAMIC()
Chun-wei Fan [Fri, 19 Jul 2013 11:10:41 +0000 (19:10 +0800)]
Add MSVC implementations of G_GNUC_*_IGNORE_DEPRECATIONS
As Visual Studio 2008 and later have support for the __pragma keyword,
where the compiler pragmas can be used in a macro, we can support
G_GNUC_BEGIN_IGNORE_DEPRECATIONS and G_GNUC_END_IGNORE_DEPRECATIONS
for Visual Studio 2008 and later, so many deprecation (C4996) warnings
can be suppressed when using these compilers when we use these macros
in the code.
https://bugzilla.gnome.org/show_bug.cgi?id=704543
Matthias Clasen [Mon, 29 Jul 2013 02:06:57 +0000 (22:06 -0400)]
Trivial typo fix
Matthias Clasen [Sun, 28 Jul 2013 22:44:41 +0000 (18:44 -0400)]
Use GLIB_PRIVATE_CALL macro
I accidentally pushed the fix for bug 704873 before
applying this cleanup.
Matthias Clasen [Sun, 28 Jul 2013 22:39:51 +0000 (18:39 -0400)]
Use better assertion macros
Use g_assert_cmpint and friends in the convert test, to get
more telling messages when they fail.
Matthias Clasen [Sun, 28 Jul 2013 22:39:42 +0000 (18:39 -0400)]
Avoid an unused variable warning
Colin Walters [Sat, 27 Jul 2013 23:21:00 +0000 (00:21 +0100)]
Drop iconv caching code
This was introduced for Solaris performance theoretically;
we have never been able to use it on Linux/glibc because
the UTF-16 BOM state isn't reset.
We have no data about Solaris performance; were some to
still exist, we could reintroduce the code with an explicit
check for Solaris, not a check for glibc.
https://bugzilla.gnome.org/show_bug.cgi?id=704999
Ryan Lortie [Thu, 25 Jul 2013 14:28:42 +0000 (10:28 -0400)]
inotify: don't assume mainloop is running
GFileMonitor takes great care to sample the thread-default main context
at the time that it is created in order that events can be dispatched to
the correct thread when they come in.
The inotify GFileMonitor implementation uses a global file descriptor
shared between all watches. It has to poll this file descriptor from
somewhere so it arbitrarily picks the default main context.
The problem with that is that the user might not be running it.
Let's use the GLib worker thread for this instead. It's guaranteed to
be running if you need it, and this is exactly the sort of problem it
was meant to solve.
https://bugzilla.gnome.org/show_bug.cgi?id=704873
Matthias Clasen [Sun, 28 Jul 2013 21:04:56 +0000 (17:04 -0400)]
Fix build with statvfs
As pointed out in bug 704587, the maze of ifdefs was missing the
variable declaration for statfs_result in one case.
https://bugzilla.gnome.org/show_bug.cgi?id=704587
Rico Tzschichholz [Sat, 27 Jul 2013 07:02:58 +0000 (09:02 +0200)]
Emmanuele Bassi [Fri, 26 Jul 2013 15:45:48 +0000 (16:45 +0100)]
Add macros and symbols for private data on dynamic types
We need a TypeName_private_offset variable defined by the macros used to
register dynamic types. We also need to call the adjust_private_offset()
function inside class_init(). G_ADD_PRIVATE_DYNAMIC only sets the size
of the private data structure, and relies on the behaviour of the
g_type_class_adjuset_private_offset() function to register the private
data structure at class init time if passed a value greater than zero.
This allows using G_PRIVATE_OFFSET with dynamic types.
Colin Walters [Fri, 26 Jul 2013 11:39:51 +0000 (12:39 +0100)]
configure: Use AC_USE_SYSTEM_EXTENSIONS
...instead of detecting glibc and using _GNU_SOURCE manually. This
should fix the build when using glibc-emulating libraries; we can
defer portability work to autoconf.
https://bugzilla.gnome.org/show_bug.cgi?id=684123
Matthias Clasen [Fri, 26 Jul 2013 18:40:10 +0000 (14:40 -0400)]
Document restrictions on private names
With the new machinery, private structs must be named
TypeNamePrivate if TypeName is the name of the instance
struct.
Sweta Kothari [Fri, 26 Jul 2013 09:20:22 +0000 (14:50 +0530)]
updated Gujarati translations
Nilamdyuti Goswami [Thu, 25 Jul 2013 07:48:58 +0000 (13:18 +0530)]
Assamese translation updated
Dan Winship [Wed, 24 Jul 2013 14:02:38 +0000 (10:02 -0400)]
mainloop: redo child source tests to not use timeouts
The timeout-based tests could fail on slow or heavily-loaded machines.
Change them to use a counter-based "timeout" source rather than a
time-based one, so they no longer depend on wall time.
https://bugzilla.gnome.org/show_bug.cgi?id=700460
Dan Winship [Wed, 24 Jul 2013 14:45:36 +0000 (10:45 -0400)]
gnetworkaddress: tweak to make Solaris happy
https://bugzilla.gnome.org/show_bug.cgi?id=704704
Shantha kumar [Wed, 24 Jul 2013 09:27:30 +0000 (14:57 +0530)]
Tamil Translation Updated
Colin Walters [Mon, 22 Jul 2013 18:31:35 +0000 (19:31 +0100)]
tests/unix: Don't error immediately on timeout
On a heavily loaded system, it's possible that both our normal
condition *and* the timeout occurred. In that case we can just ignore
the timeout.
While I did add a "sig_timeout" boolean, we don't need to add any
assertions around whether or not it was reached - the assertions
covering the non-timeout case are sufficient. The sig_timeout boolean
is mainly for later debugging.
https://bugzilla.gnome.org/show_bug.cgi?id=700460
Colin Walters [Mon, 22 Jul 2013 18:06:31 +0000 (19:06 +0100)]
gmain: Reset signal handlers to default when source is destroyed
If someone creates a unix signal source for e.g. SIGINT, and then
removes it, reset the handler to SIG_DFL.
Not doing this was the source of race conditions in the
glib/tests/unix test, but this will also just make us a "good citizen"
by cleaning up.
For example, if a project temporarily creates a handler for SIGTERM,
and then later removes it, they almost certainly want SIGTERM to
revert to the default of terminating the process, rather than doing
nothing.
https://bugzilla.gnome.org/show_bug.cgi?id=704699
Sébastien Wilmet [Mon, 15 Jul 2013 11:52:14 +0000 (13:52 +0200)]
GRegex: add g_regex_get_max_lookbehind()
It is useful for multi-segment regex matching.
A unit test is included.
https://bugzilla.gnome.org/show_bug.cgi?id=689794
Colin Walters [Mon, 22 Jul 2013 14:11:13 +0000 (15:11 +0100)]
tests/closure: Send SIGUSR1 only to our pid
Otherwise in e.g. the gnome-ostree integrationtest system, we
end up sending SIGUSR1 to the *entire session*, which triggers
various badness in untested debugging paths from gnome-session.
Colin Walters [Mon, 22 Jul 2013 11:51:00 +0000 (12:51 +0100)]
tests/closure: Use correct prototype for signal callback
This test worked when compiled without optimization, but fails with
-O2. Presumably we just happened to find the GMainLoop off the stack
somewhere.
https://bugzilla.gnome.org/show_bug.cgi?id=704267
Daniel Mustieles [Mon, 22 Jul 2013 11:48:58 +0000 (13:48 +0200)]
Updated Spanish translation
Milan Crha [Mon, 22 Jul 2013 07:54:33 +0000 (09:54 +0200)]
g_thread_create_full() can dereference NULL pointer
In case of the thread creation failure, and the thread was not created
as joinable, the g_thread_create_full() could dereference a NULL pointer.
https://bugzilla.gnome.org/show_bug.cgi?id=704523
Chun-wei Fan [Thu, 18 Jul 2013 09:22:53 +0000 (17:22 +0800)]
gsourceclosure.c: Fix build on Windows
GPid is a HANDLE (aka void *) on Windows, not an int, so treat pid
accordingly on Windows, as using pid as a gulong directly would likely be
undesirable on Windows
https://bugzilla.gnome.org/show_bug.cgi?id=704447
Dan Winship [Thu, 18 Jul 2013 12:11:35 +0000 (08:11 -0400)]
gobject/tests/closure: fix on win32
(The g_closure_unref() was wrong, but was not causing errors on linux
for some reason.)
https://bugzilla.gnome.org/show_bug.cgi?id=704447
Colin Walters [Sun, 21 Jul 2013 18:42:34 +0000 (19:42 +0100)]
tests/closure: Fix invalid unref
The closure is floating, g_source_set_closure() will claim the
ref, so we do not need to unref it.
Marek Černocký [Sun, 21 Jul 2013 09:00:38 +0000 (11:00 +0200)]
Updated Czech translation
Sébastien Wilmet [Fri, 12 Jul 2013 14:44:13 +0000 (16:44 +0200)]
GRegex: update documentation for partial matching
The restrictions on partial matching no longer apply with PCRE >= 8.00.
The pcrepartial manpage contains the "FORMERLY RESTRICTED PATTERNS"
section:
"For releases of PCRE prior to 8.00, because of the way certain
internal optimizations were implemented in the pcre_exec() function, the
PCRE_PARTIAL option (predecessor of PCRE_PARTIAL_SOFT) could not be used
with all patterns. From release 8.00 onwards, the restrictions no
longer apply, and partial matching with can be requested for any
pattern."
https://bugzilla.gnome.org/show_bug.cgi?id=704250
Sébastien Wilmet [Fri, 5 Jul 2013 11:23:11 +0000 (13:23 +0200)]
Improve documentation
- Mention G_SOURCE_CONTINUE and G_SOURCE_REMOVE in the GSourceFunc doc;
- Mention G_PARAM_READWRITE and G_PARAM_STATIC_STRINGS in the
GParamFlags doc;
- Fix "Since:" version for G_DEFINE_ABSTRACT_TYPE_WITH_PRIVATE;
- Fix typo.
https://bugzilla.gnome.org/show_bug.cgi?id=704250
Matthias Clasen [Fri, 19 Jul 2013 23:41:24 +0000 (19:41 -0400)]
gsettings tool: report failure to write
If a key is locked down, we should report an error if we
fail to write it.
https://bugzilla.gnome.org/show_bug.cgi?id=704424
Igor Pashev [Fri, 19 Jul 2013 22:23:29 +0000 (18:23 -0400)]
tests/gvariant: Canonicalize to lower case to work on Illumos (OpenSolaris)
Solaris libc gives lowercase strings.
https://bugzilla.gnome.org/show_bug.cgi?id=704585
Colin Walters [Fri, 19 Jul 2013 15:50:35 +0000 (11:50 -0400)]
gdbusnameowning: Don't spew an error if we're releasing a name due to closing
The default GNOME 3.10 login process right now has gdm spawn a session
for the login screen, retaining the X server, but closing the session
bus. Right now in this scenario many GNOME components such as
gnome-settings-daemon attempt to "clean up" on shutdown by releasing
their owned names.
But they're shutting down because the session bus went away, so
releasing the name is pointless, and presently spews an error into the
journal.
This patch avoids that error spew, which helps system administrators
find *real* problems.
https://bugzilla.gnome.org/show_bug.cgi?id=704567
Giovanni Campagna [Tue, 16 Jul 2013 13:26:02 +0000 (15:26 +0200)]
glib-unix: fix handling of multiple signal source for the same signal
We can't reset the pending flag for a signal until we've traversed
the whole list, as the documentation clearly says that in case multiple
sources they all get invoked.
This is still racy if you get a signal after checking the flag
but before resetting it, but it was the same before. The correct
fix would be to use sigwait() or signalfd(), but that would mean
blocking all signals in all threads, which is not compatible
with existing applications.
https://bugzilla.gnome.org/show_bug.cgi?id=704322
Dan Winship [Wed, 17 Jul 2013 22:58:18 +0000 (18:58 -0400)]
gsourceclosure: fix idle/timeout/signal closures, add child watch support
And add a test for all source types.
https://bugzilla.gnome.org/show_bug.cgi?id=704267
Chun-wei Fan [Wed, 17 Jul 2013 08:54:35 +0000 (16:54 +0800)]
Visual Studio Builds: Update property sheets
"Install" the newly-introduced gpropertyaction.h header file, which is
required for GIO.
Chun-wei Fan [Wed, 17 Jul 2013 08:45:50 +0000 (16:45 +0800)]
Visual Studio Builds: "Install" gdbus-codegen
Matthias Clasen [Tue, 16 Jul 2013 23:21:31 +0000 (19:21 -0400)]
gsettings tool: Improve documentation
Mention that gsettings needs a session bus to make changes.
Ryan Lortie [Sun, 14 Jul 2013 21:11:59 +0000 (17:11 -0400)]
GApplication: reply to ActivateAction
Send a reply for org.freedesktop.Application.ActivateAction calls. We
missed this before because nobody was waiting for it.
Matthias Clasen [Sun, 14 Jul 2013 15:35:56 +0000 (11:35 -0400)]
Make a test desktop file a little less invalid
Add a missing Name entry, and add a terminal ; to the Actions
entry in org.gtk.test.dbusappinfo.desktop. desktop-file-validate
still contains about the DBusActivatable entry and about the
missing Exec entries. The former will go away when desktop-file-validate
gets updated for the latest spec revision.
Colin Walters [Thu, 11 Jul 2013 15:07:17 +0000 (11:07 -0400)]
tests/mainloop: Fix assertions to really avoid race conditions
As the comment says, we may be delayed an arbitrary amount of time on
non-idle systems; update the assertions to reflect this.
This should fix periodic failures in the gnome-ostree continuous
integration system.
https://bugzilla.gnome.org/700460
Christian Kirbach [Sun, 14 Jul 2013 10:24:07 +0000 (12:24 +0200)]
Updated German translation
Dan Winship [Mon, 3 Jun 2013 11:13:50 +0000 (08:13 -0300)]
gcancellable: update GCancellableSource, fix a race condition
Update GCancellableSource to call g_source_set_ready_time() when its
cancellable is cancelled, rather than manually checking the state of
the cancellable from prepare() and check().
This means that we now need to use g_cancellable_connect() rather than
g_signal_connect() at construction time, to avoid the connect/cancel
race condition. Likewise, use g_cancellable_disconnect() to avoid the
disconnect/cancel race condition when freeing the source. (In fact,
that was necessary in the earlier code as well, and might have
occasionally caused spurious criticals or worse.)
https://bugzilla.gnome.org/show_bug.cgi?id=701511
Dan Winship [Mon, 3 Jun 2013 11:10:31 +0000 (08:10 -0300)]
Remove some unnecessary source prepare/check functions
GPollableSource and GSocket's "broken" source never trigger on their
own, so with the changes to GSources in the last cycle, their check
and prepare functions are unnecessary (and undesired).
https://bugzilla.gnome.org/show_bug.cgi?id=701511
Dan Winship [Sat, 1 Jun 2013 18:24:13 +0000 (15:24 -0300)]
gio: port unix streams to GUnixFDSource
The unix input/output streams were using a gio-only source type that
was mostly identical to GUnixFDSource. Get rid of that source type
and just use GUnixFDSource instead.
https://bugzilla.gnome.org/show_bug.cgi?id=701511
Dan Winship [Sat, 1 Jun 2013 18:23:15 +0000 (15:23 -0300)]
gsourceclosure: Add support for GUnixSignalWatchSource and GUnixFDSource
https://bugzilla.gnome.org/show_bug.cgi?id=701511
Dan Winship [Sun, 2 Jun 2013 22:59:23 +0000 (19:59 -0300)]
gsourceclosure: use g_cclosure_marshal_generic
For the glib-defined source types, and any source type that defines a
closure callback but not a closure marshal, use
g_cclosure_marshal_generic. And then remove all the other remaining
source closure marshals.
https://bugzilla.gnome.org/show_bug.cgi?id=701511
Ryan Lortie [Sat, 13 Jul 2013 19:48:39 +0000 (15:48 -0400)]
Fix g_return_if_fail vs. return_val_if_fail
Ryan Lortie [Thu, 4 Jul 2013 20:24:38 +0000 (16:24 -0400)]
GAction: add function for printing detailed names
A counterpart for parsing of detailed actions into (name, target) pairs,
this new function prints them back.
We also add a new function to check for validity of action names. Only
valid action names are allowed when printing. Parsing accepts _some_
invalid names for backwards compatibility.
https://bugzilla.gnome.org/show_bug.cgi?id=704157
Dan Winship [Tue, 4 Jun 2013 20:29:55 +0000 (17:29 -0300)]
gnetworkmonitornetlink: handle default route via device
If the default route is via a device rather than a particular IP
address, then neither RTA_DST nor RTA_GATEWAY will be present in the
RTM_NEWROUTE message, and so GNetworkMonitorNetlink would ignore it,
and then think there was no default route. (This could happen with
certain kinds of VPNs, if they were set to route all traffic through
the VPN.)
Fix this by recognizing routes that specify RTA_OIF ("output
interface") instead of RTA_GATEWAY.
https://bugzilla.gnome.org/show_bug.cgi?id=701609
Ryan Lortie [Thu, 11 Jul 2013 19:57:05 +0000 (15:57 -0400)]
Fix a typo in a filename in Makefile.am
Ryan Lortie [Sat, 8 Jun 2013 21:31:09 +0000 (17:31 -0400)]
Add a testcase for DBusActivatable=true
Add a fairly realistic testcase that ensures that GDesktopAppInfo with
DBusActivatable=true can successfully talk to GApplication for a variety
of purposes.
https://bugzilla.gnome.org/show_bug.cgi?id=699259
Piotr Drąg [Thu, 11 Jul 2013 19:09:15 +0000 (21:09 +0200)]
Updated POTFILES.in
Ryan Lortie [Thu, 11 Jul 2013 17:54:47 +0000 (13:54 -0400)]
Deal with new automake test stuff
Add *.trs and *.log to .gitignore along with test-driver
Add *.trs and *.log to CLEANFILES in glib.mk.
Ryan Lortie [Thu, 11 Jul 2013 17:47:45 +0000 (13:47 -0400)]
Add missing file
This got removed during the OnlyShowIn shuffle.
Ryan Lortie [Thu, 11 Jul 2013 17:04:23 +0000 (13:04 -0400)]
GDesktopAppInfo: remove note about OnlyShowIn
A previous version of the patch had OnlyShowIn support for desktop file
actions. This was removed from the spec and the patch rewritten, but
this bit of documentation slipped through. Remove it.
Ryan Lortie [Thu, 11 Jul 2013 16:46:59 +0000 (12:46 -0400)]
Implement the Desktop Action specification
For some time, the desktop file specification has supported "additional
application actions". This is intended to allow for additional methods
of starting an app, such as a mail client having a "Compose New Message"
action that brings up the compose window instead of the folder list.
This patch adds support for this with a relatively minimal API.
In the case that the application is a GApplication and DBusActivatable,
desktop actions are translated into GActions that have been added to the
application with g_action_map_add_action(). This more or less closes
the loop on being able to activate an application with an action
invocation (instead of 'activate').
https://bugzilla.gnome.org/show_bug.cgi?id=664444