Tue Aug 14 02:06:10 2007 Tim Janik <timj@imendio.com>
* glib/gthread.c (g_once_init_enter_impl): prevent race covered
by g_once_init_enter(), by checking for previous initializations
before entering initialisation branch.
* tests/onceinit.c: added multi-thread/multi-initializer stress test
using unoptimized g_once_init_enter_impl().
svn path=/trunk/; revision=5701
Mon Aug 13 14:21:44 2007 Tim Janik <timj@imendio.com>
* tests/onceinit.c: test g_once_init_*() before and after
g_thread_init() and test concurrency resolution.
svn path=/trunk/; revision=5698
Mon Aug 13 14:18:22 2007 Tim Janik <timj@imendio.com>
* glib/gthread.c (g_thread_create_full): prevent linking a freed
GThread structure into global thread list in error cases.
svn path=/trunk/; revision=5697
2007-08-08 Matthias Clasen <mclasen@redhat.com>
* glib/gmarkup.c (append_escaped_text): Handle restricted
characters by converting them to numeric character
entities. (#464145, Andreas Monitzer)
* tests/markup-escape-test.c: Add tests for restricted
characters and numeric character entities.
svn path=/trunk/; revision=5684
2007-08-06 Tor Lillqvist <tml@novell.com>
* glib/gslice.c: Move the G_ENABLE_DEBUG ifdef inside
g_slice_debug_tree_statistics() so that the function exists (but
doesn't do anything) also in a non-debug build. (#440544)
svn path=/trunk/; revision=5679
Fri Jul 13 01:01:46 2007 Tim Janik <timj@imendio.com>
* glib/gthread.[hc]: more atomic ops pointer cast fixes. this time it'll
work with atomic op macros *and* atomic op functions.
svn path=/trunk/; revision=5638
Thu Jul 12 17:31:08 2007 Tim Janik <timj@imendio.com>
* tests/slice-concurrent.c: beautified output somewhat. fixed long
sleeps by reducing sleep accumulating and using randomized re-scheduling
(which works on UP and SMP). increased possible blocksizes.
svn path=/trunk/; revision=5631
Thu Jul 12 15:46:40 2007 Tim Janik <timj@imendio.com>
* glib/gslice.c: migrate per-thread magazine caches from single-thread
scenario to first thread using GSlice after g_thread_init(); based on
a patch by Tor Lillqvist, fixes#331853.
removed warning about g_thread_init() being called after other glib
functions (in particular g_slice* calls), because GSlice can cope
with this now and the rest of glib is believed to cope as well.
* tests/slice-threadinit.c: new test program which tests GSlice working
across g_thread_init() calls.
svn path=/trunk/; revision=5629
Tue Jul 10 12:24:35 2007 Tim Janik <timj@imendio.com>
* glib/gthread.[hc]: implemented g_once_init_enter(),
g_once_init_enter_impl() and g_once_init_leave(), based on a patch by
Antoine Tremblay, fixes#65041.
adapted exported inline function mechanism from gutils.[hc] for inlining
g_once_init_enter_impl() in gthread.[hc].
svn path=/trunk/; revision=5616
2007-07-09 Loïc Minier <lool@dooz.org>
* tests/refcount/closures.c: (main): Output newlines after thousand
iterations of the inner-loop of the closures test; this helps having
smaller lines and continuously outputting new lines. (#447048).
svn path=/trunk/; revision=5609
2007-07-09 Ryan Lortie <desrt@desrt.ca>
* glib/gfileutils.c (write_to_temp_file): save errno to prevent it
being clobbered by call to g_filename_display_name(). Bug #453796.
svn path=/trunk/; revision=5608
2007-07-06 Tor Lillqvist <tml@novell.com>
* glib/giowin32.c (g_io_win32_check): When WSAEnumNetworkEvents()
signals FD_CONNECT that means that the connection attempt
finished, either successfully or failed. Test explicitly whether
the connnection succeeded and set either G_IO_OUT if it did,
G_IO_ERR|G_IO_HUP if it failed.
Make sure we never set both G_IO_OUT and G_IO_HUP simultaneously
because in Unix poll(2) POLLOUT and POLLHUP are mutually
exclusive.
Ignore whether the caller wants to watch G_IO_HUP or not. Always
select for FD_CLOSE because Unix poll(2) also ignores whether
POLLHUP in set the requested events bitmask or not.
svn path=/trunk/; revision=5600
Mon Jun 25 16:43:13 2007 Tim Janik <timj@gtk.org>
* glib/ghash.c: g_hash_table_find(), g_hash_table_foreach():
document performance caveats for linear order searches.
svn path=/trunk/; revision=5587
2007-06-18 Mathias Hasselmann <mathias.hasselmann@gmx.de>
* glib/gstring.c: Restore old behaviour of
g_string_append_vprintf: g_vasprintf seems to be faster
than g_printf_string_upper_bound (#57693).
svn path=/trunk/; revision=5581