2006-05-22 Sebastian Wilhelmi <wilhelmi@google.com>
* glib/gthread.c (g_thread_init_glib): Run _g_atomic_thread_init
as the first of the full fledged initializers to allow the later
to potentially use atomic ints (which they currently do
not). (#342563, Peter Kjellerstedt)
2006-05-13 Matthias Clasen <mclasen@redhat.com>
* glib/glib.symbols:
* glib/goption.h:
* glib/goption.c: Allow optional summary and description
texts before and after the option descriptions, and add
a way to translate them. (#336120, Behdad Esfahbod)
2006-05-12 Tor Lillqvist <tml@novell.com>
* glib/giowin32.c (g_io_win32_sock_set_flags): Implement
setting/clearing G_IO_FLAG_NONBLOCK for channels attached to
sockets. (#341192)
(g_io_win32_unimpl_set_flags): set_flags method for the
unimplemented case.
2006-05-10 Sebastian Wilhelmi <wilhelmi@google.com>
* glib/gthread.h, gthread/gthread-impl.c: Make the magic and
location arguments to the error-checking-mutex functions const and
do not write to them, as we might not own them. Clean up the
error-checking-mutex code quite a bit. (#335198, Chris Wilson)
2006-05-10 Sebastian Wilhelmi <wilhelmi@google.com>
* glib/gthread.c: Use g_atomic_pointer_set instead of old
homegrown version now that we have it. (#335198, Chris Wilson)
2006-05-10 Sebastian Wilhelmi <wilhelmi@google.com>
* gthread/gthread-posix.c, gthread/gthread-win32.c: Prevent
calling into g_cond_wait resp. g_mutex_lock/unlock directly to
avoid recursions into the errorcheking mutex code (and out of
principle anyway). (#335198, Chris Wilson)
2006-05-09 Sebastian Wilhelmi <wilhelmi@google.com>
* glib/gthreadinit.h: Renamed to glib/gthreadprivate.h and moved
system thread identifier comparision and assignment macros from
glib/gthread.c to glib/gthreadprivate.h.
* glib/Makefile.am, glib/gatomic.c, glib/gconvert.c, glib/gmain.c,
glib/gmem.c, glib/gmessages.c, glib/grand.c, glib/gslice.c,
glib/gthread.c, glib/gutils.c, gthread/gthread-impl.c: Use
glib/gthreadprivate.h instead of glib/gthreadinit.h.
* gthread/gthread-impl.c: Use GSystemThread instead of GThread for
owner determination. This fixes#311043 and is mostly modeled
after the patch from jylefort@FreeBSD.org.
2006-05-09 Sebastian Wilhelmi <wilhelmi@google.com>
* glib/gprintf.c, glib/gspawn-win32.c, glib/gutf8.c,
gthread/gthread-impl.c, gthread/gthread-posix.c,
gthread/gthread-win32.c: Use canonical include form for internal
headers. config.h is always there.
2006-05-08 Matthias Clasen <mclasen@redhat.com>
* tests/convert-test.c (test_one_half): Use encoding names which
may work better on Solaris. (#340434, Alessandro Vesely)
2006-05-03 Matthias Clasen <mclasen@redhat.com>
* tests/base64-test.c (test_incremental): Use malloced memory
instead of stack-allocated, so that MALLOC_CHECK_=2 catches
the OOB write...
Tue May 2 14:18:25 2006 Tim Janik <timj@gtk.org>
* glib/goption.c (g_option_context_parse): fixed leak in short
option parsing. rewrote parts of the code to be more concise to
enhance readability. fixed exaggerated uses of strlen.
2006-04-27 Matthias Clasen <mclasen@redhat.com>
* glib/gbookmarkfile.c (g_bookmark_file_set_description)
(g_bookmark_file_set_title, g_bookmark_file_set_icon):
Remove some special-casing of empty string which led to
dangling pointers. (#339337, Morten Welinder)
2006-04-25 Matthias Clasen <mclasen@redhat.com>
* glib/gbookmarkfile.c (is_element_full): Avoid a possible
NULL dereference (found by Coverity), also avoid some
pointless strdups.
2006-04-19 Tor Lillqvist <tml@novell.com>
* glib/gatomic.c: Adapt to the changed prototype of
InterlockedCompareExchange() in newer SDKs. Use
InterlockedCompareExchangePointer() when applicable. (#155884,
John Ehresman)
2006-04-18 Matthias Clasen <mclasen@redhat.com>
* glib/gkeyfile.h:
* glib/glib.symbols:
* glib/gkeyfile.c: Add api to get and set doubles and
lists of doubles. (#164719, Maurizio Monge, Dom Lachowicz)
* tests/keyfile-test.c: Add tests for new api.
2006-04-17 Matthias Clasen <mclasen@redhat.com>
* glib/gcompletion.c (g_completion_complete_utf8): Make passing
NULL for new_prefix work as documented. (#338845, Yevgen Muntyan)
* tests/completion-test.c: Test that passing NULL for
new_prefix in g_completion_complete_utf8 works.
2006-04-12 Bastien Nocera <hadess@hadess.net>
reviewed by: Matthias Clasen <mclasen@redhat.com>
* glib/gconvert.c: add more details about which RFC is concerned
when using g_filename_to_uri (#337553)
2006-04-07 Hans Breuer <hans@breuer.org>
* glib/makefile.msc.in : added gbase64.obj and derive the static libs
name from auto* variables
* glib/makefile.msc.in : link user32.lib for MessageBox()
* glib/gthreadpool.c: Make sure
g_thread_pool_stop_unused_threads() actually stops unused threads
and global limits (like max idle time and max unused threads) can
be set without creating a thread pool first. Fixed#335215 (patch
from Chris Wilson).
* tests/threadpool-test.c: Added two new tests, tests setting
global limits before creating a thread pool. The second test
makes sure unused threads are actually stopped when using the
g_thread_pool_stop_unused_threads().
2006-04-05 Matthias Clasen <mclasen@redhat.com>
* glib/gnulib/vasnprintf.c (vasnprintf): Make
long long printing work if snprintf is not
available. (#332841, Michael McDonald)
2006-04-05 Behdad Esfahbod <behdad@gnome.org>
* tests/option-test.c: Check the return value of g_get_prgname for
NULL before passing to strcmp.
* tests/slice-test.c: Report the correct name in Usage summary.
2006-03-31 Tor Lillqvist <tml@novell.com>
* glib/gstdio.c (g_remove): Revert change below. It wasn't a good
idea after all, says the original bug reporter. See bug for
discussion.
2006-03-30 Tor Lillqvist <tml@novell.com>
* glib/gstdio.c (g_remove): [Win32] call rmdir() only if remove()
fails with errno set to ENOENT, to leave errno set to EACCESS if
that is the problem. (#334799, Yevgen Muntyan)
2006-03-27 Dom Lachowicz <cinamod@hotmail.com>
* tests/option-test.c: Copy-and-paste error slipped into test5. Enable
test5, as per Matthias' comments in bug 329548#c11.
2006-03-26 Matthias Clasen <mclasen@redhat.com>
* glib/goption.c (g_option_context_new): Improve the description
of parameter_string in the docs. (#336085, Claudio Saavedra)
* glib/gthreadpool.c: Updated the documentation to explain that
when the maximum threads is > 1 the sort functionality is not 100%
accurate due to the ramdom nature of the scheduler choosing which
threads to execute. Fixes bug #334943.
* tests/threadpool-test.c: Disabled the debugging by default and
fixed the sort test to set the maximum threads to 1 to guarantee
the thread entry function is called in order.
2006-03-23 Emmanuele Bassi <ebassi@cvs.gnome.org>
* configure.in: Check for timegm.
* glib/gtimer.h:
* glib/gtimer.c:
* glib/glib.symbols:
* docs/reference/glib/glib-sections.txt: Added g_time_val_to_iso8601
and g_time_val_from_iso8601, to convert a GTimeVal to and from an
ISO 8601 encoded date.
* tests/testglib.c: Added test cases for g_time_val_to_iso8601()
and g_time_val_from_iso8601() functions.
2006-03-20 Matthias Clasen <mclasen@redhat.com>
* glib/gmem.c (profiler_log): use standard_calloc to allocate
the profile_data. (#335209, Chris Wilson)
* glib/gmain.c (g_main_context_unref): Avoid a deadlock.
(#335207, Chris Wilson)
Minor optimizations (#335216, Chris Wilson):
* glib/gasyncqueue.c (g_async_queue_pop_intern_unlocked): Use
g_queue_peek_tail_link instead of g_queue_peek_tail.
* glib/glist.c:
* glib/gslist.c: Avoid some memset calls.
2006-03-15 Matthias Clasen <mclasen@redhat.com>
* glib/goption.c (g_option_context_parse): Only set the prgname
if it hasn't been set before. (#334611, Chong Kai Xiong)
2006-03-14 Matthias Clasen <mclasen@redhat.com>
* glib/gutils.c (g_parse_debug_string): Don't read past the
end of the string. (#334471, Morten Welinder)
2006-03-13 Anders Carlsson <andersca@luminoth.local>
* configure.in: Revert fix for #322476, it breaks module loading
since libtool on darwin makes shared modules use .so and shared
libraries use .dylib. The fix breaks shared module loading everywhere
in GTK+.
2006-03-02 Marcus Brinkmann <mb@g10code.de>
Implement watches for GIOChannels for write file descriptors on
Win32 (#333098).
* glib/giowin32.c (GIOWin32Channel): Add a new direction field.
(read_thread): Initialize direction.
(write_thread): New function.
(buffer_write): New function.
(g_io_win32_prepare): Handle the G_IO_WIN32_FILE_DESC case for the
write direction.
(g_io_win32_fd_write): Call buffer_write() if there is a writer
thread.
(g_io_win32_fd_close): Set space_avail_event for writer threads.
(g_io_win32_fd_create_watch): Create the writer thread if
condition is G_IO_OUT.
(g_io_channel_win32_make_pollfd): Likewise here.
2006-03-07 Matthias Clasen <mclasen@redhat.com>
* glib/gutf8.c (_g_charset_get_aliases): Match the prototype
in gconvert.c to fix build problems in NetBSD. (#333651,
Julio M. Merino Vidal)
2006-03-06 Anders Carlsson <andersca@imendio.com>
* configure.in:
Skip checking thread flags on Darwin. Fix suggested by Manish Singh.
(#314794, Gregor Riepl)
2006-03-01 Tor Lillqvist <tml@novell.com>
* glib/gutils.c (g_listenv): Separate implementation on Win32: Use
the wide character API on NT-based Windows. Return UTF-8 strings.
* glib/glib.symbols: Don't mark g_listenv as PRIVATE, as that
meant it wasn't present in the import library. PRIVATE is used
only for the backwards-compatibility DLL ABI stability hacks.