Sun Sep 19 23:52:35 2004 Matthias Clasen <maclas@gmx.de>
* glib/gmessages.c (mklevel_prefix):
* glib/gmessages.c (g_logv): Fix the types of some variables
to be GLogLevelFlags instead of guint. (#153042, Philippe Blain)
Thu Sep 16 18:15:32 2004 Manish Singh <yosh@gimp.org>
* glib/gstrfuncs.c (g_strncasecmp): Make it take a guint for number
of characters, instead of a gsize. Technically this is incorrect,
but this makes it match the prototype, and this is a deprecated
function anyway.
2004-09-15 Tor Lillqvist <tml@iki.fi>
* glib/gwin32.c (g_win32_error_message): Convert message to
UTF-8. Technically this breaks API, but the actual use cases in
gdk/win32 have assumed it is UTF-8 anyway. Fix
documentation. (#152618, Kazuki Iwamoto)
* glib/gwin32.h: Don't define ftruncate as a macro. Was never a
good idea, and it clashes with newest mingw headers, which have a
ftruncate implementation as an inline function. Thanks to Dominik R.
* glib/gwin32.c (g_win32_ftruncate): Simplify implementation, just
call _chsize() in the C library.
2004-09-09 Matthias Clasen <mclasen@redhat.com>
* glib/gmessages.c (g_return_if_fail_warning): Strip the
prefix "IA__" from function names, since that is what
GTK+ uses for the PLT-reduction aliases.
Thu Sep 9 13:52:26 2004 Owen Taylor <otaylor@redhat.com>
* glib/gmessages.c (g_return_if_fail_warning):
Include implementation of g_return_if_fail_internal().
Thu Sep 9 10:37:41 2004 Owen Taylor <otaylor@redhat.com>
* glib/gmessages.h (g_return_[val_]if_fail): Use
a helper function to reduce code size; omit FILE/LINE
when we have __PRETTY_FUNCTION__.
Thu Sep 9 00:10:40 2004 Matthias Clasen <maclas@gmx.de>
* glib/gstrfuncs.h:
* glib/gstrfuncs.c (g_strv_length): Add a function to
calculate the length of a NULL-terminated string
array. (#150455, Tim-Philipp Müller)
* tests/strfunc-test.c (main): Add a test for g_strv_length().
2004-09-08 Tor Lillqvist <tml@iki.fi>
* glib/gutils.c (guess_category_value): On Win32, as last resort
call g_win32_getlocale() to get the current thread locale. There
usually aren't any POSIXish LANG or LC_* environment variables
present on Windows machines.
* glib/glib.def: Add g_get_language_names.
2004-09-07 Matthias Clasen <mclasen@redhat.com>
* glib/gutils.h:
* glib/gutils.c (g_get_language_names): Add a function to
return a list of applicable locale names. (#95587,
Hidetoshi Tajima)
(guess_category_value, compute_locale_variants):
(explode_locale, unalias_lang, read_aliases): Helper
functions for g_get_language_names()
* tests/testglib.c (main): Show the results of
g_get_language_names()
Wed Sep 1 20:22:39 2004 Matthias Clasen <maclas@gmx.de>
* glib/gdate.h:
* glib/gdate.c (g_date_get_iso8601_week_of_year): Add
a function to calculate the ISO 8601 week number of
a date. (#92579, Niklas Lundell)
2004-09-01 Anders Carlsson <andersca@gnome.org>
* glib/goption.c: (g_option_context_free), (print_help),
(g_option_context_parse):
Handle option contexts without a main group.
* tests/option-test.c: (empty_test2), (main):
Add test case for that.
2004-08-30 Anders Carlsson <andersca@gnome.org>
* glib/goption.c: (g_option_context_parse):
Set prgname to <unknown> if argc and argv are NULL.
* tests/option-test.c: (empty_test1), (main):
Add test case for that.
Sun Aug 29 23:58:38 2004 Matthias Clasen <maclas@gmx.de>
* glib/ghash.c (g_hash_table_lookup): Point to
g_hash_table_lookup_extended() for differentiation between
not-found and value-is-NULL. (#150960, Morten Welinder)
Fri Aug 27 00:45:41 2004 Matthias Clasen <maclas@gmx.de>
* glib/goption.c (g_option_context_parse): Set the program name
from argv[0], noticed by Masatake YAMATO.
2004-08-25 Tor Lillqvist <tml@iki.fi>
* glib/gwin32.c (g_win32_get_windows_version): New
function. Returns the Windows version code like GetVersion(),
except that one can pretend to be running on Win9x by setting the
G_WIN32_PRETEND_WIN9X environment variable. This is mainly for
debugging purposed.
* glib/gwin32.h: Declare it. Define macros G_WIN32_WINDOWS_IS_NT_BASED
and G_WIN32_HAVE_WIDECHAR_API to test Windows features at run-time.
2004-08-25 Tor Lillqvist <tml@iki.fi>
Win32 equivalences of the XDG folders
* glib/gutils.c (get_special_folder): New function, calls
SHGetSpecialFolderLocation() to get path to places like the My
Documents folder.
(g_get_any_init): Use CSIDL_PROFILE as HOME if not
overridden by env vars.
(g_get_user_data_dir): Use CSIDL_PERSONAL.
(g_get_user_config_dir): Use CSIDL_APPDATA.
(g_get_user_cache_dir): Use CSIDL_INTERNET_CACHE. Debatable...
(g_get_system_data_dirs): Use CSIDL_COMMON_APPDATA and
CSIDL_COMMON_DOCUMENTS.
(g_get_system_config_dirs): Use CSIDL_COMMON_APPDATA.
* configure.in: Add -lole32 to G_LIBS_EXTRA for mingw.
* glib/glib.def: Add the new functions.
2004-08-21 Tor Lillqvist <tml@iki.fi>
* glib/giowin32.c (g_io_win32_finalize): Tell select_thread to
break out of its loop. Prevents a thread leak. (#147392, Peter
Zelezny)
2004-08-21 Tor Lillqvist <tml@iki.fi>
* glib/gunicollate.c (g_utf8_collate_key): Guard against bogus
return value from strxfrm(). For instance Microsoft's strxfrm()
returns INT_MAX on errors. (#141124)
2004-08-19 Tor Lillqvist <tml@iki.fi>
* glib/gunicollate.c (g_utf8_collate, g_utf8_collate_key): Correct
source and destination charset parameter order in g_convert()
call. (#150394, possibly also #141124)
2004-08-17 Matthias Clasen <mclasen@redhat.com>
* configure.in: Check for all four values of the
visibility attribute; gcc 2.96 seems to miss
"default". (#150379, Vincent Noel)
2004-08-16 Christian Rose <menthos@menthos.com>
* configure.in: Added "bs" to ALL_LINGUAS.
* po/bs.po: Added Bosnian translation by
Kenan Hadžiavdić <kenanh@frisurf.no>.
2004-08-10 Matthias Clasen <mclasen@redhat.com>
* glib/gmacros.h: Remove G_GNUC_INTERNAL from here.
* configure.in: Check whether the visibility attribute
works and define G_HAVE_GNUC_VISIBILITY and
G_GNUC_INTERNAL in glibconfig.h correspondingly.
2004-08-06 Hans Breuer <hans@breuer.org>
* glib/makefile.msc.in glib/glib.def : updated
* glib/gutils.c : avoid 'inconsitent dll linkage' by not
defining extern char** environ with msvc
Thu Aug 5 20:53:00 2004 Ray Strode <rstrode@redhat.com>
* glib/gutils.h (g_get_codeset): strdup result so caller
doesn't free internally managed memory.
2004-08-04 Tor Lillqvist <tml@iki.fi>
* config.h.win32.in: Update to match what configure produces. Add
the G_ATOMIC_*. Define G_ATOMIC_I486 when compiling with gcc. Move
HAVE_INT64_AND_I64 to where the configure script puts it. Add
HAVE_INTTYPES_H_WITH_UINTMAX. Define intmax_t as __int64 for MSVC.
2004-08-02 Matthias Clasen <mclasen@redhat.com>
* glib/gmacros.h: Add a G_GNUC_INTERNAL macro to mark function
declarations as internal and avoid PLT indirections for
them. (#145465, Arjan van de Ven)
* glib/gunicodeprivate.h:
* glib/gthreadinit.h:
* glib/gmessages.h:
* glib/gdebug.h:
* glib/gconvert.c: Use G_GNUC_INTERNAL for _g_charset_get_aliases(),
_g_debug_init(), _g_log_fallback_handler(), _g_mem_thread_init(),
_g_messages_thread_init(), _g_convert_thread_init(),
_g_rand_thread_init(), _g_main_thread_init(), _g_atomic_thread_init(),
_g_mem_thread_private_init(), _g_messages_thread_private_init(),
_g_utf8_normalize_wc() and _g_unichar_combining_class().
* glib/gatomic.c: Include gthreadinit.h here to see the declaration
for _g_atomic_thread_init().
Sat Jul 31 20:33:07 2004 Matthias Clasen <maclas@gmx.de>
* tests/shell-test.c: Include a test involving consecutive
backslashes followed by a non-escaped doublequote.
* glib/gshell.c (tokenize_command_line): Count consecutive
backslashes mod 2 to detect escaped doubleqotes. (#127306)
2004-07-30 Matthias Clasen <mclasen@redhat.com>
* glib/gconvert.c (g_unescape_uri_string): Don't validate
for UTF-8 here. (#148420, Robert Ögren)
* tests/uri-test.c (run_roundtrip_tests): Add tests for
roundtrip compatibility. Going from filename to uri and
back should always give you the same filename back.
2004-07-28 Matthias Clasen <mclasen@redhat.com>
* tests/markups/valid-{9,10,11}.gmarkup:
* tests/markups/fail-{37,38,39}.gmarkup: Tests for handling
of whitespace inside tags.
* glib/gmarkup.c (enum GMarkupParseState): Add
STATE_AFTER_ATTRIBUTE_NAME and STATE_AFTER_CLOSE_TAG_NAME.
(g_markup_parse_context_parse): Accept whitespace between
attribute names, '=' and attribute values and between
close tag name and '>'. (#148646, Hiroyuki Ikezoe)
2004-07-21 Matthias Clasen <mclasen@redhat.com>
Fix#132858, Sven Neumann, patch by James Henstridge:
* glib-gettextize.in: modify so that mkinstalldirs will
get installed into auxdir.
* Makefile.am (gettext_SCRIPTS): install mkinstalldirs.
2004-07-21 Matthias Clasen <mclasen@redhat.com>
Fix#147651, reported by Oliver Guntermann:
* glib/gprintfint.h (_g_vasprintf): Don't wrap vasprintf(),
_g_gnulib_vasprintf() in a macro, since they behave
differently wrt. to memory allocation.
* glib/gprintf.c (g_vasprintf): Instead, differentiate
here between the three cases: system vasprintf(),
_g_gnulib_vasprintf(), no vasprintf().
2004-07-09 Matthias Clasen <mclasen@redhat.com>
* glib/gdir.c (g_dir_open): Convert filename to UTF-8
before using it in the error message. (#146054, Federico
Mena Quintero)
Sun Jul 4 01:52:18 2004 Matthias Clasen <maclas@gmx.de>
* configure.in: Use a small test library instead of
libpthread.so for testing RTLD_GLOBAL brokenness. (#139567,
Julio M. Merino Vidal)
2004-07-02 Sebastian Wilhelmi <seppi@seppi.de>
* glib/gatomic.c: Rename __asm to __asm__ and __volatile to
__volatile__ to make the file consistent. Spotted by Benoit
Carpentier <gtkool_2kx@yahoo.fr>.
2004-07-01 John Ehresman <jpe@wingide.com>
* glib/giowin32.c (g_io_channel_win32_init, g_io_win32_free)
Initialize reset_send & reset_recv fields and don't close
sockets unless they were created. (#145153)
Fri Jun 11 22:56:46 2004 Matthias Clasen <maclas@gmx.de>
* glib/gscanner.c (g_scanner_get_token_ll): Ignore a
missing newline at EOF for single line comments.
(#83674, Sven Neumann)
2004-06-09 Federico Mena Quintero <federico@ximian.com>
* tests/uri-test.c (to_uri_tests): Fix expected results (ha ha)
for URIs that *should* have been invalid, or viceversa.
(from_uri_tests): Likewise.
2004-06-07 Federico Mena Quintero <federico@ximian.com>
Fixes#140532.
* glib/gconvert.c (is_asciialphanum): Renamed from
is_escalphanum(); ensures that this is an ASCII character.
(is_asciiescalpha): Renamed from is_escalpha().
(hostname_validate): Use the two functions above.
(g_filename_to_uri): Don't convert the filename to UTF-8.
(g_filename_from_uri): Don't convert the filename from UTF-8.
Sun Jun 6 15:23:00 2004 Pawan Chitrakar <pawan@nplinux.org>
* ne.po: Added "ne.po" Nepali translation
* configure.in: Added "ne"(Nepali) in ALL_LINGUAS
Fri Jun 4 19:26:47 2004 Manish Singh <yosh@gimp.org>
* glib/galloca.h: cpp #directives should always have the "#" in the
first column of the the line. Do that for "#pragma alloca". Fixes
bug #143744.
Wed Jun 2 00:57:16 2004 Matthias Clasen <maclas@gmx.de>
* glib/gtypes.h: Use higher precision for the mathematical
constants. (#141941, Morten Welinder)
2004-05-14 Tor Lillqvist <tml@iki.fi>
* glib/gnulib/vasnprintf.c (vasnprintf): Handle empty digit string
for precision correctly. (#142400)
For backward compatibility with the Trio implementation, make "ll"
format modifer work on Win32, too. Change into "I64" before
passing to the system printf. (#142433)
* tests/printf-test.c (main): Add tests for the above.
Sun May 9 02:04:14 2004 Matthias Clasen <maclas@gmx.de>
Merge from 2.4:
* glib/guniprop.c (g_utf8_casefold): Avoid an unnecessary
memleak. (#141998, Nikolai Weibull)
Wed May 5 23:35:44 2004 Matthias Clasen <maclas@gmx.de>
* glib/gconvert.c (g_filename_from_uri): Quote the file
scheme to mark it as untranslatable. String change.
(#133144, Danilo Segan)
Sun May 2 03:51:59 2004 Manish Singh <yosh@gimp.org>
* glib/gtypes.h: check for __pentium4__ when deciding whether to
use bswap for GUINT32_SWAP_LE_BE_IA32(). Fixes bug #141620.
2004-04-23 Matthias Clasen <mclasen@redhat.com>
* glib/libcharset/localcharset.c (_g_locale_get_charset_aliases):
Reinstate LIBCHARSET_ALIAS_DIR support which got lost at some
point. (#139134, Piotr Klaban)
2004-04-23 Matthias Clasen <mclasen@redhat.com>
* glib/gconvert.c (open_converter): Don't call g_strerror() here,
since it can lead to infinite recursion. (#139133, Piotr Klaban)
2004-04-22 Matthias Clasen <mclasen@redhat.com>
* glib/gstrfuncs.c (g_ascii_strtod): Fix problems when a
locale-specific decimal separator directly follows a
number. (#138424, Nickolay V. Shmyrev)
* tests/strtod-test.c (main): Add some more testcases.
2004-04-22 Matthias Clasen <mclasen@redhat.com>
* glib/gmain.c (g_main_context_query): Only set time_is_current to
FALSE if context->timeout is not zero. (#137795, Christian Krause)
2004-04-21 Matthias Clasen <mclasen@redhat.com>
* tests/printf-test.c (main): Comment out a nonessential testcase
which fails on HP-UX. (#136283, Jonas Jonsson)
2004-04-15 Matthias Clasen <mclasen@redhat.com>
* tests/patterntest.c (main): Add tests for the empty pattern.
* glib/gpattern.c (g_pattern_spec_new): Don't read and write out
of bounds when the pattern is empty. (#140032, Stanislav Brabec,
Stefan Fent)
2004-04-10 Tor Lillqvist <tml@iki.fi>
* glib/giowin32.c
* glib/gmain.c
* glib/gstrfuncs.c
* glib/gthread.c: Decorating variable definitions with
__declspec(dllexport) causes problems on Cygwin build, and isn't
really needed for a native Win32 build with mingw or MSVC, so
remove. (#138402, Roger Leigh)
* glib/libcharset/localcharset.c: Use Win32-specific code also on
Cygwin.
* tests/uri-test.c: Don't assume that local filenames are in UTF-8
on Cygwin, either. (#138412, Roger Leigh)
2004-04-03 Tor Lillqvist <tml@iki.fi>
* configure.in: Remove AC_CYGWIN, obsolete. Don't let pthreads be
found on Cygwin, they don't work. (#138401, Roger Leigh)
2004-03-21 Tor Lillqvist <tml@iki.fi>
* glib/gutils.c (g_path_get_dirname): Fix Win32 behaviour in some
cases where a drive letter is present. For 'a:' or 'a:foo', return
'a:.'. This is mostly just for consistency with the behaviour
without a drive letter. But very important is to for 'a:\foo' or
'a:\', return 'a:\', and not 'a:'. (Ditto for forward slashes
instead of backslashes.) (#137316)
* tests/dirname-test.c (main): More complete testing on
Win32. If a test fails, include expected and actual result in
error message.
Fri Mar 19 15:21:09 2004 Owen Taylor <otaylor@redhat.com>
* glib/gmain.c: Fix the accidental revert of the
fixes from #112222 that happened when the GChildWatch
code was added.
Fri Mar 19 11:07:06 2004 Owen Taylor <otaylor@redhat.com>
* tests/atomic-test.c (main): Make computation
of "biggest_pointer" vaguely more portable.
(#137498, Jonas Jonsson)
2004-03-16 Tor Lillqvist <tml@iki.fi>
* configure.in: Define HAVE_INT64_AND_I64 also in the mingw (gcc
on Win32) case, where the 64-bit type is called long long, but the
system printf/scanf format modifier for 64-bit integers is still I64.
Sun Mar 14 13:56:48 2004 Owen Taylor <otaylor@redhat.com>
* glib/gmessages.c (escape_string): Handle invalid
UTF-8. (#131218, patch from Matthias Clasen)
Sun Mar 14 13:23:36 2004 Owen Taylor <otaylor@redhat.com>
* glib/gspawn.c: Use fork1() not fork for
G_THREADS_IMPL_SOLARIS. (#136971, Sebastian Wilhelmi)
Sun Mar 14 12:58:30 2004 Owen Taylor <otaylor@redhat.com>
* glib/gmain.c: if _POLL_EMUL_H is defined, undefine
HAVE_POLL to prefer our own poll() emulation to the
lame OS/X one. (#136956, Manish Singh)
Sat Mar 13 23:30:53 2004 Owen Taylor <otaylor@redhat.com>
* glib/gmacros.h (G_STMT_START): Add __extension__
to G_STMT_START to quite gcc -pedantic. (#131899,
Olivier Biot)
Sat Mar 13 23:18:45 2004 Owen Taylor <otaylor@redhat.com>
* tests/env-test.c (main): Remove critical log handler;
we can't trigger g_return_if_fails() in our test suite
even silently, because the user could have compiled
with --disable-debug. #if 0 the tests for
g_setenv/g_unsetenv with a "foo=bar" variable name.
(#136709, reported by Frédéric L. W. Meunier)
Sat Mar 13 23:10:35 2004 Owen Taylor <otaylor@redhat.com>
Some warning fixes for the Sun compiler (Reported by
David L. Cooper II, #136401)
* glib/giochannel.c (g_io_channel_read): Return
G_IO_ERROR_NONE, not G_IO_STATUS_NORMAL, since hte
function returns a GIOError.
* glib/guniprop.c: Fix some guchar/gchar confusion
with special_case_table.
Fri Mar 12 15:21:22 2004 Manish Singh <yosh@gimp.org>
* glib/gatomic.c: Non-optimizing compile fails for two asm
statements on PowerPC. Use generic implementaton for those
cases. Spotted by Christof Petig <christof@petig-baender.de>,
fix by Sebastian Wilhelmi. Bug #137006 has a possible alternate
solution, but we'll be conservative for now.
2004-03-10 Tor Lillqvist <tml@iki.fi>
* glib/gspawn-win32.c
* glib/gspawn-win32-helper.c: Implement
G_SPAWN_FILE_AND_ARGV_ZERO. (#136792, Bruce Hochstetler)
* tests/spawn-test.c
* tests/spawn-test-win32-gui.c: Test it.
2004-03-09 Sebastian Wilhelmi <seppi@seppi.de>
* tests/child-test.c: Do not run the g_child_watch_* test
multi-threaded, as that doesn't work on linux prior 2.6. Fixes
#136539.
2003-03-07 Hans Breuer <hans@breuer.org>
* glib/gspawn-win32.c : (GPid)shortcut_spawn_retval which
doesn't improve the implementation at all, it just make it
compile with msvc ...
* glib/makefile.msc.in : build gatomic.c (now really:)
2004-03-06 Tor Lillqvist <tml@iki.fi>
* README.win32: Update.
* configure.in
* Makefile.am
* */Makefile.am: Drop the hand-written makefile.mingw(.in)
files. They haven't been maintained in a long time. As several
people have managed to build GLib for Win32 using the
autoconfiscation mechanism, there is no real reason to even try to
maintain the hand-written mingw makefiles.
2004-03-04 Sebastian Wilhelmi <seppi@seppi.de>
* glib/gmain.c: Use the atomic integer operations for GMainContext
and GMainLoop reference counting.
* glib/gmain.c: Hold the main_context_list lock, when iterating
the list. Only call g_main_context_wakeup for positive reference
count.
2004-03-03 Tor Lillqvist <tml@iki.fi>
* glibconfig.h.win32.in: Update to match a configure-generated
glibconfig.h. Specifically: Remove G_{MIN,MAX,MAXU}INT64
definitions (now in gtypes.h). Remove g_once and
g_static_mutex_get_mutex_impl_shortcut definitions (now in
gthread.h).
2004-03-03 Tor Lillqvist <tml@iki.fi>
* tests/child-test.c: Use a macro GPID_FORMAT for the format to
print GPid in (%p on Win32, %d on Unix). Maybe configure.in should
place that in glibconfig.h?
Print verbose error message if CreateProcess() fails.
Don't close the child handle until in the child watch callback.
Don't try to run /bin/true on Win32. Run ipconfig instead (just to
pick a program that should exist on all Window boxes).
Mon Mar 1 16:49:51 2004 Owen Taylor <otaylor@redhat.com>
* === Released 2.3.5 ===
* configure.in: Version 2.3.5, interface ago 0.
* NEWS: Some further updates.
Mon Mar 1 15:49:09 2004 Owen Taylor <otaylor@redhat.com>
* glib/gmain.c (check_for_child_exited): Don't
call waitpid() on a source that has already exited.
* glib/gmain.c (g_child_watch_check): Return TRUE
only if the child actually exited.
Mon Mar 1 15:39:57 2004 Owen Taylor <otaylor@redhat.com>
Patch from J. Ali Harlow
* configure.in: Use void * not HANDLE for GPid on win32.
* glib/gspawn.[ch] glib/gspawn-win32.[ch] glib/glib.def:
Add g_spawn_close_pid().
* glib/gspawn.[ch]: Make g_spawn functions take
GPid * instead if int * (GPid == int on unix, will
produce compile warnings until fixed on Win32.)
* tests/child-test.c: Make the test a little more
inappropriately verbose.
* glib/gmain.c: Add some documentation warnings about
not closing @pid while the source is active.
Mon Mar 1 20:32:06 2004 Tim Janik <timj@gtk.org>
* autogen.sh:
- exit with $? instead of 1 in case of failure
- exit with $? if ./configure failed
(that's so autogen.sh && make lines work)
- removed --enable-gtk-doc option
- added $AUTOGEN_CONFIGURE_ARGS
2004-03-01 Sebastian Wilhelmi <seppi@seppi.de>
* glib/gatomic.c: Define g_atomic_(int|pointer)_get only for
G_ATOMIC_OP_MEMORY_BARRIER_NEEDED. Spotted by Hans Breuer.
2003-02-29 Hans Breuer <hans@breuer.org>
* glib/gatomic.c : added win32 api based implementation
for G_PLATFORM_WIN32, !__GNUC__
* glb/glib.def : change to g_atomi_* no _fallback
2004-02-29 Sebastian Wilhelmi <seppi@seppi.de>
* configure.in, glib/gatomic.c, glib/gatomic.h: Moved the
assembler functions from gatomic.h to gatomic.c, which makes for
better maintainability. Also use gint instead of gint32 to be able
to use reference counting for ABI-fixed structures with
gint/guint.
* glib/gthread.h: Adapted accordingly.
* tests/atomic-test.c: Updated to test for G_MAXINT and G_MININT.
* glib/glib-overrides.txt, glib/glib-sections.txt,
glib/tmpl/atomic_operations.sgml: Updated according to code changes.
2003-02-28 Hans Breuer <hans@breuer.org>
* glib/glib.def : updated externals, including those
from bug #135386
* glib/makefile.msc.in : build gatomic.c
* glibconfig.h.win32.in : removed duplicate definition
of G_MAXSIZE, typedef void* GPid instead of int
* tests/child-test.c glib/gmain.c :
applied patch from J. Ali Harlow <ali@juiblex.co.uk> to fix
g_child_watch implementation on win32, bug #50296
2004-02-27 Sebastian Wilhelmi <seppi@seppi.de>
* glib/gasyncqueue.c, glib/gasyncqueue.h: Use
g_atomic_int_(inc|dec_and_test) for reference
counting. g_async_queue_unref_and_unlock and
g_async_queue_ref_locked is deprecated, but still there to
preserve ABI.
Fri Feb 27 01:44:41 2004 Matthias Clasen <maclas@gmx.de>
* glib/gdate.c: Translate from locale era to AD in
g_date_set_parse(). (#133400, Theppitak Karoonboonyanan)
2004-02-26 Sebastian Wilhelmi <seppi@seppi.de>
* glib/gatomic.h: empty G_ATOMIC_MEMORY_BARRIER() definition for
!G_THREADS_ENABLED
* glib/gthread.h: Define g_once and
g_static_mutex_get_mutex_impl_shortcut in terms of
G_MEMORY_BARRIER, if defined and if we can inline.
* configure.in: Remove double checked locking feature check.
2004-02-26 Sebastian Wilhelmi <seppi@seppi.de>
* configure.in, config.h.win32.in, glib/gthread.c: Removed the PID
niceness surrogate for thread priorities as requested by Tim. It
does more harm than good.
* glib/tmpl/threads.sgml: Updated to reflect removal of the PID
niceness surrogate for thread priorities.
2004-02-26 Sebastian Wilhelmi <seppi@seppi.de>
* glib/gatomic.c, glib/gatomic.h: New files to implement atomic
operations for different platforms. Fixes bug #63621.
* glib/glib.h: Include gatomic.h.
* configure.in: Add test for assembler routines for atomic operations.
* glib/Makefile.am: Add gatomic.c, gatomic.h.
* tests/Makefile.am, tests/atomic-test.c: Unit test for atomic
operations.
* glib/glib-overrides.txt, glib/glib-sections.txt,
glib/glib-docs.sgml, glib/tmpl/atomic_operations.sgml: Add docs
for atomic operations.
2003-02-26 Hans Breuer <hans@breuer.org>
* glib/glib.def : added g_hash_table_find and a
bunch of g_queue_*
* glib/gmain.c : make it compile on win32,
child_wake_up_pipe replaced by semaphore like it is done
for the other wake_up_pipe
* config.h.win32.in : added HAVE_INT64_AND_I64
* glibconfig.h.win32.in : G_MAXSIZE .. G_M??INT64,
and typedef for GPid
* test/env-test.c : don't let the local log function
collide in namespace with standard C
2004-02-25 Sebastian Wilhelmi <seppi@seppi.de>
* configure.in, glib/gthread.c: For the PID thread priorities
surrogate use gettid instead of getpid. This also works with nptl
(on linux-2.6), as well as with linuxthreads (on linux-2.4).
Sun Feb 22 02:28:43 2004 Matthias Clasen <maclas@gmx.de>
* configure.in: Set the gmodule suffix to 'a' for aix and
use the aix gmodule implementation. (#85930, Laurent Vivier)
Bug #85930, Laurent Vivier:
* gmodule-ar.c: Implementation of native module management for AIX.
* gmoduleconf.h.in:
* gmodule.c: Support gmodule-ar.c
Sun Feb 22 00:47:04 2004 Matthias Clasen <maclas@gmx.de>
* glib/gnode.c (g_node_copy_deep): New function to deep-copy a
GNode and its children. (#93464, James M. Cape)
Sat Feb 21 13:45:08 2004 Soeren Sandmann <sandmann@daimi.au.dk>
* glib/gqueue.[ch]: Extend GQueue API to match the GList
API. (#118439).
* tests/queue-test.c: Update test suite to cover the new API.
Fri Feb 20 02:39:03 2004 Tim Janik <timj@gtk.org>
* applied patch from David Schleef <ds@schleef.org> which implements
a G_MODULE_BIND_LOCAL flag to g_module_open() to disable global
symbol registration.
Thu Feb 19 18:40:01 2004 Tim Janik <timj@gtk.org>
* glib/gstring.[hc]: for G_CAN_INLINE environments, inline
g_string_append_c() for efficiency. (vaguely based on #118707).
Sat Feb 14 02:11:08 2004 Matthias Clasen <maclas@gmx.de>
* configure.in: Make the check for GNU make work when MAKE is a
full path. (#134102, Julio M. Merino Vidal)
Sat Feb 14 02:08:03 2004 Matthias Clasen <maclas@gmx.de>
* configure.in: Suppress xsltproc and xmlcatalog checks
if enable_man=no. (#134091, Julio M. Merino Vidal)
Sat Feb 14 01:21:34 2004 Matthias Clasen <maclas@gmx.de>
* glib/gmain.h:
* glib/gmain.c (g_child_watch_source_new):
* glib/gmain.c (g_child_watch_add):
* glib/gmain.c (g_child_watch_add_full): Wrap waitpid() as a
GSource. This is a partial implementation of the "Unix signal
source". (#50296, Jonathan R. Blandford)
* configure.in: Add the necessary configury to typedef GPid
appropriately.
* tests/Makefile.am:
* tests/child-test.c: Test child_watch sources.
Thu Feb 5 01:19:12 2004 Matthias Clasen <maclas@gmx.de>
* tests/file-test.c (test_mkstemp): Weaken an g_assert() to a
g_warning(), since apparently nothing in Posix forces mkstemp()
to reject templates without any X's. (#133397)
Thu Feb 5 00:56:28 2004 Matthias Clasen <maclas@gmx.de>
* glib/gcompletion.c (g_completion_complete_utf8): New function which
works like g_completion_complete(), but strips a trailing incomplete
UTF-8 character from the prefix. (#133313, Theppitak Karoonboonyanan)
* tests/completion-test.c (main): Some GCompletion tests.
* tests/Makefile.am: Add completion-test.
2004-01-30 Noah Levitt <nlevitt@columbia.edu>
* glib/gunicomp.h:
* glib/gunidecomp.c:
* glib/gen-unicode-tables.pl: Size compose_table correctly. (#123421,
Simon Josefsson)
* glib/gen-unicode-tables.pl: Get rid of some new warnings from perl
5.8.1.
2004-01-23 Tor Lillqvist <tml@iki.fi>
* glib/grand.c: Don't include <unistd.h> unless
HAVE_UNISTD_H. Include <process.h> on G_OS_WIN32.
(g_rand_new): Use getppid() only on G_OS_UNIX.
Thu Jan 22 00:41:34 2004 Matthias Clasen <maclas@gmx.de>
* glib/gutils.c (g_get_any_init): Don't treat the Win32
user name like a gecos field, and when extracting a real
name from a gecos field, replace '&' by the capitalized
user name (a traditional passwd feature).
(#118973, reported by Soeren Boll Overgaard)
Sun Jan 11 16:13:20 2004 Manish Singh <yosh@gimp.org>
* configure.in: Add G_MAXSIZE, define in terms of G_MAXUfoo.
* tests/type-test.c: Add test for G_MAXSIZE.
* glibconfig.h.win32.in: Cleanup, add some missing bits.
Sat Jan 10 00:11:12 2004 Manish Singh <yosh@gimp.org>
* glib/gutils.h (g_bit_nth_lsf,g_bit_nth_msf): 64-bit cleanliness
fixes.
* docs/reference/glib/tmpl/misc_utils.sgml: update to reflect the
above take gulongs now. My docs suck, someone should revisit it.
Fri Dec 19 11:49:21 2003 George Lebl <jirka@5z.com>
* glib/grand.c
glib/grand.h (g_rand_new) (g_rand_new_with_seed)
(g_rand_new_with_seed_array) (g_rand_set_seed_array): Add
the init_by_array functionality from the reference implementation
of the mersenne twister (mt19937ar.c) and change the naming
to fit with the rest of the grand API. New functions are
g_rand_new_with_seed_array, g_rand_set_seed_array. This is only
reliable/tested for the 2.2 version of the seeding as that's what
the reference implementation uses. Also modify g_rand_new to
get 4 longs from /dev/urandom since that will always be available
anyway and we get more entropy and if /dev/urandom is unavailable
use also 4 longs for seeding using secs, usecs, getpid and getppid.
For version 2.0 use only a simple seed again but be more careful
about seeding with secs/usecs in this case.
* glib/grand.c
glib/grand.h (g_rand_copy): Add g_rand_copy function to copy the
current state of the random number generator.
* glib/grand.c (g_rand_new): Add testing for EINTR when reading
from /dev/urandom
* tests/rand-test.c: add testing of the array seeding stuff against
the reference implementation, plus add statistical sanity check
to see that the values outputted are truly kind of random. And
check that g_rand_copy truly copies the state by checking a few
terms.
2003-12-30 Murray Cumming <murrayc@usa.net>
* gobject/glib-mkenums.in: Added a lowercase_name option, to be used
next to the enum declaration, where the flag option is already used,
when it is not possible to guess where to put the underscores in the
_get_type() function name, for instance for GNOMEVFSURIHide.
Fri Dec 26 02:03:58 2003 Matthias Clasen <maclas@gmx.de>
* glib/garray.[hc] (g_ptr_array_foreach): New function to
call a function for each element of a GPtrArray. (#114790)
* tests/array-test.c (main): Add a test for g_ptr_array_foreach().
Sun Dec 21 22:57:58 2003 Matthias Clasen <maclas@gmx.de>
* m4macros/glib-gettext.m4: Quote macro names to support
reading the file multiple times. (#125537)
Sun Dec 21 22:42:42 2003 Matthias Clasen <maclas@gmx.de>
* glib/gmem.c (g_mem_chunk_destroy): Fix the locking of the
mem_chunks list. (#127096, Balazs Scheidler)
2003-12-13 Hans Breuer <hans@breuer.org>
* glib/gconvert.c : get_filename_charset() needs to
return false for filenames not encoded in utf-8,
which is always true on win32
* glibconfig.h.win32.in : (u)int64 modifier isn't the
gcc 'll' but always the msvcrt one 'I64'
* glib/glib.def : updated
Thu Dec 11 10:31:21 2003 Manish Singh <yosh@gimp.org>
* glib/gmacros.h: change #elif with no expression to #else in
G_STRFUNC definition. Thanks to Damien Carbery, fixes#129101.
Tue Dec 2 02:29:41 2003 Matthias Clasen <maclas@gmx.de>
Fix for #103710, Mark Jones:
* glib/gtypes.h (G_MAXINT64): Define G_{MIN,MAX,MAXU}INT{8,16,32,64}.
* configure.in: Don't put G_{MIN,MAX,MAXU}INT64 in glibconfig.h.
Thu Nov 27 17:04:08 2003 Tim Janik <timj@gtk.org>
* glib/gstrfuncs.c (g_strconcat): handle NULL arguments
gracefully.
* glib/gmacros.h: defined G_STRFUNC, which (pretty) prints the
current function (since G_STRLOC and G_GNUC_*FUNCTION became
unusable with gcc-3.0).
Wed Nov 26 16:45:16 2003 Roozbeh Pournader <roozbeh@sharif.edu>
* glib/gstrfuncs.c: Fixed a bad pointer comparison in
g_ascii_strtod that came up in fa_IR locale (#126640, Behdad
Esfahbod).
* tests/strtod-test.c: Fixed the tests to catch the above.
Sat Nov 22 14:16:51.15 2003 Andrew Lanoix <alanoix@umich.edu>
* glib/giowin32.c: Bind inter-thread comminication
sockets to INADDR_LOOPBACK instead of INADDR_ANY.
Sat Nov 15 23:00:57 2003 Matthias Clasen <maclas@gmx.de>
* glib/guniprop.c (g_utf8_casefold): Add a NULL check
to be consistent with the other g_utf8_ functions. (#121618,
Tim-Philipp Müller)
2003-11-15 Tor Lillqvist <tml@iki.fi>
* tests/makefile.msc.in: Fix for MSVC build: Skip strtod-test, use
correct glib libraries, with 2.0 in the names. (#126906, John
Ehresman)
Sat Nov 15 00:46:14 2003 Matthias Clasen <maclas@gmx.de>
* configure.in: Don't blindly set glib_cv_long_long_format to
"ll" when using the included printf. As long as the native
printf supports 64bit printing, use the native format.
(#119525, Tor Lillquist)
2003-11-07 Mark McLoughlin <mark@skynet.ie>
* glib/gconvert.c: (get_filename_charset): re-work to
retain a copy of the cached charset rather than the
actual return value from g_get_charset (which may
change). Also, re-initialize the cache if it does
change. See bug #126454.
Thu Nov 6 00:04:46 2003 Matthias Clasen <maclas@gmx.de>
* glib/gconvert.c (get_filename_charset): Replacement for
have_broken_filenames() which consults the environment variable
G_FILENAME_ENCODINGS in addition to G_BROKEN_FILENAMES.
* glib/gconvert.c (g_filename_from_utf8):
* glib/gconvert.c (g_filename_to_utf8):
* glib/gconvert.c (_g_convert_thread_init): Use
get_filename_charset() instead of have_broken_filenames().
Wed Nov 5 22:05:19 2003 Matthias Clasen <maclas@gmx.de>
* glib/gi18n-lib.h:
* glib/gi18n.h: New headers defining common gettext-support
macros.
* glib/Makefile.am (glibsubinclude_HEADERS): Add gi18n.h
and gi18n-lib.h.
* glib/gstrfuncs.h:
* glib/gstrfuncs.c (g_strip_context): Auxiliary function for
the implementation of Q_().
2003-11-05 Morten Welinder <terra@gnome.org>
* glib/gstring.c (g_string_insert_len): Handle the case where the
to-be-inserted string is a substring of the target string.
(g_string_assign): Handle "s = s;".
(#114260, self.)
Sun Nov 2 01:47:31 2003 Matthias Clasen <maclas@gmx.de>
Fix 64bit printing for MSVC builds (#119292, Hans Breuer):
* configure.in (HAVE_INT64_AND_I64): Define for MSVC to
include support for printing __int64 with format %I64 in
the gnulib printf wrappers.
* glib/gnulib/printf-args.h (enum arg_type): Add TYPE_INT64
and TYPE_UINT64.
* glib/gnulib/printf-args.h (struct argument): Add a_int64 and
a_uint64 members.
* glib/gnulib/printf-args.c (printf_fetchargs): Support
TYPE_INT64 and TYPE_UINT64.
* glib/gnulib/printf-parse.c (printf_parse): Parse I64 format
modifier and map formats to TYPE_INT64.
* glib/gnulib/vasnprintf.c (vasnprintf): Print TYPE_INT64 with
format modifier I64.
* glib/gnulib/README: Document the __int64 support.
Sat Nov 1 08:45:38 2003 Owen Taylor <otaylor@redhat.com>
* glib/gmain.c (g_main_context_iterate): Set the
return value from the result of g_main_context_check()
(after we poll) rather than g_main_context_prepare.
(#121675, Padraig O'Briain)
Fri Oct 31 00:13:53 2003 Matthias Clasen <maclas@gmx.de>
* configure.in: Remove the semicolon from the definition of
g_once(), so that GPOINTER_TO_INT (g_once (...)) works.
Tue Oct 28 23:38:30 2003 Matthias Clasen <maclas@gmx.de>
* tests/printf-test.c: Change the %e tests to not check for
actual string equality, but rather equality under g_ascii_strtod(),
since the number of leading digits in the exponent seems to
be not exactly prescribed by SUS.
2003-10-24 Tor Lillqvist <tml@iki.fi>
* configure.in: Force shared library (DLL) only on Windows.
(I don't think that is controversial?) Remove unnecessary
AC_LIBTOOL_WIN32_DLL. Don't use -D_REENTRANT on
Win32, it is not used by mingw or MSVC headers.
* config.h.win32.in
* glibconfig.h.win32.in: Match what configure produces.
* glib/gconvert.c
* glib/gutils.c: Mark a couple of functions and variables that
aren't public as static.
* glib/gnulib/g-gnulib.h: Undef HAVE_SNPRINTF before (re)defining
it potentially differently, to silence compiler.
* glib/glib.def: Add some missing entries.
* tests/gobject/Makefile.am (LDADD): Reorder, put libgobject after
libtestgobject.
* tests/gobject/ifaceproperties.c (main): NULL-terminate arg list
to g_object_set() and _get().