glib/ChangeLog
Sebastian Wilhelmi 268084caf9 Make the magic and location arguments to the error-checking-mutex
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-11 00:18:46 +00:00

409 lines
13 KiB
Plaintext

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)
* glib/gthread.c: Use g_atomic_pointer_set instead of old
homegrown version now that we have it. (#335198, Chris Wilson)
* 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)
* tests/errorcheck-mutex-test.c: Adapt to GLib coding standards.
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. (#311043, jylefort@FreeBSD.org)
* tests/Makefile.am, tests/errorcheck-mutex-test: New test program
to test for all checked violations.
* 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.
* Remove obsolete gthread/gthread-solaris.c.
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)
* tests/keyfile-test.c (test_number): Add some tests for
invalid floating point numbers.
* glib/gkeyfile.c (g_key_file_parse_value_as_double): Return
an error for the empty string. (#339105, Morten Welinder)
* glib/gscanner.c (g_scanner_config_template): Make const,
noticed by Kjartan Maraas.
2006-05-06 Matthias Clasen <mclasen@redhat.com>
* glib/gkeyfile.c (g_key_file_set_string_list)
(g_key_file_set_locale_string_list): Fix invalid memory
reads. (#340816, Nick Treleaven)
2006-05-04 Alexander Larsson <alexl@redhat.com>
* glib/gbase64.c: (g_base64_decode_step):
Fix OOB write (#340538)
2006-05-03 Matthias Clasen <mclasen@redhat.com>
* tests/base64-test.c: Add some more tests.
* glib/gbase64.c (g_base64_decode_step): Avoid writing
beyond the guaranteed lenght of the output buffer, if
there is padding.
* tests/base64-test.c (test_incremental): Use malloced memory
instead of stack-allocated, so that MALLOC_CHECK_=2 catches
the OOB write...
* glib/gbookmarkfile.c (g_bookmark_file_load_from_data): Remove
an overzealous return_if_fail check that causes make check to
fail.
2006-05-02 Matthias Clasen <mclasen@redhat.com>
* configure.in: Bump version
* === Released 2.11.0 ===
* NEWS: Updates
* tests/casemap.txt:
* tests/casefold.txt: Regenerate from Unicode 5.0 data.
Tue May 2 15:00:00 2006 Tim Janik <timj@gtk.org>
* glib/guniprop.c: Make interval_compare static.
* tests/gobject/deftype.c: added test code from Behdad Esfahbod,
see #337128.
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-28 Behdad Esfahbod <behdad@gnome.org>
* glib/guniprop.c: #include <stdlib.h>
2006-04-27 Matthias Clasen <mclasen@redhat.com>
* glib/glib.symbols: Add g_unichar_iswide_cjk.
* glib/guniprop.c: Add a "Since: 2.12".
* NEWS: Updates
2006-04-27 Behdad Esfahbod <behdad@gnome.org>
* docs/reference/glib/glib-sections.txt,
* glib/gunicode.h glib/guniprop.c: Implement g_unichar_iswide_cjk().
(#105626)
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)
(expand_exec_line): Don't use printf() needlessly, handle
trailing '%' gracefully. (#339338, Morten Welinder)
(is_element_full): Silence the compiler.
(g_bookmark_file_dump, bookmark_metadata_dump):
(bookmark_app_info_dump): Escape strings before dumping
them in xml. (#339340, Morten Welinder)
2006-04-27 Behdad Esfahbod <behdad@gnome.org>
* glib/gunibreak.h, glib/gunichartables.h: Regenerated using
Unicode Character Database 5.0 beta.
2006-04-26 Matthias Clasen <mclasen@redhat.com>
* glib/grand.c (g_rand_new): Don't repeat a failed fclose()
call, since that invokes undefined behaviour. (Coverity)
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.
* tests/keyfile-test.c (test_comments): Add a test for
the previous change.
* glib/gkeyfile.c (g_key_file_lookup_group_node): Remove
redundant code.
(g_key_file_get_group_comment): Don't dereference before
checking for NULL. (#338572, Coverity, Pascal Terjan)
2006-04-19 Matthias Clasen <mclasen@redhat.com>
* glib/gdataset.c: Add some missing Since: 2.8 tags.
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.
* glib/gkeyfile.c (g_key_file_add_group): Accept duplicate
groups. (#157877, Sebastien Bacher)
* tests/keyfile-test.c: Add tests for duplicate key and
duplicate group handling.
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-17 Kjartan Maraas <kmaraas@gnome.org>
* configure.in: Remove obsolete entry for no_NO.
* po/no.po: And the translation.
2006-04-16 Matthias Clasen <mclasen@redhat.com>
* glib/gdate.c (g_date_fill_parse_tokens): Avoid an array
overrun. (Coverity, fix by Pascal Terjan)
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-12 Matthias Clasen <mclasen@redhat.com>
* glib/goption.c (parse_arg): Add an assert to make it
clear when value can be NULL.
2006-04-07 Martyn Russell <martyn@imendio.com>
* tests/threadpool-test.c: (test_thread_stop_unused): Removed an
assertion which can fail and is not a critical test.
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()
2006-04-07 Martyn Russell <martyn@imendio.com>
* glib/gasyncqueue.[ch]: Added private API
_g_async_queue_get_mutex so that g_thread_pool_free() can use the
async queue mutex.
* 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-04-05 Matthias Clasen <mclasen@redhat.com>
* tests/run-collate-tests.sh: Fix up shell script.
* tests/option-test.c (arg_test5): Skip the test if
setting the locale fails.
(empty_test1): Reset prgname before the test.
* tests/Makefile.am: Arrange for run-bookmark-test.sh
to be run by make check.
* tests/utf8-pointer.c:
* tests/tree-test.c: Silence warnings.
2006-04-04 Matthias Clasen <mclasen@redhat.com>
* glib/glib.symbols:
* glib/gbase64.[hc]: Add G_GNUC_MALLOC where
appropriate, use glib types.
2006-04-04 Alexander Larsson <alexl@redhat.com>
* glib/Makefile.am:
* glib/gbase64.[ch]:
* glib/glib.symbols:
Add base64 encode/decode functions
* glib/glib.h:
Include gbase64.h
* tests/Makefile.am:
* tests/base64-test.c:
Tests for base64 functions
2006-04-04 Matthias Clasen <mclasen@redhat.com>
* glib/gdate.c: Move short_month_names and long_month_names
to bss.
* glib/gspawn-win32.c (g_spawn_error_quark):
* glib/gspawn.c (g_spawn_error_quark):
* glib/gshell.c (g_shell_error_quark):
* glib/gmarkup.c (g_markup_error_quark):
* glib/goption.c (g_option_error_quark):
* glib/gkeyfile.c (g_key_file_error_quark):
* glib/giochannel.c (g_io_channel_error_quark):
* glib/gfileutils.c (g_file_error_quark):
* glib/gconvert.c (g_convert_error_quark):
* glib/gbookmarkfile.c (g_bookmark_file_error_quark):
* glib/gthread.c (g_thread_error_quark): No point in making
the error path fast by caching quarks.
* glib/gbookmarkfile.c: Make the parser struct const.
2006-04-04 Behdad Esfahbod <behdad@gnome.org>
* glib/gbookmarkfile.c: Fix accidentally broken build.
2006-04-03 Matthias Clasen <mclasen@redhat.com>
* glib/gbookmarkfile.c: Don't include sys/time.h (#337027,
Kazuki IWAMOTO)
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-30 Matthias Clasen <mclasen@redhat.com>
* glib/gbookmarkfile.c (g_bookmark_file_get_app_info): Sync
the parameter names with the .h files, otherwise gtk-doc
misbehaves.
2006-03-27 Emmanuele Bassi <ebassi@cvs.gnome.org>
* tests/.cvsignore: Add bookmarkfile-test to the ignored files.
2006-03-27 Emmanuele Bassi <ebassi@cvs.gnome.org>
* tests/Makefile.am:
* tests/bookmarkfile-test.c:
* tests/run-bookmark-test.sh:
* tests/bookmarks/*.xbel: Add test suite for GBookmarkFile.
2006-03-27 Emmanuele Bassi <ebassi@cvs.gnome.org>
* docs/reference/glib/glib-docs.sgml:
* docs/reference/glib/glib-sections.txt:
* docs/reference/glib/tmpl/bookmarkfile.sgml: Add documentation for
GBookmarkFile to GLib's reference guide.
2006-03-27 Emmanuele Bassi <ebassi@cvs.gnome.org>
* glib/glib.h:
* glib/gbookmarkfile.h
* glib/gbookmarkfile.c: Add GBookmarkFile, a parser for files
containing bookmarks stored using the Desktop Bookmark
specification. Fixes bug #327662.
* glib/glib.symbols:
* glib/Makefile.am:
* glib/makefile.msc.in:
* glib/makefile.mingw.in: Build glue for GBookmarkFile.
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.
Change a gboolean to an int. Fixes bug #329789.
* configure.in: Bump version number to 2.11.0
2006-03-27 Matthias Clasen <mclasen@redhat.com>
Add support for floating point numbers to goption.
(#329548, Behdad Esfahbod, patch by Antoine Dopffer and
Dom Lachowicz)
* glib/goption.h:
* glib/goption.c: Support double arguments.
* tests/option-test.c: Test double arguments.`
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)
2006-03-24 Martyn Russell <martyn@imendio.com>
* 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 Matthias Clasen <mclasen@redhat.com>
=== Branch for 2.10 ===