Commit Graph

11274 Commits

Author SHA1 Message Date
Matthias Clasen
6c1d768f7b Also clean up includes 2011-10-16 18:43:22 -04:00
Matthias Clasen
0589f715e5 Move charset and locale name functions to their own files
They did not really belong into either gutils or gutf8.
2011-10-16 18:40:58 -04:00
Matthias Clasen
86cc4b246d Add deprecation annotations to mem chunk apis 2011-10-16 17:37:29 -04:00
Matthias Clasen
e7b4319d61 Move version APIs out of gutils
Just another cleanup.
2011-10-16 17:01:26 -04:00
Matthias Clasen
45f221c32f Move GTrashStack out of gutils.[hc]
Reducing the mess in gutils, and moving docs inline
at the same time. Double win.
2011-10-16 16:52:24 -04:00
Matthias Clasen
6ab1c77270 Pass correct data to fatal log handlers
This was pointed out by John Ralls in bug 653052.
He also provided the test case.
2011-10-16 16:24:20 -04:00
Martin Pitt
1435db48ba Clarify g_spawn_*() behaviour without full path
Document the previously uncovered case of calling g_spawn_async_with_pipes()
without a full path but no G_SPAWN_SEARCH_PATH. This runs programs from the
current directory, which might be unexpected and even dangerous in some corner
cases.

https://bugzilla.gnome.org/show_bug.cgi?id=656621
2011-10-16 16:09:33 -04:00
Matthias Clasen
8ff94df632 Add a tests of some GVfs functions
https://bugzilla.gnome.org/show_bug.cgi?id=656621
2011-10-16 16:09:33 -04:00
Jiro Matsuzawa
c41f6a0b7c Updated Japanese translation 2011-10-17 01:55:37 +09:00
Jiro Matsuzawa
0e68a7d06d Updated Japanese translation 2011-10-17 01:51:00 +09:00
Matthias Clasen
448be24cf3 Add app lauch environment test 2011-10-16 00:08:42 -04:00
Matthias Clasen
cbb0b2a0ed Add g_get_codeset test 2011-10-15 23:58:30 -04:00
Matthias Clasen
1493285f1d Add GAsyncQueue unit test 2011-10-15 23:58:18 -04:00
Matthias Clasen
d0bb1e0b0a Move g_get_codeset next to g_get_charset
g_get_codeset is a close relatove to g_get_charset, and up to now
it lived a shadowy existence without any header presence.
2011-10-15 23:27:28 -04:00
Matthias Clasen
976b0b72a4 Include genviron.h where necessary 2011-10-15 20:06:32 -04:00
Matthias Clasen
327e72f9fb And fix the syntax, too 2011-10-15 19:39:14 -04:00
Matthias Clasen
7df9637f0f Forgotten file 2011-10-15 19:38:10 -04:00
Matthias Clasen
d4dfca21bb Drop unused copy of _g_getenv_nomalloc 2011-10-15 18:23:07 -04:00
Simon McVittie
a7143a0e9f GDBusConnection: warn that direct access to the stream is a bad idea
Bug: https://bugzilla.gnome.org/show_bug.cgi?id=661679
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
2011-10-15 18:03:19 -04:00
Torsten Schönfeld
70eff50f21 Add two annotations to gio
https://bugzilla.gnome.org/show_bug.cgi?id=656679
2011-10-15 18:02:32 -04:00
Simon McVittie
5dcc502f91 Document that types are limited to 64 KiB
Bug: https://bugzilla.gnome.org/show_bug.cgi?id=659916
Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
2011-10-15 17:59:35 -04:00
Kean Johnston
33a86fce6a GIOModule: Use G_SEARCHPATH_SEPARATOR_S instead of ":"
https://bugzilla.gnome.org/show_bug.cgi?id=661257
2011-10-15 17:58:39 -04:00
Giovanni Campagna
94accc2d78 GKeyFile: improve introspection annotations
Ensure that all methods that take or return arrays are annotated
(including length). Mark ref, unref and free methods as (skip).

https://bugzilla.gnome.org/show_bug.cgi?id=590808
2011-10-15 17:54:41 -04:00
Giovanni Campagna
96817746d9 Turn GKeyFile into a boxed for introspection
Using the new refcounting API, introduce a boxed type wrapping
GKeyFile and expose it introspection bindings in glib-types.h.
2011-10-15 17:51:25 -04:00
Christian Persch
a57c9148cf GKeyFile: Add refcounting API
Adds g_key_file_ref and g_key_file_unref, to be used by a future
GKeyFile boxed type for language bindings.

Based on the patch by Christian Persch and Emmanuele Bassi.

Author: Christian Persch
Signed-off-by: Johan Dahlin
Signed-off-by: Giovanni Campagna

https://bugzilla.gnome.org/show_bug.cgi?id=590808
2011-10-15 17:44:45 -04:00
Matthias Clasen
dfd75d2ead Add 'Since 2.32' indexes to gio and gobject docs 2011-10-15 17:31:47 -04:00
Dan Winship
de834bed30 GAppLaunchContext: add environment-manipulating functions
Add functions for manipulating the environment under which a
GAppLaunchContext will launch its children, to avoid thread-related
bugs with using setenv() directly.

FIXME: win32 side isn't implemented yet

https://bugzilla.gnome.org/show_bug.cgi?id=659326
2011-10-15 17:30:55 -04:00
Matthias Clasen
117e534091 Misc doc formatting fixes 2011-10-15 17:00:56 -04:00
Matthias Clasen
94c246e8e3 Add tests for new g_environ_ functions 2011-10-15 16:28:07 -04:00
Matthias Clasen
7a9987d35d Move environment-related functions into their own files
gutils.[hc] is a bit of a grab bag, so lets start cleaning
things up by moving all the environment-related functions
into separate genviron.[hc] files.

The private _g_getenv_nomalloc has been moved to its sole caller.
2011-10-15 16:13:08 -04:00
Dan Winship
409d93148f gutils: Add functions for working with environment arrays
When spawning a child process, it is not safe to call setenv() before
the fork() (because setenv() isn't thread-safe), but it's also not
safe to call it after the fork() (because it's not async-signal-safe).
So the only safe way to alter the environment for a child process from
a threaded program is to pass a fully-formed envp array to
exec*/g_spawn*/etc.

So, add g_environ_getenv(), g_environ_setenv(), and
g_environ_unsetenv(), which act like their namesakes, but work on
arbitrary arrays rather than working directly on the environment.

http://bugzilla.gnome.org/show_bug.cgi?id=659326
2011-10-15 15:54:45 -04:00
Ryan Lortie
5ff803d91f Add to the pitfalls: fork() and daemon() 2011-10-15 13:27:46 -04:00
Ryan Lortie
ef6371ff74 tests/Makefile.am: remove unused LDFLAGS variable 2011-10-15 13:13:13 -04:00
Matthias Clasen
6651bd221e Expand thread docs a bit
Add some discussion of pitfalls of threaded programming.
2011-10-15 13:04:20 -04:00
Matthias Clasen
e4699af8eb Documentation tweaks 2011-10-15 11:37:03 -04:00
Fran Dieguez
55654fc8ad Updaged Galician translations 2011-10-15 16:29:50 +02:00
Ryan Lortie
3fe3fdd75a Check for "our" threads in some places
Don't allow g_thread_join() to be called on or g_thread_exit() to be
called from within threads that were not created by GLib.  Document
this.
2011-10-15 09:48:42 -04:00
Ryan Lortie
11f3684b71 gtk-doc g_thread_ref() and g_thread_unref() 2011-10-15 09:48:22 -04:00
Ryan Lortie
e75e9c3044 Rename g_thread_try to g_thread_try_new 2011-10-15 09:48:10 -04:00
Matthias Clasen
4417e77f17 Add atomic test to TEST_PROGS 2011-10-15 00:56:08 -04:00
Matthias Clasen
482bb38748 Documentation additions 2011-10-15 00:26:02 -04:00
Matthias Clasen
8bc8cd7aa0 Improve test coverage 2011-10-15 00:09:20 -04:00
Matthias Clasen
52321def8f Add a test involving g_thread_ref/unref
Also, fix the resource-limit test to properly unset RLIMIT_NPROC.
2011-10-14 23:20:06 -04:00
Matthias Clasen
81431fa5b8 Add g_thread_try to the docs 2011-10-14 23:12:06 -04:00
Matthias Clasen
d000bf67f7 Update doc lists 2011-10-14 23:01:05 -04:00
Matthias Clasen
5ddcc284e8 Minor doc clarifications 2011-10-14 23:00:17 -04:00
Ryan Lortie
a6da2b9ff9 Mention thread API changes in README 2011-10-14 21:52:36 -04:00
Ryan Lortie
4359cbd810 I read the news today, oh boy... 2011-10-14 21:48:20 -04:00
Ryan Lortie
7ab25865f2 Stop checking for fork() across GMainContext
01ed78d525 introduced assertion checks for
creating a main context, forking, and attempting to use the main context
from the child side of the fork.

Some code (such as gnome-keyring-daemon) daemonise after calling
GMainContext.  That's probably still mostly safe since we still only
have one side of the fork touching the context afterwards.

This use case is still troubling, however, since if any worker threads
have been created at the time of the fork(), we could end up in the
classic situation of leaving some mutexes in a locked state when the
other threads disappear from the copy of the image that the child gets.

This will require some deeper thinking...
2011-10-14 20:01:22 -04:00
Ryan Lortie
51773c6c64 Mask all signals in GLib worker thread
Some code using GLib (gnome-keyring-daemon, for example) assumes that
they can catch signals by masking them out in the main thread and
calling sigwait() from a worker.

The problem is that our new worker thread catches the signals before
sigwait() has a chance and the default action occurs (typically
resulting in program termination).

If we mask all the signals in our worker, then this can't happen.
2011-10-14 20:01:22 -04:00