2007-01-09  Behdad Esfahbod  <behdad@gnome.org>

	* glib/gutils.h: Use a more optimized g_bit_storage() when gcc is
	available.  (#371670, Daniel Elstner)

2007-01-08  Matthias Clasen  <mclasen@redhat.com>

	* gthread/gthread-posix.c (g_thread_impl_init): Don't
	use _SC_MONOTONIC_CLOCK unless USE_CLOCK_GETTIME is
	defined.  (#394150)

2007-01-07  Matthias Clasen  <mclasen@redhat.com>

	Don't link glib against libpthread.  (#393812)
	
	* configure.in: Link gthread against librt, not glib itself.

	* glib/gthread.h:
	* glib/gthread.c: Add a new thread function, gettime.

	* glib/gtimer.c: Use gettime instead of directly working with
	the various system interfaces.

	* gthread/gthread-impl.c:
	* gthread/gthread-posix.c:
	* gthread/gthread-win32.c: Implement gettime.
	
2007-01-07  Matthias Clasen  <mclasen@redhat.com>

	* m4macros/glib-2.0.m4: Use PKG_PROG_PKG_CONFIG.  (#392636,
	Yevgen Muntyan)

2007-01-07  Tor Lillqvist  <tml@novell.com>

	* glib/giowin32.c: Handle GIOChannels for file descriptors
	connected to the console separately. This would typically be the
	fd 0, 1, or 2 (if not redirected) in a console application. For
	such fds we don't need a separate thread, as console HANDLEs are
	waitable objects. (#359202, Michiel de Hoon)

2007-01-04  Behdad Esfahbod  <behdad@gnome.org>

	* tests/bit-test.c (builtin_bit_nth_lsf1), (builtin_bit_nth_lsf2),
	(builtin_bit_nth_msf): Fix tests on x86_64.

2007-01-03  Behdad Esfahbod  <behdad@gnome.org>

	* glib/goption.c (_g_unichar_get_width), (_g_utf8_strwidth),
	(calculate_max_length), (print_entry), (print_help): Take zerowidth
	and double-width chars into consideration when computing width of a
	string.  Also fix another bug in width computation. (#346955)

	* glib/guniprop.c (g_unichar_iszerowidth): Fix typo.  It was not
	working correctly.

2007-01-03  Behdad Esfahbod  <behdad@gnome.org>

	* glib/glib.symbols:
	* glib/gunicode.h:
	* glib/guniprop.c: Add g_unichar_iszerowidth(). (#347645)

2007-01-03  Behdad Esfahbod  <behdad@gnome.org>

	* glib/gutils.h: Fix bug in g_bit_nth_lsf (#371631) and use
	__builtin_clzl for g_bit_storage if available (#371670).

	* tests/Makefile.am:
	* tests/bit-test.c: New test, to test g_bit_* operations against
	naive and builtin implementations.

2007-01-02  Behdad Esfahbod  <behdad@gnome.org>

	* configure.in: Avoid more warnings from running libtool --config.
	(#391364)

2007-01-03  Michael Natterer  <mitch@imendio.com>

	* removed all .cvsignore files. SVN doesn't need them.

2007-01-02  Emmanuele Bassi  <ebassi@gnome.org>

	* glib/gbookmarkfile.c (expand_exec_line): Add support for
	expanding the desktop entry spec variables %U (list of URIs)
	and %F (list of filenames), so that using the command line
	from the Exec and TryExec key of a desktop entry file works
	as intended.

2007-01-02  Matthias Clasen  <mclasen@redhat.com>

	* configure.in: Avoid warnings from running libtool --config.
	(#391364, Loïc Minier)

2007-01-02  Matthias Clasen  <mclasen@redhat.com>

	* glib/gbookmarkfile.c (g_bookmark_file_get_app_info): 
	Return an error if the uri is bad. (#391370, Maciej Piechotka)

2007-01-02  Matthias Clasen  <mclasen@redhat.com>

	* glib/glib.symbols: Guard g_slice_debug_tree_statistics
	by G_ENABLE_DEBUG.  (#390940, Kazuki Iwamoto)

2007-01-02  Michael Natterer  <mitch@imendio.com>

	* configure.in
	* Makefile.am: remove references to build/ until a proper decision
	has been made what to do with it.

2007-01-01  Matthias Clasen  <mclasen@redhat.com>

	* glib-gettextize.in: Silence autoconf warnings about
	datarootdir.  (#391367, Loïc Minier)

2006-12-31  Matthias Clasen  <mclasen@redhat.com>

	* glib/gslice.c: Fix some C99isms.  (#390913, Kazuki Iwamoto)

Fri Dec 29 13:28:07 2006  Tim Janik  <timj@imendio.com>

	* glib/gslice.c: turned detection of too late g_thread_init() calls
	into a warning. this is a temporary work-around for some head-room
	to fix affected programs, memory corruption still occours regardless.

2006-12-29  Matthias Clasen  <mclasen@redhat.com>

	* tests/gobject/Makefile.am:
	* tests/gobject/dynamictype.c: New test for dynamic type 
	registration macros. 

Thu Dec 28 21:14:45 2006  Tim Janik  <timj@imendio.com>

	* glib/gslice.c: removed pthread-dependant debugging bits, the code
	was already converted to GMutex. this obsoletes Tor's recent fixups.

2006-12-28  Tor Lillqvist  <tml@novell.com>

	* glib/gutils.h (G_WIN32_DLLMAIN_FOR_DLL_NAME)
	* glib/gutils.c (get_windows_directory_root): : Use only the wide
	character API here, too.

	* glib/gslice.c: Make it compile on Win32 without pthreads: Use a
	Win32 critical section instead.

	* glib/gmessages.c (g_logv): On Win32, if we get a fatal error
	message while being debugged we break into the debugger with
	G_BREAKPOINT(). Don't call abort() if the user is foolhardy enough
	to continue after the breakpoint. The user presumably knows what
	he is doing and deserves what he gets. (#376645, Andreas Köhler)

Thu Dec 28 12:50:31 2006  Tim Janik  <timj@imendio.com>

	* glib/gslice.h, glib/gslice.c: implemented static debugging
	hash-tree to validate slice adresses and sizes with G_SLICE=debug-blocks.
	use abort() to exit in mem_error() to allow catching of these in gdb.
	abort programs with a descriptive error message if g_thread_init() is
	called after GSlice was in use. previously this just silently corrupted
	the magazines.

	* glib/ghash.c (struct _GHashNode): reordered fields to keep 8-byte 
	pointer alignment on 64bit systems and request smaller slice sizes
	on 32bit systems.

	* tests/slice-test.c: support '~' option flag to introduce slice 
	allocation/release corruption with a significant probability. this
	allowes testing of G_SLICE=debug-blocks.

2006-12-27  Matthias Clasen  <mclasen@redhat.com>

	* glib/gconvert.[hc]:
	* glib/gfileutils.c:
	* glib/giochannel.c:
	* glib/goption.c:
	* glib/gspawn.c:
	* glib/gunicollate.c:
	* glib/gutils.c:
	* tests/timeloop-basic.c: 
	Consistently use gsize rather than size_t.  (#333310,
	Morten Welinder)

2006-12-27  Matthias Clasen  <mclasen@redhat.com>

	* configure.in: Use AC_CACHE_CHECK for the nl_langinfo
	check.  (#304517, Lőrinczy Zsigmond)

2006-12-27  Tor Lillqvist  <tml@novell.com>

	* glib/gwin32.h
	* glib/gwin32.c (get_package_directory_from_module)
	(g_win32_get_package_installation_directory)
	(g_win32_get_package_installation_subdirectory): Add const to
	gchar* arguments. (#384523, Yevgen Muntyan)
	
2006-12-27  Ryan Lortie  <desrt@desrt.ca>

	* glib/ghash.c: cache the value of the hash function
	in the GHashNode.  this speeds up resizing the hash
	table and it also allows a slight optimisation on
	lookups.  (#388332)

2006-12-27  Matthias Clasen  <mclasen@redhat.com>

	* glib/gunicollate.c (g_utf8_collate_key): Don't modify
	the current locale.  (#389300)

2006-12-26  Matthias Clasen  <mclasen@redhat.com>

	* glib/gutf8.c: Add hints for locale-dependent interfaces.
	* glib/gconvert.c: Add hints for locale-dependent interfaces.

	* glib/gconvert.c (g_get_filename_charsets): Improve
	formatting of docs. 

2006-12-26  Behdad Esfahbod  <behdad@gnome.org>

	* configure.in: Use libtool to determine shared library suffix.
	(#357245)

2006-12-24  Matthias Clasen  <mclasen@redhat.com>

	* tests/run-collate-tests.sh:
	* tests/unicode-collate.c: Silently skip tests if
	we can't set LC_COLLATE to en_US.  (#336438)

2006-12-19  Matthias Clasen  <mclasen@redhat.com>

	* glib/gkeyfile.c (g_key_file_is_key_name): Accept
	'/', '+' and '.' in key names, since gnome-vfs uses
	mime types as keys in some cache.

	* tests/keyfile-test.c: Tests for the above.

2006-12-18  Matthias Clasen  <mclasen@redhat.com>

	* configure.in: Fix the broken poll test.  (#387260,
	Christian Persch)

	* glib/gmain.c (child_watch_helper_thread): Readd a
	return which was removed as dead code a while ago.
	icc may consider it dead, but gcc doesn't like non-void
	functions without a return...  (#354707)

	* tests/Makefile.am: Try a different fix for bug 346373.

2006-12-18  Matthias Clasen  <mclasen@redhat.com>

	Fix bug 161288:

	* configure.in: Check for wcslen.

	* glib/gnulib/vasnprintf.c: Handle wcslen missing.

2006-12-18  Matthias Clasen  <mclasen@redhat.com>

	* glib/gkeyfile.c: Accept '@' in locale names.

	* glib/gkeyfile.c: Tighten up the check for allowed
	key and group names.  (#343191, Tommi Komulainen)

	* tests/keyfile-test.c: Test handling of key and group names.

	* tests/Makefile.am: Don't use $RANDOM if the shell doesn't
	have it.  (#346373, Thomas Klausner)

2006-12-17  Behdad Esfahbod  <behdad@gnome.org>

	* glib/gstring.c: Improve docs about string functions taking a
	length.  (#378727)

2006-12-17  Matthias Clasen  <mclasen@redhat.com>

	* glib/gconvert.c:
	* glib/gutf8.c (_g_charset_get_aliases): Put the G_GNUC_INTERNAL
	where gcc doesn't complain about it.

	* glib/ghash.c: Make ref_count an int to avoid compiler
	warnings.

	* configure.in: Use AC_LANG_SOURCE for the clock test.
	
	* glib/gthreadpool.h:
	* glib/gthreadpool.c (g_thread_pool_free): Don't use "wait"
	as parameter name.  (#379207, Christian Biere)

	* glib/gspawn.c: Refer to g_child_watch_add() in addition
	to waitpid().

	* glib/gstrfuncs.c (g_strndup, g_strnfill): Move docs
	inline, and improve wording.  (#372598, Behdad Esfahbod)

	* glib/gspawn.c: Add some pointers to the gdk_spawn_
	variants.  (#338134, Federico Mena Quintero)

	* configure.in: Make montonic clock test work again. Does
	AC_COMPILE_IFELSE not get confdefs ? Also, move the clock
	tests below the thread checks to fix #364663.

	* tests/run-markup-tests.sh: Don't use diff -u  (#380801,
	Marek Rouchal)

	* glib/gspawn.c: Fix the recent fdwalk()-related changes
	to not break mapping-test.  (#286838, Marco Barisione)

	* glib/gstring.c (g_string_chunk_new): Don't shadow size.
	(#386760, Kazuki IWAMOTO)

2006-12-16  Matthias Clasen  <mclasen@redhat.com>

	* glib/gstring.c: Move more documentation inline.

	* configure.in: Use AC_COMPILE_IFELSE for the monotonic
	clock test.  (#362918, Han-Wen Nienhuys, Jeremy Lainé)

	* glib/gstring.c: Move documentation inline. 

2006-12-15  Matthias Clasen  <mclasen@redhat.com>

	* glib/giochannel.h: Make ref_count a gint to avoid
	compiler warnings.  (#321977, Andrew Paprocki)

	* configure.in: On Solaris, set CFLAGS and LDFLAGS that
	work both with Sun cc and gcc.  (#315061, Lazlo Peter)

	* glib/gspawn.c: Undefine READ_OK to fix the build on
	old versions of Darwin.  (#327800)

	* glib/glib.symbols:
	* glib/gstring.[hc] (g_string_chunk_clear): Add a function
	for clearing a GStringChunk. (#364608, Matt Barnes)

	* glib/guniprop.c (interval_compare): Avoid a compiler
	warning.

	* glib/gspawn.c (do_exec): Call set_cloexec() with
	the right parameters.  (#386252, Guillaume Desmottes)

2006-12-15  Matthias Clasen  <mclasen@redhat.com>

	Fix #357585, Padraig O'Briain.
	
	* configure.in: Check for fdwalk.
	
	* glib/gspawn.c (do_exec): Use fdwalk() to close all
	file descriptors. 

	* glib/gspawn.c (fdwalk): Fallback implementation of
	fdwalk.

2006-12-14  Matthias Clasen  <mclasen@redhat.com>

	* glib/gconvert.c (open_converter): Don't use alloca
	and avoid allocating memory for small keys that are 
	already cached.  (#172406, Morten Welinder)

	* glib/gmain.c (g_child_watch_add_full): Improve the docs.
	(#345569, Tim-Philipp Müller)

	* glib/gkeyfile.c (g_key_file_add_group): If the group
	is already there, make it current.  (#385910, Joe Halliwell)

	* tests/keyfile-test.c: Add a test for duplicate groups/keys.

2006-12-13  Matthias Clasen  <mclasen@redhat.com>

	* m4macros/glib-gettext.m4: Require AC_CANONICAL_HOST in
	GLIB_WITH_NLS.  (#385132, Laszlo Peter)

2006-12-12  Matthias Clasen  <mclasen@redhat.com>

	* configure.in: Add a check for broken poll on Mac OS X.

	* glib/gmain.c: Use poll emulation on OS X.  (#302672, Toby Peterson,
	patch by Dave Vasilevsky)

2006-12-11  Matthias Clasen  <mclasen@redhat.com>

	* glib/gatomic.c: Don't use local numeric labels in
	inline assembler on AIX.  (#316434, Hans Rosenfeld)

	* glib/gunicode.h (g_utf8_next_char): Cast to const char *,
	not char *.  (#138153, Nikolai Weibull)

Wed Nov 22 16:09:13 2006  Tim Janik  <timj@gtk.org>

	* glib/gmacros.h: added G_GNUC_MAY_ALIAS, suggested by Mathias
	Hasselmann in bug #335341, fixes bug #335853.

2006-11-15  Matthias Clasen  <mclasen@redhat.com>

	* m4macros/glib-gettext.m4: Apply a patch from James 
	Henstridge for compatibility with automake 2.60 (#343825)

2006-11-14  Behdad Esfahbod  <behdad@gnome.org>

	* sanity_check: Replace bash-specific == with sh-understood =.
	Fixes bug #373864.

2006-11-05  Hans Breuer  <hans@breuer.org>

	* glib/makefile.msc.in : glib/ version not the gobject/ 
	one I accidentially commited. Fixes bug #371074.
	
2006-11-05  Tor Lillqvist  <tml@novell.com>

	* makefile.mingw
	* gmodule/makefile.mingw.in
	* glib/makefile.mingw.in
	* gobject/makefile.mingw.in
	* gthread/makefile.mingw.in
	* tests/makefile.mingw.in: Remove from CVS. Haven't been
	maintained or distributed for long.

2006-10-26  Pascal Terjan  <pterjan@linuxfr.org>

	* glib/libcharset/localcharset.c: Fix small leak on failed
	realloc in _g_locale_get_charset_aliases (#338582)

2006-10-16  Behdad Esfahbod  <behdad@gnome.org>

	* glib/gnulib/Makefile.am: Add $(GLIB_DEBUG_FLAGS).  (#362543,
	Peter Kjellerstedt)

2006-10-15  Sebastian Wilhelmi  <seppi@seppi.de>

	* tests/Makefile.am: Compile errorcheck-mutex-test with thread
	libraries explicitly. (#74748, Javier Villavicencio)

2006-10-08  Matthias Clasen  <mclasen@redhat.com>

	Add a way to obtain Unicode script information.  (#348348,
	Marco Barisione)

	* glib/glib.symbols:
	* glib/gunicode.h: Add GUnicodeScript enumeration and
	g_unichar_get_script. 
	
	* glib/guniprop.c: Implement g_unichar_get_script.

	* glib/gscripttable.h: Generated private header containing
	script tables.

	* glib/gen-script-table.pl: Script to generate gscripttable.h.

	* glib/Makefile.am: Update

2006-10-08  Matthias Clasen  <mclasen@redhat.com>

	* tests/run-markup-tests.sh: Small portability fix.  (#347944,
	Dan McMahill)

2006-10-07  Tor Lillqvist  <tml@novell.com>

	* glib/gwin32.c (get_package_directory_from_module)
	(g_win32_get_package_installation_directory): g_strdup the keys
	that we are passed before adding them to the hash tables, to guard
	against the caller freeing them. (#355955, Andreas Köhler)

2006-10-06  Matthias Clasen  <mclasen@redhat.com> 

	* glib/gtimer.c: Fix a typo.  (#359190)

2006-10-02  Behdad Esfahbod  <behdad@gnome.org>

	* glib/Makefile.am:
	* gobject/Makefile.am:
	Include pltcheck.sh in EXTRA_DIST, and remove redefinition of TESTS.
	(#358966)

2006-10-01  Matthias Clasen  <mclasen@redhat.com>

	* glib/gtimer.c (g_usleep): Use nsleep to implement
	g_usleep on AIX.  (#321974, Andrew Paprocki)

	* configure.in: Check for nsleep

	* glib/gmain.c: Fix typos in doc comments.  
	(#358421, Tom Tromey)

2006-09-30  Matthias Clasen  <mclasen@redhat.com>

	* glib/pltcheck.sh: A script to check PLT entries.
	* glib/Makefile.am (TESTS): Run pltcheck.sh

	* glib/*: Fix includes to correct some issues with
	PLT entries.  (#354522, Behdad Esfahbod)

2006-09-17  Hans Breuer  <hans@breuer.org>

	* glib/makefile.msc.in gobject/makefile.msc.in : better filtering
	of G_GNUC_* stuff when generating .def files. Now also works with
	newer (less tolerant) linkers, e.g. from vc2500e

2006-09-10  Matthias Clasen  <mclasen@redhat.com>

	* glib/gbacktrace.c: Assume string.h is available. 
	(#354523, Behdad Esfahbod)

	* configure.in: Bump version to 2.13.0

	* glib/glib.symbols:
	* glib/gmain.[hc]: Add functions to create approximate
	timeouts.  (#353942, Arjan van de Ven)

	* glib/gstdio.c (g_rename): Initialize save_errno.
	(#355206, Mike Edenfield)

2006-09-03  Matthias Clasen  <mclasen@redhat.com>

	* glib/gerror.c: Allocate GErrors using the slice allocator.
	(#354054, Matt Barnes)

2006-09-02  Matthias Clasen  <mclasen@redhat.com>

	* glib/gtimer.c: Forgotten HAVE_CLOCK_GETTIME.

2006-09-02  Tor Lillqvist  <tml@novell.com>

	* glib/gutils.c (g_get_any_init_do): Correct C99ism (mixed
	declarations and code) in Win32 ifdef branch. (#353903, Mike
	Edenfield)

2006-09-01  Abel Cheung  <abel@oaka.org>

	* configure.in: Added 'dz' 'hy' to ALL_LINGUAS.

2006-09-01  Matthias Clasen  <mclasen@redhat.com>

	* configure.in: Check for CLOCK_MONOTONIC.

	* glib/gtimer.c: Only use clock_gettime if we
	have a monotonic clock.

2006-08-31  Matthias Clasen  <mclasen@redhat.com>

	* configure.in: Add missing includes to a few test
	programs.  (#353580, Chris Wilson)

2006-08-30  Matthias Clasen  <mclasen@redhat.com>

	* glib/gmarkup.c (g_markup_vprintf_escaped): Don't call
	va_end on caller-provided va_args.  (#353584, Chris Wilson)

2006-08-29  Tor Lillqvist  <tml@novell.com>

	Remove support for Windows 9x/ME, as will be done also in Pango
	and GTK+. GTK+ hasn't worked on Win9x since 2.6 or 2.8 anyway, so
	it's pretty pointless to keep the Win9x code in here either. If
	somebody is interested, the code can always be found in older GLib
	versions, and in CVS.

	* glib/gdir.c
	* glib/gfileutils.c
	* glib/gspawn-win32-helper.c
	* glib/gspawn-win32.c
	* glib/gstdio.c
	* glib/gutils.c
	* glib/gwin32.c
	* glib/gwin32.h: Remove the G_WIN32_IS_NT_BASED() and
	G_WIN32_HAVE_WIDECHAR_API() tests and their false (Win9x)
	branches, and any variables or static functions used only by the
	Win9x branches.

	* glib/gwin32.c (g_win32_windows_version_init): Call g_error() if
	run on Win9x.

2006-08-27  Matthias Clasen  <mclasen@redhat.com>

	* configure.in: Fix pthread compiler flag detection.

	* glib/gtimer.c: Use Posix monotonic clocks instead of 
	gettimeofday when available.  (#336114, William Jon McCann)

2006-08-26  Matthias Clasen  <mclasen@redhat.com>

	* glib/gutils.h: 
	* glib/gscanner.c: Fix some typos.  (#351741, Kjartan Maraas)

2006-08-25  Matthias Clasen  <mclasen@redhat.com>

	* configure.in: Fix the pthread compiler flag detection.

	* glib/gunicode.h: 
	* glib/gutf8.c (_g_utf8_make_valid): Rename make_valid_utf8
	from gconvert.c, move it to gutf8.c, and export it privately.

	* glib/gconvert.c (g_filename_display_name): Adjust callers.

	* glib/gkeyfile.c: Use _g_utf8_make_valid() in a number of
	places to ensure error messages are valid UTF-8.  (#351853,
	Simon Budig)

2006-08-22  Matthias Clasen <mclasen@redhat.com>

	* Branch for 2.12