3318 Commits

Author SHA1 Message Date
Ryan Lortie
33c977917c GVariant: document avoiding g_variant_iter_loop
The choice between g_variant_iter_next() and g_variant_iter_loop() is a
bit confusing for some people.  Add a note to the documentation of
g_variant_iter_loop() to clarify that it should be avoided except in a
few specific cases.
2011-07-20 16:34:55 +02:00
Ryan Lortie
19878998bc GVariant: better support for object path arrays
Add G_VARIANT_TYPE_OBJECT_PATH_ARRAY along with accessor functions
g_variant_new_objv, g_variant_get_objv and g_variant_dup_objv.  Also add
support for '^ao' and '^a&o' format strings for g_variant_new() and
g_variant_get().

https://bugzilla.gnome.org/show_bug.cgi?id=654955
2011-07-20 16:27:30 +02:00
Matthias Clasen
4c64e75ec5 Drop the warnings.sgml template 2011-07-19 20:40:28 -04:00
Matthias Clasen
9fd0f6c8e2 Fix doc formatting errors 2011-07-19 00:02:57 -04:00
Matthias Clasen
c9379bcfe1 Move GError docs inline and ditch template 2011-07-18 23:58:32 -04:00
Matthias Clasen
09e2d2a61c Move Unicode docs inline, ditch template 2011-07-18 23:23:17 -04:00
Behdad Esfahbod
615977d337 Simplify Hangul Jamo decomposition
The algorithm is not copy/paste from Unicode anymore, but it's easy
enough to follow the logic.
2011-07-18 18:12:35 -04:00
Behdad Esfahbod
0584fe33de Bug 654651 - Better g_unicode_canonical_decomposition()
Add g_unichar_fully_decompose().
Deprecate g_unicode_canonical_decomposition().
2011-07-18 18:12:35 -04:00
Benjamin Otte
75b30dc51c gtester: Count inability to run a test in a binary as a failure
Previously, when a binary did not run a single test - for whatever
reason, from the binary not existing to the binary not using the gtester
framework - no failures were recorded. Now we record a non-successful
run of a binary that did not start any tests as a failure, too.

Note that this does not change the behavior of any binaries that exit
successfully or that report the start of any gtester test.
2011-07-18 14:10:35 +02:00
Benjamin Otte
4a25d60023 gtester: Return a failure exit code when a test fails
Previously, gtester used the testcase_fail_count as the number of tests
that failed in the latest run testcase, but then use that as the return
value of main().

Now we count the failed testcases of the whole run.
2011-07-18 13:41:26 +02:00
Matthias Clasen
adc325fac0 Move version docs inline 2011-07-17 23:50:31 -04:00
Matthias Clasen
20cd4936b9 Move GQueue docs inline 2011-07-17 23:38:58 -04:00
Behdad Esfahbod
7041b701dd Remove comp_step_table table
Reuse the pre-existing composition data.
2011-07-14 16:55:35 -04:00
Behdad Esfahbod
89a5d17d58 Document, that the second part of a decompose() wouldn't decompose()
This is not directly documented in Unicode, or I couldn't find it,
but the test I just added confirms that it is currently the case.
2011-07-14 16:55:35 -04:00
Behdad Esfahbod
f4cf6c3db0 [test] Move non-utf8 tests into unicode.c 2011-07-14 16:55:35 -04:00
Behdad Esfahbod
cff4b5b3a3 Remove stale comment
Unicode guarantees that.
2011-07-14 16:55:35 -04:00
Behdad Esfahbod
a73c66b134 Add tests for Unicode canonical composition/decomposition
Also update compose()/decompose() API corner cases and docs.
2011-07-14 16:55:35 -04:00
Behdad Esfahbod
7ad2f0eb80 Move declarations around
So g_unichar API comes before g_utf8.
2011-07-14 16:55:35 -04:00
Matthias Clasen
761a1841ee Bug 654195 - Add g_unichar_compose() and g_unichar_decompose() 2011-07-14 16:55:34 -04:00
Ryan Lortie
58c247e51b GVariant: add g_variant_take_ref()
This function implements the following logic:

  if (g_variant_is_floating (value))
    g_variant_ref_sink (value);

which is used for consuming the return value of callbacks that may or
may not return floating references.

This patch also replaces a few instances of the above code with the new
function (GSettings, GDBus) and lifts a long-standing restriction on the
use of floating values as the return value for signal handlers by
improving g_value_take_variant().

https://bugzilla.gnome.org/show_bug.cgi?id=627974
2011-07-12 19:44:21 +02:00
Paolo Bonzini
5eee90fbbc add g_regex_escape_nul
The function can be used to let regex compile non-NUL-terminated
strings without redesigning the way the pattern is stored in GRegex
objects and retrieved with g_regex_get_pattern.

https://bugzilla.gnome.org/show_bug.cgi?id=615895
2011-07-11 00:02:22 -04:00
Martin Storsjo
7c517bf350 Don't needlessly use "echo -e"
The -e parameter to echo isn't recognized by echo in POSIX sh,
but isn't needed when no escaped characters need to be
interpreted.

This fixes building glib with a mingw cross compiler on Mac OS X.

https://bugzilla.gnome.org/show_bug.cgi?id=654085
2011-07-10 20:47:02 -04:00
Matthias Clasen
98b667d052 Optimize g_[s]list_free_full a bit
No need to iterate the list twice.
Proposed by Luiz Augusto von Dentz,
http://bugzilla.gnome.org/show_bug.cgi?id=653935
2011-07-10 20:42:58 -04:00
Javier Jardón
c2dc66ccf2 Move documentation to inline comments: spawn 2011-07-06 22:13:05 +01:00
Matthias Clasen
34e571c466 Disable a failing test 2011-07-04 13:11:42 -04:00
Murray Cumming
7ba753b002 G_STATIC_REC_MUTEX_INIT: Fix missing initialization.
Add the third struct field, zeroed, to avoid a compiler warning.
2011-07-04 08:58:00 +02:00
Colin Walters
1b0e5e7683 gmain: Fall back to pipes if kernel doesn't support EFD_CLOEXEC for eventfd()
Also remove the caching of checking for eventfd; just try it every time, it's
cheap enough to do so.

https://bugzilla.gnome.org/show_bug.cgi?id=653570
2011-06-28 10:03:15 -04:00
Matthias Clasen
9eb65dd3ed Unicode: add a g_utf8_substring convenience api
This function is useful in the GTK+ accessibility implementations,
and seems like a nice thing to have around in general.
2011-06-23 21:31:40 -04:00
Christian Persch
c2b112bc56 Typo fix 2011-06-24 01:07:18 +02:00
Christian Persch
b1b8c95d35 Plug a mem leak in the regex test 2011-06-24 01:03:52 +02:00
Christian Persch
00afe3fed3 Make GMatchInfo refcounted 2011-06-24 01:03:46 +02:00
Colin Walters
3904c8761a gmain: use Linux eventfd() for main context wake up
The Linux eventfd() call is basically tailor made for the main loop
wake up pipe - all we want is a threadsafe way to write to a file
descriptor, and wake up the context on the other end; we don't care
about the content at all.

The eventfd manual page basically explains the benefits:

       Applications can use an eventfd file descriptor instead of a
       pipe (see pipe(2)) in all cases where a pipe is used simply to
       signal events.  The kernel overhead of an eventfd file
       descriptor is much lower than that of a pipe, and only one file
       descriptor is required (versus the two required for a pipe).

When writing my multithreaded spawn test case I actually hit the 1024
file descriptor limit quickly, because we used 2 fds per main context.
This brings that down to 1.

https://bugzilla.gnome.org/show_bug.cgi?id=653140
2011-06-21 23:28:52 -04:00
Philip Van Hoof
f6ed357101 Add iter_replace API to GHashTableIter
https://bugzilla.gnome.org/show_bug.cgi?id=652822
2011-06-20 23:05:59 -04:00
Christian Persch
f9cec26968 Clarify nul-termination of g_utf8_to_ucs4[_fast] result
The docs for g_utf8_to_ucs4_fast didn't mention that the resulting
string is terminated by a 0 character.

Bug #652897.
2011-06-19 13:14:39 +02:00
Matthias Clasen
580e177dcc Add tests for GCache 2011-06-19 01:42:48 -04:00
Matthias Clasen
63fa44251a utils: silence tests unless verbose 2011-06-19 01:05:05 -04:00
Matthias Clasen
e1d4e06ab3 logging: improve test coverage 2011-06-19 01:04:48 -04:00
Matthias Clasen
ed3ac87afe hash: Improve test coverage 2011-06-19 01:04:30 -04:00
Colin Walters
4476e22a14 gvariant: Mark g_variant_new_variant as constructor
https://bugzilla.gnome.org/show_bug.cgi?id=647796
2011-06-17 09:39:48 -04:00
Murray Cumming
34b7126a4e G_STATIC_REC_MUTEX_INIT: Add a 0 to the initialization.
This avoids a compiler warning about an incomplete initialization
when using this.
2011-06-15 10:47:13 +02:00
Ryan Lortie
23f684454f Drop dead code in GVariant parser
There is no chance that an unsigned integer value will be negative after
we do the bounds check that enforces its non-negativity.

Caught by Matthias running Coverity.
2011-06-14 22:45:06 -04:00
Matthias Clasen
a6b9db6907 Eliminate some dead code 2011-06-14 21:06:17 -04:00
Matthias Clasen
f966a0af9a Add some argument checks to filename conversion functions 2011-06-14 21:06:16 -04:00
Colin Walters
c9f883f133 gmain: Close race condition in _g_main_wake_up_all_contexts()
Running gthread/tests/spawn-multithreaded in a loop, I very easily hit:

GLib-CRITICAL **: g_main_context_wakeup: assertion `g_atomic_int_get (&context->ref_count) > 0' failed

Testing the refcount still left a window where we would fall into the
assertion.  Fix this by just locking the context.
2011-06-14 19:23:36 -04:00
Colin Walters
211d7adf6e gmain: Only run through signal delivery once per read()
This is what I intended to do before.

https://bugzilla.gnome.org/show_bug.cgi?id=652072
2011-06-14 19:23:36 -04:00
Colin Walters
ed827deb77 gmain: Use sigset_t for keeping track of installed signals
Minor code cleanup.

https://bugzilla.gnome.org/show_bug.cgi?id=652072
2011-06-14 19:23:36 -04:00
Colin Walters
1874ad97d8 gspawn: Reset signal handlers for synchronous spawning
We should by default reset signal handlers; particularly with the
ability to install them via g_unix_signal_source_new(), we don't
want to call a user callback inside a fork()ed helper process.

https://bugzilla.gnome.org/show_bug.cgi?id=652072
2011-06-14 19:23:36 -04:00
Colin Walters
b9c67b4369 glib/tests/unix.c: Also test SIGTERM
We expect this to not kill the process, so it'd be a good one to test.

https://bugzilla.gnome.org/show_bug.cgi?id=652072
2011-06-14 19:23:36 -04:00
Colin Walters
7e1886ba72 gspawn: Handle EINTR in a few more cases
I was debugging gthread/tests/spawn-multithreaded.c, and while I
don't think I actually hit EINTR in any of these cases, it'd be
good to fix them anyways.

https://bugzilla.gnome.org/show_bug.cgi?id=652072
2011-06-14 19:23:35 -04:00
Matthias Clasen
25a797fa25 Silence a compiler warning
Even though we are confident the filename will always
end in .gmarkup, the compiler doesn't know that...
2011-06-14 10:16:35 -04:00