2003-01-04 Tor Lillqvist <tml@iki.fi>
* glib/giowin32.c (g_io_win32_fd_get_flags_internal): Don't claim
broken pipes are unreadable. (Well, they are, but read() handles
it, and treats it like EOF.)
Thu Jan 2 16:19:15 2003 Manish Singh <yosh@gimp.org>
* configure.in: use AC_COMPILE_IFELSE instead of AC_TRY_COMPILE for
tests for inline keywords. Fixes#101976.
2003-01-02 Tor Lillqvist <tml@iki.fi>
* glib/gwin32.h: Correct the comment telling what headers have
the declarations of some POSIXish functions.
* glib/giowin32.c (g_io_win32_fd_get_flags_internal): Fix braino:
The checks for readability/writeability were backwards.
2003-01-01 Tor Lillqvist <tml@iki.fi>
* glib/gmessages.c (ensure_stdout_valid, ensure_stderr_valid):
Check the C stdout and stderr streams for validity, instead of
what GetStdHandle() returns.
2003-01-01 Tor Lillqvist <tml@iki.fi>
* glib/gmessages.c (ensure_stderr_valid, ensure_stdout_valid): Move the
alloc_console_called static flag inside these two functions.
2003-01-01 Tor Lillqvist <tml@iki.fi>
* glib/gmessages.c (ensure_stderr_valid): New function, parallel
to ensure_stdout_valid(). #defined as empty on Unix.
(mklevel_prefix): Do use either stderr or stdout on Windows,
too. Otherwise g_warning() messages (that are just warnings, by
definition) will get mixed with proper stdout output. Noticed in
GIMP's gimpconfig-dump.
(strdup_convert, mklevel_prefix, g_printerr): Call
ensure_stderr_valid() before trying to use stderr.
(g_logv): [Win32] Convert message to current codepage before
display with MessageBox().
Fri Dec 20 10:45:29 2002 Owen Taylor <otaylor@redhat.com>
* === Released 2.2.0 ===
* INSTALL.in: --enable-included-printf, not --enable-trio.
(Matthias Clasen)
Fri Dec 20 09:52:15 2002 Owen Taylor <otaylor@redhat.com>
* === Released 2.2.0 ===
* INSTALL.in: Document --enable-trio, --disable-mempools,
--enable-debug. Include docs on cross compilation.
* NEWS: Update.
* configure.in: Version 2.2.0, interface age 0.
Wed Dec 18 16:19:08 2002 Manish Singh <yosh@gimp.org>
* glib/gtypes.h: new endian asm for ia64 and x86_64, general
reorg and clean up. New implementation of GUINT16_SWAP_LE_BE_CONSTANT()
that should optimize better. (#101318)
2002-12-17 Tor Lillqvist <tml@iki.fi>
Improvement based on suggestion by Thorsten Maerz:
* glib/giowin32.c (struct _GIOWin32Channel): Don't need thread_handle.
(create_thread): We can close thread handle right away, it isn't
used for anything.
(read_thread, select_thread): Thus, don't close it here.
Fix#57690, partial fix for #57689:
* glib/giowin32.c (g_io_win32_set_flags): Don't set the GError,
instead call g_warning().
(g_io_win32_fd_get_flags_internal): New function, sets the
is_readable, is_writeable and is_seekable flags based on the
actual access modes of the underlying Win32 HANDLE, by trying
Win32 ReadFile() and WriteFile() of zero bytes, and
PeekNamedPipe(). Should work for disk files and pipes. For devices
(consoles) unfortunately not.
(g_io_win32_fd_get_flags): Don't set the
G_IO_FLAG_IS_{READ,WRITE}ABLE flags, g_io_channel_get_flags()
already does. Call g_io_win32_fd_get_flags_internal() to set the
is_* flags.
(g_io_win32_msg_get_flags, g_io_win32_sock_get_flags): Splice the
generic g_io_win32_get_flags() into these specific functions, as
they need to do different things. Not implemented yet, though.
(g_io_channel_win32_new_fd_internal): New function, to avoid
duplicate fstat() calls. Most code from g_io_channel_win32_new_fd()
moved here. Call g_io_win32_fd_get_flags_internal() to set the
is_* flags.
(g_io_channel_win32_new_fd, g_io_channel_unix_new): Call
g_io_channel_win32_new_fd_internal().
(g_io_win32_no_seek): Remove. Don't set is_seekable for those
channel types.
Mon Dec 16 14:58:33 2002 Owen Taylor <otaylor@redhat.com>
* configure.in: Add a hack to mostly deal with
problems in support of -pthread and -lpthread;
pass -lpthread (for linux) or -Wc,-pthread (for
other platforms) to libtool when linking libgthread.
(#100697)
Sun Dec 15 19:22:58 2002 Owen Taylor <otaylor@redhat.com>
* m4macros/glib-gettext.m4: Restore a missing AC_SUBST()
for DATADIRNAME. (Found by Kjartan Maraas)
Sat Dec 14 21:24:04 2002 Owen Taylor <otaylor@redhat.com>
* glib/gutils.c (g_get_any_init): HP-UX 10 xshares the
same non-posix getpwuid_r signature as AIX.
(#100756, Kai Poitschke)
Sat Dec 14 21:10:57 2002 Owen Taylor <otaylor@redhat.com>
* glib/gthread.h: Mark the contents of the strucures
in this file /*< private >*/
* glib/gthread.[ch]: Rename the 'write' field of the
structure to 'have_writer' to avoid any possible
conflict with system headers. (#90549, Morten Welinder)
Sat Dec 14 20:11:41 2002 Owen Taylor <otaylor@redhat.com>
* glib/libcharset/{localcharset.[ch] libcharset-glib.patch}
glib/gutf8.c: Break _g_locale_charset() into two pieces
- a fast "raw" piece, and a slow "unalias pieces".
Always call the "raw" piece, and call the unalias bit
if it changes. Use a per-thread cache. (#79529)
* configure.in: Set TRIO_LIBS when building with trio.
* glib-2.0.pc.in (Libs): Add @TRIO_LIBS@.
* glib/trio/Makefile.am (libtrio_la_LIBADD): Use @TRIO_LIBS@.
Thu Dec 12 23:08:29 2002 Owen Taylor <otaylor@redhat.com>
Fixes from Johannes Stezenbach
* configure.in: When adding extra libraries to $LIBS for
tests, always put them at the front, since that's how
they'll be used in the actual Makefiles.
* configure.in: Add a couple of missing ','s in AC_LINK_IFELSE()
* m4macros/glib-gettext.m4: Remove a stray setting of $LIBS.
Thu Dec 12 20:46:26 2002 Owen Taylor <otaylor@redhat.com>
* configure.in: Allow not setting glib_cv_long_long_format
when cross-compiling since we assume other things that
will cause us to pull in Trio anyways.
* configure.in: long_long_format is always ll for trio.
* configure.in: Error out if --disable-trio is specified
but the C library doesn't have the necessary features.
Thu Dec 12 20:46:26 2002 Owen Taylor <otaylor@redhat.com>
* configure.in: long_long_format is always ll for trio.
* configure.in: Error out if --disable-trio is specified
but the C library doesn't have the necessary features.
* tests/string-test.c: Add a test for positional parameters in
g_snprintf().
* glib-genmarshal.c, gobject-query.c: Use g_printf() instead of
system printf. (#99319)
Thu Dec 12 14:58:55 2002 Manish Singh <yosh@gimp.org>
* configure.in: pull in trio if host printf doesn't have a known
way of printing 64-bit ints.
* glib/gmacros.h: remove extra whitespace at the end
* glib/gscanner.c (g_scanner_unexp_token): use G_GUINT64_FORMAT
instead of hardcoding "%llu"
* tests/testglib.c: remove obsolete conditionals using G_HAVE_GINT64,
we always have it now.
* tests/type-test.c: same as above, and for G_G[U]INT64_FORMAT as
well.
Thu Dec 12 13:52:58 2002 Owen Taylor <otaylor@redhat.com>
* m4macros/glib-gettext.m4: AC_PREREQ(2.53) here; convinces
Debian's wrappers to use the right autoconf for atk, etc.
(Reported by Jody Goldberg)
2002-12-11 Tor Lillqvist <tml@iki.fi>
* glib/gtimer.c (g_timer_elapsed): Fix off-by-one error. (#100853)
* glib/gfileutils.c (g_file_test): Bypass extra test for root on
Win32.
* glib/glib.def: Add g_{get,set}_application_name.
Wed Dec 11 17:00:20 2002 Owen Taylor <otaylor@redhat.com>
* acglib.m4 (ac_compile): Add GLIB_ASSERT_SET() as
a helper for adding "must be set when cross-compiling"
errors.
* configure.in: For all cached variables without defaults,
error out if they aren't set.
Wed Dec 11 15:52:01 2002 Owen Taylor <otaylor@redhat.com>
* configure.in: Also assume AC_LINK_IFELSE() is
OK when cross-compiling for the libs checks, and for
the sched_get_priority_min() check.
* configure.in: Add cached value glib_cv_use_pid_surrogate.
Wed Dec 11 15:10:25 2002 Owen Taylor <otaylor@redhat.com>
* configure.in: Factor out repeated thread test into
a m4_define(); when cross-compiling, assume that
AC_LINK_IFELSE() is good enough for thinking that
-pthread[s] is OK. (More of #58786)
* m4macros/glib-gettext.m4: Fix typo. (Manish Singh)
Wed Dec 11 14:28:50 2002 Owen Taylor <otaylor@redhat.com>
* configure.in: Version 2.1.4, interface age 1.
* m4macros/glib-gettext.m4: Major rewrite; remove leftovers
from building intl/, prefer libintl if both libc and libintl
have dgettext and libintl also has bind_textdomain_codeset().
(#70627)
* configure.in acinclude.m4: Use an include to avoid having
to duplicate the gettext macros between glib-gettext.m4
and acinclude.m4.
* m4macros/glib-gettext.m4: Do some tricks so that configure.in
can use macros under hidden names, but aclocal will still
find them when installed.
* m4macros/glib-gettext.m4: Add AM_GLIB_DEFINE_LOCALEDIR
to encapsulate install location of catalog files.
* m4macros/glib-gettext.m4 (AM_GLIB_DEFINE_LOCALEDIR):
Fix bug where if --prefix wasn't set on the configure line,
GLib would look for translations in NONE/share/locale.
2002-12-10 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
* glib/grand.c (g_rand_int_range): Improve generation of
pseudo-random integers. (#99720, Morten Welinder <terra@diku.dk>)
* README.in, docs/reference/glib/running.sgml,
docs/reference/glib/tmpl/random_numbers.sgml,
docs/reference/glib/changes.sgml: Added notes about the new
algorithm.
2CVS: ----------------------------------------------------------------------
2002-12-09 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
* configure.in: use 0 instead of $defattr, as it isn't defined
anymore on platforms using -pthread and linux, where this is used,
only uses 0 anyway and not "pthread_attr_default".
Sun Dec 8 23:36:12 2002 Owen Taylor <otaylor@redhat.com>
* glib/gfileutils.c (g_file_test): Guard against
the POSIX allowed behavior where access (file, X_OK)
succeeds for uid==0 when no executable bits are set.
* glib/gfileutils.c (g_file_test): Add doc notes
about the possibility of race conditions, and the
fact that EXISTS and IS_EXECUTABLE give results
for the real uid not the effective user ID.
(#81854, Morten Welinder.)
Fri Dec 6 14:34:42 2002 Owen Taylor <otaylor@redhat.com>
Avoid literal UTF-8. (Allow it to build with
IRIX cc, #72757, Tomas Ogren)
* tests/patterntest.c (main): Convert literal
iso-8859-1 high bit characters in tests to
string escapes.
* glib/gunichartable.h glib/gen-unicode-tables.pl:
Use hex \xMN escapes rather than literal UTF-8
for casefold tables.
* configure.in: AC_PREREQ(2.53). needed for recent
GLIB_SIZEOF() changes.
Fri Dec 6 12:31:30 2002 Owen Taylor <otaylor@redhat.com>
* configure.in: chmod 0755 scripts in AC_OUTPUT(), since
install -c won't necessarily do that. (#74376, Martin
Gansser, Joshua Weage)
Thu Dec 5 16:05:55 2002 Owen Taylor <otaylor@redhat.com>
* configure.in: Use AC_LINK_IFELSE(), not AC_TRY_RUN()
for va_copy(), __va_copy() checks.
* configure.in: When there is a reasonable default,
provide that in the 3rd argument of AC_TRY_RUN(),
instead of just leaving the 3rd argument empty.
* glib/tmpl/strings.sgml:
* glib/tmpl/scanner.sgml:
* glib/tmpl/main.sgml:
* glib/tmpl/macros_misc.sgml:
* glib/tmpl/hash_tables.sgml: Add Since and Deprecation info
for symbols documented in the templates.
* glib/gstrfuncs.c (g_strncasecmp): Break long deprecation
info into two paragraphs.
Thu Dec 5 15:43:46 2002 Owen Taylor <otaylor@redhat.com>
* configure.in: Fix multiple problems with the programs
in the argument of AC_TRY_RUN() having preprocessor
defines not in the first column.
Thu Dec 5 15:24:14 2002 Owen Taylor <otaylor@redhat.com>
Start of fixes for cross-compilation. Based on
patches from Dimi Shahbaz, Dan Kegel, Johannes Stenzenbach,
Amy Lin. (#58786)
* configure.in: Don't run the Digital-Unix 4 -std1 check
when cross_compiling.
* configure.in: Use AC_TRY_COMPILE() rather than
AC_TRY_RUN() for inline checks. (Daniel Egger)
* configure.in: use AC_CHECK_SIZEOF rather than
GLIB_SIZEOF for size_t. Remove unused checks for
size of ptrdiff_t/intmax_t.
* acglib.m4: Resync GLIB_SIZEOF of to the current
AC_CHECK_SIZEOF, which handles cross-compilation.
* acglib.m4: Remove no longer needed GLIB_SYSDEFS(),
add GLIB_CHECK_VALUE() as a wrapper around the
amazing _AC_COMPUTE_INT() autoconf 2.5x internal.
* configure.in: Redo the POLL* value checks in a
cross-compilation friendly way.
Thu Dec 5 15:28:37 2002 Owen Taylor <otaylor@redhat.com>
* glib/gtimer.c: Include glibconfig.h early so
that we include <windows.h> when needed.
* glib/gstrfuncs.c: Fix typo.
Tue Dec 3 21:10:28 2002 Owen Taylor <otaylor@redhat.com>
* configure.in: Add 3rd argument to remaining AC_DEFINES(),
so we can get rid of acconfig.h. (#76334, Daniel Egger)
* acconfig.h: Removed.
Tue Dec 3 01:05:00 2002 James M. Cape <jcape@ignore-your.tv>
* glib/gunicollate.c (g_utf8_collate, g_utf8_collate_key):
Check for NULL before doing anything.
Mon Dec 2 16:34:13 2002 Owen Taylor <otaylor@redhat.com>
* === Released 2.1.3 ===
* NEWS: Updated.
[ Unmerged change from stable from May 16 ]
* autogen.sh: Remove check for GNU gettext, since it
was causing problems for Solaris CVS builds.
(#81885, Hidetoshi Tajima.)
* glib/gutils.c:
* glib/gtree.c:
* glib/gstring.c:
* glib/gstrfuncs.c:
* glib/giochannel.c: Move some docs inline, and add deprecation
information. To see the list of affected functions, grep for
"Deprecated:".
* glib/tmpl/strings.sgml:
* glib/tmpl/string_utils.sgml:
* glib/tmpl/misc_utils.sgml: Move some docs inline.
* configure.in: Fix the definitions around printf: either we use
system printf in which case HAVE_VASPRINTF, HAVE_C99_VSNPRINTF and
HAVE_UNIX98_PRINTF have already been determined by earlier tests,
or we use the included printf, in which case we know that these
three can be defined as 1. (#99826)
* glib/gmessages.h: Use G_LIKELY without surrounding parentheses
in g_assert() and g_return_[val]_if_fail() so that we always trigger
the gcc warning about "assignment used as truth value".
* glib/gmacros.h: Always put parentheses in G_LIKELY and G_UNLIKELY.
2002-11-26 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
* glib/grand.c, gthread/gthread-impl.c, tests/rand-test.c:
Improved the seeding algorithm. Old behaviour can be achived by
setting envvar G_RANDOM_VERSION to "2.0". (#99262)
* docs/reference/glib/glib-docs.sgml,
docs/reference/glib/Makefile.am: Renamed
docs/reference/glib/changes-2.0.sgml to
docs/reference/glib/changes.sgml and added section for changes
from 2.0 to 2.2 (Also corrected 1.0 to 1.2).
* README.in, docs/reference/glib/running.sgml,
docs/reference/glib/tmpl/random_numbers.sgml,
docs/reference/glib/changes.sgml: Added notes about the new
seeding algorithm.
2002-11-26 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
* configure.in: Make CPPFLAGS, not CFLAGS, include
G_THREAD_CFLAGS. CFLAGS is used while linking too and thus GLib
programs would link to the threads library on some platforms. Also
fixed a bug manifesting through this change.
* glib/gmessages.h (g_assert):
(g_return_if_fail):
(g_return_val_if_fail): Remove the (no longer effective) empty
if-branch.
* glib/gmacros.h: Change the definition of G_LIKELY, so that
g_return_if_fail() and friends still trigger a gcc warning if
the expr is an assignment.
Fri Nov 22 09:39:09 2002 Owen Taylor <otaylor@redhat.com>
* glib/gmacros.h: Remove broken G_HIDDEN_SYMBOL
definition which wasn't supposed to be committed
at all.
Thu Nov 21 16:19:21 2002 Owen Taylor <otaylor@redhat.com>
* glib/ghash.c: Patch from Morten Welinder to
make ghash.c properly obey DISABLE_MEM_POOLS. (#96600)
2002-11-21 Tor Lillqvist <tml@iki.fi>
* {glib,gmodule,gobject,gthread}/makefile.{mingw,msc}.in:
Hardcode 2.0 in the names, as that is what Makefile.am does.
2002-11-21 Tor Lillqvist <tml@iki.fi>
* gmodule/gmodule.rc.in
* gobject/gobject.rc.in
* gthread/gthread.rc.in: Hardcode 2.0 in the names, as that is
what the Makefile.am does.
2002-11-21 Tor Lillqvist <tml@iki.fi>
* config.h.win32.in: Update to match what is currently produced by
autotools.
* configure.in: Remove superfluous spaces on two shell variable
assignment lines. Don't define HAVE_GOOD_PRINTF as 0 if we don't
have a good printf, it is tested with #ifdef.
* glib/glib.def: Add new functions.
* glib/Makefile.am: If !HAVE_GOOD_PRINTF, add libtio.la to LIBADD
and DEPENDENCIES.
* glib/glib.rc.in: Hardcode 2.0 in the names, as that is what the
Makefile.am does.
positional parameters: (#79488)
* glib/gstrfuncs.c:
* glib/gspawn-win32.c:
* glib/gscanner.c:
* glib/gconvert.c:
* glib/gbacktrace.c: Use _g_printf wrappers.
* glib/gutils.c (g_vsnprintf): Simplify, since we can assume C99
snprintf semantics now.
* glib/gmessages.c (printf_string_upper_bound): No longer needed,
since we can assume C99 snprintf semantics now.
(g_logv): Simplify.
* acinclude.m4 (AC_FUNC_PRINTF_UNIX98): New macro to check wether
printf supports SUS positional parameters.
* configure.in: New option --enable-included-printf to force
compilation of trio; otherwise trio is compiled if the system
printf misses either C99 snprintf semantics of SUS positional
parameters.
* glib/Makefile.am (SUBDIRS): Conditionally compile trio.
(libglib_2_0_la_SOURCES): Add gprintf.c and gprintfint.h.
(glibsubinclude_HEADERS): Add gprintf.h.
* glib/gprintfint.h: New private wrapping either system printf
or trio printf variants in _g_printf wrappers for use inside glib.
* glib/gprintf.h: New public header declaring g_printf variants.
* glib/gprintf.c: Corresponding implementations.
* glib/trio/*: New directory, containing the trio-1.9 sources.
* glib/tmpl/string_utils.sgml: Add note on including gprintf.h,
move some docs inline.
* glib/glib-sections.txt: Add g_printf, g_vprintf, g_fprintf,
g_vfprintf, g_sprintf, g_vsprintf.
* glib/gmessages.h (g_return_if_fail):
(g_return_val_if_fail): Use G_LIKELY. (#69022)
* glib/gmacros.h (G_LIKELY):
(G_UNLIKELY): New macros for hinting the compiler about the
expected result of expressions. For gcc 3.x, define these
using __builtin_expect. (#69022)
* glib/tmpl/macros_misc.sgml: Document G_LIKELY, G_UNLIKELY.
* glib/glib-sections.txt: Add G_LIKELY, G_UNLIKELY.
Tue Nov 19 14:38:18 2002 Owen Taylor <otaylor@redhat.com>
* glib/gstrfuncs.c (g_ascii_strtoull): Fix
strtull/strtoull type in docs (#99012, Morten
Welinder.) Add copyright information for code
taken from GNU libc.
2002-11-18 Tor Lillqvist <tml@iki.fi>
* glib/gspawn-win32.c (do_spawn_with_pipes): Do handle
G_SPAWN_DO_NOT_REAP_CHILD after all, similarily as on Unix. If the
flag is not set, don't call DuplicateHandle() on the handle
returned by the helper process, and set the "child pid" returned
to the caller to zero. Close the handle to the helper process in
all cases.
* glib/gspawn.c (g_spawn_async_with_pipes): Document Windows
behaviour of G_SPAWN_DO_NOT_REAP_CHILD.
2002-11-18 Tor Lillqvist <tml@iki.fi>
[Win32] Fix the asynchronous g_spawn* to return the process handle
of the started program properly. (Note: not the process id. The
spawn*() functions in the C runtime return the created process's
handle. There doesn't seem to be any way to get the process id of
a child process if you have the handle. But then, the process
handle usually is more useful anyway.)
* glib/gspawn-win32-helper.c (WinMain): If the spawning of the
child process succeeded, and if asynchronous spawn (P_NOWAIT),
write the result handle up to the parent process, waiting to read
it in do_spawn_with_pipes().
* glib/gspawn-win32.c (do_spawn): Use return value from spawning
the helper. If it is -1 the helper wasn't found or couldn't be run
for some reason. Otherwise it is the helper's process handle.
(g_spawn_async_with_pipes): Pass the child_pid parameter on to
do_spawn_with_pipes().
(do_spawn_with_pipes): Take also a child_pid parameter. If
do_spawn() returned -1, fail immediately. Otherwise make the
handle passed to us by the helper process into a handle valid in
this process by calling DuplicateHandle().
2002-11-17 Tor Lillqvist <tml@iki.fi>
* glib/gspawn-win32.c (g_spawn_async_with_pipes): Ignore the
G_SPAWN_DO_NOT_REAP_CHILD flag, can't be meaninfully implemented
on Windows, at least not now. Always pass dont_wait as TRUE to
do_spawn_with_pipes(). The semantics of the dont_wait parameter is
very different from the semantics of the intermediate_child
parameter to fork_exec_with_pipes() in the Unix version. This
fixes a serious bug, g_spawn_async() in fact behaved
synchronously.
(do_spawn_with_pipes, do_spawn): Rename from
fork_exec_with_pipes() and do_exec(), those names were from the
Unix bersion, and misleading.
(close_and_invalidate): Don't try to close invalid fds.
* glib/gspawn.c (g_spawn_async_with_pipes): Add warning about
Windows behaviour. There is no fork(), so the child_setup()
function is in fact called in the parent.
* glib/gspawn-win32-helper.c (WinMain): Insert spaces in argv
debugging output.
* tests/spawn-test-win32-gui.c: New file. Test program to be
linked as a GUI application. Behaves differently depending on how
invoked (by spawn-test).
* tests/spawn-test.c (run_tests): On Win32, run the
spawn-test-win32-gui program, too, in several ways, synchronously
and asynchronously.
* tests/Makefile.am: Corresponding change.
Thu Nov 7 19:32:26 2002 Owen Taylor <otaylor@redhat.com>
* glib/gutils.[ch] (g_set/get_application_name):
Patch from Havoc Pennington to add functions for
setting and getting a human readable application
name.
* configure.in: Up to version 2.1.3, since we'll
need to depend on last addition for GTK+.
Mon Nov 4 14:41:48 2002 Owen Taylor <otaylor@redhat.com>
* glib/gbsearcharray.c: Include config.h
so DISABLE_MEMPOOLS actually has an effect.
(#96437, Morten Welinder)
* tests/uri-test.c: Include <config.h>
Mon Nov 4 14:42:36 2002 Owen Taylor <otaylor@redhat.com>
* gtype.c gsignal.c gvaluearray.c: Include config.h
so DISABLE_MEMPOOLS actually has an effect.
(#96437, Morten Welinder)
* gsignal.c: Conditionalize definition of g_handler_ts
on DISABLE_MEM_POOLS (#96437)
Mon Nov 4 14:45:24 2002 Owen Taylor <otaylor@redhat.com>
* gthread-posix.c gthread-solaris.c: Include <config.h>
2002-11-02 Daniel Elstner <daniel.elstner@gmx.net>
* glib/giochannel.c (g_io_channel_write_chars): Fix left_len calculation in the from UTF-8 to UTF-8 case: left_len should be the number of bytes left in the input buffer rather than channel->write_buf. (#96373)
2002-10-27 Tor Lillqvist <tml@iki.fi>
* configure.in (G_MODULE_LDFLAGS): Don't set on Win32, only causes
trouble.
* glib/gmain.c (g_poll): Fix for bug reported by Herman Bloggs
(http://mail.gnome.org/archives/gtk-devel-list/2002-October/msg00101.html)
and others. We waited for events only for GPollFDs whose events
field had G_IO_IN set. We need to wait also for events for
GPollFDs that have just G_IO_OUT set. Non-blocking sockets in the
process of being connect()ed are one such case. Also silence a
couple of gcc warnings.
Fri Oct 18 13:41:30 2002 Manish Singh <yosh@gimp.org>
* glib/giochannel.c (g_io_channel_read_line_backend): avoid
creating negative values out of unsigned values using MAX,
check to see if the result would be positive before doing
the calculation.
Tue Oct 15 15:28:47 2002 Manish Singh <yosh@gimp.org>
* tests/iochannel-test.c: use gsize instead of int where appropriate
(64-bit cleanliness fix). Removed leftover line_term cruft.
Sat Oct 12 21:30:41 2002 Tim Janik <timj@gtk.org>
* merged up from glib-2-0:
* glib/gstrfuncs.c (g_ascii_strtod): fix comment.
(g_ascii_strtoull): new function, acting like strtoull(3) in the C
locale.
* glib/gscanner.[hc]: fix 32bit issues with integer parsing and
support storing 64bit values in GTokenValue by
using g_ascii_strtoull().
Thu Oct 10 23:27:02 2002 Tim Janik <timj@gtk.org>
* glib/gscanner.c (g_scanner_msg_handler): if input_name is NULL,
print out "<memory>" instead of completely skipping input specification
and thusly loosing error line information.
2002-09-29 Tor Lillqvist <tml@iki.fi>
* configure.in: Instead of forcing -fnative-struct into CFLAGS
when using gcc for Win32, check for gcc version 3.x which uses
-mms-bitfields instead. Also check if either of these switches is
actually available at all, and warn if not. Thanks to Soren
Andersen for the inspiration.
2002-09-23 Arvind Samptur <arvind.samptur@wipro.com>
* glib/gspawn.c (fork_exec_with_pipes) : when the child fails
we need to reap it to avoid a zombie. This would
happen in case of g_spawn_sync. Fixes#92658
2002-08-06 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
* glib/gmain.c: Factor out g_main_context_init_pipe from
g_main_context_new to initialize the wakeup pipe of a
context. Call that function from g_main_context_new if threads are
initialized and for all contexts when threads are initialized
in g_main_thread_init. (#86872)
* gthread/gthread-impl.c: Call g_main_thread_init. (#86872)
2002-08-06 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
* glib/gthread.c: Set the normal PID surrogate priority according
to getpid() to avoid errors for niced processes. (#86116)
* gthread/gthread-impl.c, gthread/gthread-posix.c,
gthread/gthread-solaris.c: Do the same for the posix/dce
implementation. Solaris still needs to set priority of the main
thread, because all unbound threads will schedule according to
that value and it defaults to 0 (the minimal value).
* glib/gfileutils.c: Clarify the behavior of g_build_path()
for empty elements and for leading and trailing copies
of the separator in the docs.
* glib/gfileutils.c: Fix problems with leading elements
consisting only of "/" characters. (#85928, Guillaume Chazarain)
* tests/strfunc-test.c (main): Add more test cases
for g_build_filename().
* glib/gunicode.h:
* glib/gutf8.c (g_utf8_strreverse): New function to revert
a utf8 string.
* glib/gpattern.c (g_utf8_reverse): Gone, replaced by
g_utf8_strreverse. (#87725)
Thu Jul 25 20:57:20 2002 Owen Taylor <otaylor@redhat.com>
* glib/giochannel.c (g_io_channel_read_line): Fix
docs for @str_return to conform to the main docs
and the implementation as to whether the terminator
is included. (#87964, Jacob Berkman)
Thu Jul 25 19:52:41 2002 Owen Taylor <otaylor@redhat.com>
* glib/guniprop.c (real_tolower): Handle the
end of the string properly when max_len is set.
(#88545, Morten Welinder.) Rename the next_t
variable to next_type to make cc-mode happy.
* glib/gconvert.c (g_iconv_open): Fix missing
label from previous commit.
Thu Jul 25 19:12:43 2002 Owen Taylor <otaylor@redhat.com>
* glib/giochannel.c (g_io_channel_set_encoding): Clarify
that only one of the conditions listed in the docs
need to be true, not all of them. (#87176,
Sebastian Rittau)
* glib/giochannel.c (g_io_channel_read_line): Fix
description of the return value. (#87754, Manuel Clos)
Thu Jul 25 19:02:53 2002 Owen Taylor <otaylor@redhat.com>
* glib/gmain.c (g_timeout_add): Remove reference
in the docs to @notify parameter. (#87768,
Manuel Clos)
Thu Jul 25 17:57:07 2002 Owen Taylor <otaylor@redhat.com>
* glib/gconvert.c (g_iconv_open): Document the
(GIConv)-1 return value on failure. (#87559,
Jarek Dukat)
* glib/gconvert.c (g_iconv_open): Fix potential
problems with the assumption that (GIConv)(iconv_t)-1
is the same as (GIConv)-1.
2002-07-04 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
* tests/*.c: Added #undef G_DISABLE_ASSERT and #undef G_LOG_DOMAIN
throughout the files, which didn't already have them. (#87312)
2002-07-03 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
* configure.in: Made the thread flags determination tests first
check for the canonical form -pthread[s], then for other
possibilities. Also recognize some more platforms. Modeled after
patch from Miroslaw Dobrzanski-Neumann <mne@mosaic-ag.com>
(#77981).
2002-07-03 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
* configure.in: Fixed bugs in posix thread priority
resolution. Also added AIX priorities. Fix from
Laurent Vivier <Laurent.Vivier@bull.net>. (#82599)
2002-07-03 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
* gthread/gthread-solaris.c: Use thr_min_stack() instead of
sysconf (_SC_THREAD_STACK_MIN). if stack_size is 0 on entry to
g_thread_create_solaris_impl, also pass 0 to thr_create. Otherwise
the stack might be to small for any nontrivial thread. Discovered
on intel-solaris by Rajkumar Sivasamy <rajkumar.siva@wipro.com>.
2002-07-02 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
* configure.in: Improve checks for dce/posix threads to also do
the right thing, if the thread functions are not declared in the
pthread.h. Idea from Miroslaw Dobrzanski-Neumann
<mne@mosaic-ag.com> in #77981.
2002-07-01 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
* glib/garray.h: Add parenthesis to protect macro
argument. Spotted by Sam Couter" <sam@topic.com.au>. (#86826)
2002-06-28 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
* glib/gmessages.h (g_assert, g_assert_not_reached,
g_return_if_fail, g_return_val_if_fail): In case of
G_DISABLE_ASSERT replace "G_STMT_START{ }G_STMT_END" with
"G_STMT_START{ (void)0; }G_STMT_END", because the former chokes
gcc prior to 3.0. (#86664)
Thu Jun 13 16:12:04 2002 Owen Taylor <otaylor@redhat.com>
* glib/gmain.c (struct _GTimeoutSource): Make
interval unsigned to match g_timeout_source_new().
(#82624, Tim Janik.)
* glib/gmain.c (g_timeout_prepare): Add some
extra gymnastics to avoid signed/unisgned integer
overflows.
Tue Jun 11 17:03:39 2002 Owen Taylor <otaylor@redhat.com>
* tests/patterntest.c (test_compilation)
* glib/gmem.c (profiler_try_realloc): A couple
of 64-bit printf format fix from George Lebl.
* glib/gconvert.c (open_converter): Fix gsize/gint
mixup for g_iconv() arguments.
* glib/gwin32.c (g_win32_get_package_installation_directory):
Replace homegrown "hash" entity by standard ISO entity "num".
* gobject/gobject-docs.sgml:
* glib/glib-docs.sgml:
* glib/tmpl/macros.sgml:
* glib/tmpl/string_utils.sgml: Replace homegrown "nbsp", "hash"
and "percent" entities by standard ISO entities "nbsp", "num" and
"percnt".
Wed May 22 15:40:47 2002 Owen Taylor <otaylor@redhat.com>
* README.in: Remove notes about now-fixed-bugs.
* m4macros/glib-gettext.m4 acinclude.m4: Get rid
of AC_MSG_NOTICE() usage, since some broken systems
(Hi Debian!) might not be using autoconf-2.5x for
downstream packages even though we require it for
glib itself.
* INSTALL.in: Add a note about installing extra
converters for Solaris.
* glib/gutils.h (g_bit_nth_msf): Fix termination
condition. (#82582, Paolo Molaro)
Wed May 22 15:24:04 2002 Owen Taylor <otaylor@redhat.com>
* README.translators: Add from GTK+.
* *.po: Convert all po files to UTF-8.
Mon May 20 18:02:46 2002 Owen Taylor <otaylor@redhat.com>
* configure.in: Move iconv tests before gettext
checks. (#81999)
* m4macros/glib-gettext.m4 acinclude.m4: If we can't
link to gettext, try adding in -liconv. (#80076,
Boyd Lynn Gerber)
* m4macros/glib-gettext.m4 acinclude.m4: Suppress
warnings about xgettext not being GNU gettext when
libintl wasn't found at all.
(#79016, Andrew P. Lentvorski, Jr.)
Mon May 20 15:35:59 2002 Owen Taylor <otaylor@redhat.com>
* glib/gfileutils.c (get_contents_regfile): Fix double
close of file descriptor on error. (#82139, Wayne Schuller)
* glib/gspawn.c (close_and_invalidate): Don't close
fd's that have already been closed. (Fix from Michael
Meeks, #81959)
* glib/giochannel.c (g_io_channel_close): If not flushing,
dump the contents of the write buffers, so we won't try
to write them to an invalid fd later. (Patch from Ron Steinke,
fixing #78290, Andreas Persenius.)
Sat May 18 00:21:51 2002 Tim Janik <timj@gtk.org>
[merged from stable]
* glib/gscanner.c (g_scanner_unexp_token): fix missing cases for
expected_token.
2002-05-14 Alex Larsson <alexl@redhat.com>
* glib/gstrfuncs.c:
* glib/gstrfuncs.h:
New functions g_str_has_suffix and g_str_has_prefix.
* tests/string-test.c: (main):
Test the new functions.
Mon May 13 11:55:33 2002 Owen Taylor <otaylor@redhat.com>
* configure.in acglib.m4: If sizeof(int) == sizeof(long)
run compilation tests to determine which way gsize should
be defined. (#74413, reported by Miroslaw Dobrzanski-Neumann)
Mon May 13 11:42:23 2002 Owen Taylor <otaylor@redhat.com>
* glib/libcharset/*: Update from libcharset CVS.
Includes additional encodings for Solaris (#80396,
Qingjiang Yuan)
* configure.in: Add getc_unlocked to CHECK_FUNCS().
* glib/gmessages.c (strdup_convert): If
g_convert_with_fallback() fails, print the error
message to stderr the first time, then return
the original string. (#78197)
2002-05-08 Michael Natterer <mitch@gimp.org>
* configure.in: fixed yesterdays fix for cross compiling: simply
check the variable "cross_compiling" which gets set by autoconf.
2002-05-07 Michael Natterer <mitch@gimp.org>
* configure.in: added a new conditional CROSS_COMPILING which
indicates ($build != $host). If it is set, look for
glib-genmarshal in PATH. Error out if it was not found.
2002-05-07 Michael Natterer <mitch@gimp.org>
* Makefile.am: use the glib-genmarshal found at configure time
if CROSS_COMPILING is set, use the one which was just built
otherwise.
Tue May 7 11:24:22 2002 Owen Taylor <otaylor@redhat.com>
Fixes for #79347, Ron Arts.
* glib/gqsort.c (g_qsort_with_data): Handle 0 elements,
don't g_return_if_fail().
* tests/qsort-test.c (main): Add a 0 element test.
* glib/garray.c (g_[ptr_]array_sort_with[_data]):
Remove invalid assertions that array->pdata != NULL ..
it's NULL for 0 elements which is a valid case.
Mon May 6 16:00:41 2002 Owen Taylor <otaylor@redhat.com>
* glib/gbacktrace.h: Exclude OSF from alpha definition
of G_BREAKPOINT(), since the assembler apparently
doesn't support bpt. (#77852, Gareth Pierce) [from stable]
Mon May 6 11:48:08 2002 Owen Taylor <otaylor@redhat.com>
[ merged from stable ]
* Makefile.am (EXTRA_DIST): Add ChangeLog.pre-2-0 (#78641)
* m4macros/glib-2.0.m4: save CFLAGS/LIBS properly when
compiling "what went wrong" test case. (#79330)
* m4macros/glib-2.0.m4: Remove reference to editing
pkg-config script. (From Jim Gettys)
* configure.in: (Look for dyld interfaces before dlopen()
since OS X can have both. Patch from Jacob Berkman,
#80438)
2002-04-19 Tor Lillqvist <tml@iki.fi>
* glib/gspawn.c (g_spawn_command_line_sync): Add Windows-specific
note to the gtk-doc comment.
* glib/gspawn-win32.c: Remove the copy-pasted gtk-doc comment
blocks. It's enough to have them in gspawn.c.
2002-04-13 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
* glib/gthreadpool.c (g_thread_pool_thread_proxy): Unlock the pool
for all threads leaving it. (#78348)
2002-04-08 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
* tests/gio-test.c, tests/markup-test.c: Use gsize instead of
gint. From Miroslaw Dobrzanski-Neumann
<mne@mosaic-ag.com>. (#77982)
Thu Mar 28 18:22:53 2002 Owen Taylor <otaylor@redhat.com>
* README: Remove warning about g_print, etc, encoding.
* NEWS: Updates.
* glib/gmessages.c (g_log_default_handler): Use %lu
(plus a cast) when printing out pid_t arguments.
(#76770, Morten Welinder)
* glib/gstrfuncs.c (g_strdup_vprintf): Check the
result of vasprintf(), return NULL on failure.
(#76802, Akira Tagoh)
* tests/testglib.c (TEST): Supress a warning with
some GCC versions.
Thu Mar 28 20:31:51 2002 Tim Janik <timj@gtk.org>
* glib/gmessages.c:
(g_print):
(g_printerr): convert prtinf() strings to local charset
when writing them to stdout or stderr.
Wed Mar 27 18:42:22 2002 Tim Janik <timj@gtk.org>
* gmessages.[hc]:
major cleanups. introduced _g_log_fallback_handler() to handle
recursive messages which really doesn't call any GLib functions.
this allowes the default handler to use normal GLib functions and
also fixes user supplied log level handlers.
fixed locking issues, based on a patch from Sebastian Willhelmi,
attached to #74356. translate log messages from UTF-8, based
on the same patch. save fatal and recursion flags across flag
loop. use new integer format code from above patch.
move GLib functions out of locked mutex state to avoid deadlocks.
move the level prefix and filedescriptor logic into mklevel_prefix().
move _g_debug_init() into a place where we can figure and handle
recursion.
Mon Mar 25 18:13:06 2002 Owen Taylor <otaylor@redhat.com>
* glib/gtypes.h (GUINT*_SWAP_LE_BE_X86): Remove __const__
qualifier from __asm__ statements... GCC since at least
2.96 has assumed no side effects automaticaly, and gcc-3.1
will warn about this usage. (#73308, Cody Russell)
Fri Mar 22 17:59:27 2002 Owen Taylor <otaylor@redhat.com>
* glib/gmem.c (g_mem_chunk_reset): Fix problem where
if g_mem_chunk_reset() is called on an alloc-only
memchunk, then a useles GTree was created.
Wed Mar 20 18:20:21 2002 Owen Taylor <otaylor@redhat.com>
* glib/gconvert.c (open_converter): Try to work around segfaults
on Solaris if NULL is passed for outbuf... supposedly gchar
*outbuf = NULL... &outbuf works. (#74336, Lauri Alanko)
Wed Mar 20 11:17:32 2002 Owen Taylor <otaylor@redhat.com>
* glib/gfileutils.c (get_contents_regfile): Close the
file descriptor. (#75507, Matthias Clasen)
2002-03-20 Sven Neumann <sven@gimp.org>
* glib/ghash.c (g_hash_table_resize): avoid repeated call of
g_spaced_primes_closest() by moving it out of the CLAMP macro
(spotted by Salmaso Raffaele).
2002-03-16 Tor Lillqvist <tml@iki.fi>
* glib/giowin32.c: Some debugging output formatting changes. The
following two changes fixes a problem with buffered GIOChannels,
noticed with the help of Owen's test program, thanks!
(g_io_win32_prepare): Return value that takes the buffer condition
into account, like g_io_unix_prepare() does.
(g_io_win32_check): Ditto, like g_io_unix_check().
2002-03-14 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
* glib/gmessages.c: Fixed threading issues brought up by
#74577. Make g_log_find_domain, g_log_domain_new,
g_log_domain_check_free and g_log_domain_get_handler require being
called with g_messages_lock held and remove all internal locking
in them. Then added proper locking to g_log_set_handler,
g_log_remove_handler and g_logv. Problem spotted by Miroslaw
Dobrzanski-Neumann <mne@mosaic-ag.com>. (#74577)
2002-03-12 Alexander Larsson <alla@lysator.liu.se>
* glib/gconvert.c:
Cache getenv("G_BROKEN_FILENAMES") in have_broken_filenames() and
use instead. Add g_convert_init() that calls have_broken_filenames()
* gthread/gthread-impl.c:
Have g_thread_init call g_convert_init.