2003-07-31 Noah Levitt <nlevitt@columbia.edu>
* tests/utf8.txt: Change instances of U+10ffff to U+10fffd, since that
is the last valid unicode character. Add check that U+10ffff is
NOTUNICODE. (#118730)
2003-07-31 Tor Lillqvist <tml@iki.fi>
* glib/gspawn-win32.c: When possible, manage without the helper
process. (Part of the enhancements outlined in #98737.) Speeds up
GIMP 1.3's first-time-run plug-in query phase a lot.
Plug a file descriptor (and thus Win32 handle) leak: close the
read end of the child error report pipe after use.
* glib/gfileutils.[hc]: Rename g_read_link() to g_file_read_link() to better match the remaining file
utilities in the g_file_ namespace and to better separate it from readlink(). This is hopefully no problem
as the function is just 2 days old.
2003-07-26 Matthias Clasen <maclas@gmx.de>
* glib/garray.h:
* glib/garray.c (g_{,byte,pointer}_remove_range): New functions to remove a range of elements
from an array. (#94879, Nalin Dahyabhai)
2003-07-20 Hans Breuer <hans@breuer.org>
* glib/trio/makefile.msc : (new file) for msvc build
* glib/glib.def : removed some duplicated entries
* glib/gscanner.c : add same workaround for MSVC(5.0)
which does not allow to cast an uint64 to float.
Same as in gvaluetransform.c
Also move #include <io.h> behind inclusion of "glib.h"
which defines the needed G_OS_WIN32
* glib/makefile.msc.in : added gprintf.obj, trio\trio.lib
as well as shell32.lib
* tests/spawn-test.c : include <io.h> on win32
2003-07-12 Matthias Clasen <maclas@gmx.de>
* glib/gprintf.c: Doc additions.
2003-07-12 Matthias Clasen <maclas@gmx.de>
* glib/tmpl/string_utils.sgml: Add a paragraph about string precision, add links to it.
Remove markup which is now handled better by gtk-doc.
2003-07-10 Joel Brich <joel.brich@laposte.net>
* configure.in: Added "eo" to ALL_LINGUAS.
* po/eo.po: Added Esperanto translation
from Charles Voegler <cvoegler@dweasel.com>
Wed Jul 9 16:27:26 2003 Manish Singh <yosh@gimp.org>
* glib/gmain.c (g_main_context_unref_and_unlock): check if
context->poll_chunk is set before trying to destroy it. For example,
This can happen if no sources are added to a context before it is
freed.
2003-07-09 Matthias Clasen <maclas@gmx.de>
Support for one-time initialization functions. (#69668, Sebastian Wilhelmi)
* configure.in: Check whether double checked locking is safe, define g_once() in
glibconfig.h accordingly.
* glib/gthread.h: Add GOnce, GOnceStatus, G_ONCE_INIT and g_once_impl.
* glib/gthread.c (g_once_impl): Fallback implementation using a mutex if double checked
locking is unsafe.
* tests/thread-test.c: Add tests for g_once().
2003-06-25 Tor Lillqvist <tml@iki.fi>
* glib/giowin32.c (g_io_channel_unix_new): Pass real &optval and
&optlen to getsockopt() instead of NULL. Don't remember why I
thought that NULL could be used (as we don't actually use the
returned value for anything), the Platform SDK documentation
doesn't imply so.
2003-06-17 Matthias Clasen <maclas@gmx.de>
* acinclude.m4 (JH_PATH_XML_CATALOG, JH_CHECK_XML_CATALOG): New
macros to check for XML catalog contents and path, borrowed from
gtk-doc.
* configure.in: New option --enable-man to enable regeneration of
man pages from Docbook, if the necessary tools are found.
* gobject/Makefile.am: Add rule to regenerate man pages from
Docbook.
(man_MANS): Add glib-mkenums.1, glib-genmarshal.1 and gobject-query.1.
(content_files): Add glib-mkenums.xml, glib-genmarshal.xml and
gobject-query.xml.
* gobject/glib-mkenums.xml:
* gobject/glib-genmarshal.xml:
* gobject/gobject-query.xml: New refentries.
* gobject/glib-mkenums.1:
* gobject/glib-genmarshal.1:
* gobject/gobject-query.1: Man pages generated from the .xml
sources.
* gobject/gobject-docs.sgml: Include glib-mkenums.xml,
glib-genmarshal.xml and gobject-query.xml.
* glib/Makefile.am: Add rule to regenerate man pages from
Docbook.
(man_MANS): Add glib-gettextize.1.
(content_files): Add glib-gettextize.xml.
* glib/glib-gettextize.xml: New refentry.
* glib/glib-gettextize.1: Man page generated from the .xml source.
* glib/glib-docs.sgml: Include glib-gettextize.xml.
2003-06-15 Tor Lillqvist <tml@iki.fi>
* glib-zip.in (DLLDIR): Test where the DLLs actually are.
* README.win32: Point to FSF's binary Win32 distributions of
libiconv and gettext-runtime.
2003-06-11 Tor Lillqvist <tml@iki.fi>
* glib-zip.in (DEVZIP): libtool 1.5 installs DLLs in the bin
subdirectory, so get them from there.
* glib/gwin32.c (g_win32_getlocale): Use "sr@Latn" and "sr" in the
same way as the po files for Serbian in Latin and Cyrillic script.
2003-06-08 Tor Lillqvist <tml@iki.fi>
* glib/giowin32.c: Fix indentation and spacing. Use
INADDR_LOOPBACK instead of inet_addr("127.0.0.1") and
gethostbyaddr().
* glib/giowin32.c: Resolved thread deadlocks in socket
ichannel code to support Add-Cancel-Add watch functionality
on windows. Also cleaned up socket error handling to not
segfault and do the right thing.
Fri Jun 6 10:24:23 2003 Hidetoshi Tajima <hidetoshi.tajima@sun.com>
* m4macros/glib-gettext.m4: Test for Solaris native gettext
in libc, seeing if it supports GNU catalog format (#85217).
Thu Jun 5 23:40:31 2003 Owen Taylor <otaylor@redhat.com>
* glib/gmain.c: When dispatching a source that is
!CAN_RECURSE, temporarily remove any file descriptors
that that source has registered from the main loop, to keep
recursive main loops from busy-waiting if input
becomes available on one of those file descriptors.
(#112222, Christian Krause)
* glib/gmain.c (g_source_set_priority): Properly
remove the source from the context's source list
and reinsert it sorted, rather than simply setting
source->next/prev to NULL! (#114274)
2003-06-06 Matthias Clasen <maclas@gmx.de>
* glib/gstring.c (g_string_append_printf_internal): Use
g_vasprintf() and g_string_append_len(), thus enabling embedded
nuls in the result of g_string_printf(). (#92492, Owen Taylor)
* tests/string-test.c: Add a test for embedded nuls in the
result of g_string_printf().
2003-06-06 Matthias Clasen <maclas@gmx.de>
* glib/gprintf.[ch]: Synchronize argument names with headers and docs.
(g_vasprintf): An implementation of vasprintf(), code was lifted
from g_strdup_vprintf(). (#112365)
* glib/gstrfuncs.c (g_strdup_vprintf): Just use g_vasprintf().
2003-06-05 Tor Lillqvist <tml@iki.fi>
* glib/giochannel.h
* glib/gmain.h: Remove bogus (Win32-only) declaration of
g_main_poll_win32_msg_add(). No such function exists.
* glib/gmain.c (g_poll) [Win32]: Use g_win32_error_message() for
better warning messages.
Mon Jun 2 14:18:21 2003 Owen Taylor <otaylor@redhat.com>
Patch from Jeffrey Stedfast <fejj@ximian.com> (#104825)
* glib/gspawn.c (read_data): Don't read() into '&buf', while this
is technically okay - it is clearer as just 'buf'.
(write_all): New helper function that handles write() interrupts.
(write_err_and_exit): Use write_all() instead of write().
(fork_exec_with_pipes): Same here.
Sun Jun 1 09:42:36 2003 Owen Taylor <otaylor@redhat.com>
* glib/giochannel.c (g_io_error_get_from_g_error): Put
the g_return_val_if_fail() in the right place.
Fri May 31 1:17:45 2003 Ray Strode <halfline@hawaii.rr.com>
* glib/giochannel.c (g_io_channel_error_from_errno):
Fix typo: should be G_IO_ERROR_UNKNOWN not
G_ERROR_ERROR_UNKNOWN
Fri May 30 19:09:25 2003 Owen Taylor <otaylor@redhat.com>
* m4macros/glib-gettext.m4: Backport better handling
of ALL_LINGUAS from gettext.m4. (#103808, Andras Salamon)
Fri May 30 18:46:05 2003 Owen Taylor <otaylor@redhat.com>
* m4macros/glib-gettext.m4: expand $exec_prefix as
well as $prefix. (#107290, reported by Morten Welinder,
patch from Raja Harinath)
Fri May 30 16:48:26 2003 Owen Taylor <otaylor@redhat.com>
* glib/giochannel.c (g_io_channel_error_from_errno):
Silently return G_IO_CHANNEL_ERROR_FAILED for EINTR,
since close() can return EINTR. (#11842, Balazs Scheidler)
Fri May 30 15:51:43 2003 Owen Taylor <otaylor@redhat.com>
* glib/giochannel.c (g_io_error_get_from_g_error):
Do a g_return_val_if_fail() on err == NULL to be a
bit more robuts on buggy IO channel implementations.
(#113396, Dan Winship)
Tue May 27 19:56:35 2003 Owen Taylor <otaylor@redhat.com>
* glib/gmacros.h: __PRETTY_FUNCTION__ was made a non-token
before gcc-3.0.0 for C++. (Fix from Martin Kretzschmar,
#113797)
2003-05-19 Noah Levitt <nlevitt@columbia.edu>
* glib/gunibreak.c: Fix cut-and-pasto: g_unichar_break_type should
return G_UNICODE_BREAK_UNKNOWN if the character is greater than
G_UNICODE_LAST_CHAR.
2003-05-05 Christian Rose <menthos@menthos.com>
* configure.in: Added sr and sr@Latn to ALL_LINGUAS.
* po/sr.po, po/sr@Latn.po: Added Serbian translation by
Danilo Šegan <dsegan@gmx.net>.
Mon Apr 7 13:40:28 2003 Owen Taylor <otaylor@redhat.com>
* glib/gmain.c (g_main_loop_run): When waiting for
the main loop to be freed up, wait on either
!loop->is_running or got_ownership, not both.
(Caused gtk_dialog_run() not to work in other
threads, reported by Jean-Yves Lefort)
2003-04-01 Matthias Clasen <maclas@gmx.de>
* glib/gstring.[hc] (g_string_chunk_insert_len): New function, to
insert possible non-nul-terminated byte sequences into a string
chunk. (#96279)
(g_string_chunk_insert): Implement in terms of
g_string_chunk_insert_len() now.
2003-03-30 Matthias Clasen <maclas@gmx.de>
* glib/gconvert.c (UnsafeCharacterSet): Get rid of
UNSAFE_DOS_PATH.
(acceptable): Align with RFC2396. (#59653)
* tests/uri-test.c: Adjust to the changes above.
2003-03-26 Christian Rose <menthos@menthos.com>
* configure.in: Added "yi" to ALL_LINGUAS.
* po/yi.po: Added Yiddish translation by
Raphael Finkel <raphael@cs.uky.edu>.
2003-03-14 Sebastian Wilhelmi <seppi@seppi.de>
* glib/gthread.c: Do not define function g_thread_init_glib, if
not G_THREADS_ENABLED. It's not called bu g_thread_init() then,
but calls other, in that case undefined functions.
2003-03-01 James Henstridge <james@daa.com.au>
* autogen.sh: require automake 1.7. Add calls to libtoolize and
gtkdocize. Clean up some of the error messages.
* configure.in: move version declaration to the top of the file
(before AC_INIT), using M4 macros.
GLIB_AC_DIVERT_BEFORE_HELP() calls no longer necessary, due to use
of M4 macro expansion in help messages instead.
Convert AC_ARG_WITH/AC_ARG_ENABLE calls to use AC_HELP_STRING to
format help strings. Use quadrigraphs to get square brackets to
show correctly.
Replace gtk-doc checks with a call to GTK_DOC_CHECK() macro.
Use AC_CONFIG_COMMANDS([glibconfig.h], ...) to output
glibconfig.h, so that "./config.status glibconfig.h" works.
Add an extra AC_CONFIG_FILES call listing other files we want
generated by config.status protected by an "if false" block. This
way automake generates the rules needed to rebuild the files for
us.
Add quotes in various places.
* docs/reference/*/Makefile.am: convert to use the common
gtk-doc.make file. This localises the complexity to a single
makefile fragment maintained with gtk-doc itself.
* */Makefile.am: remove unneeded rules to build win32 files with
config.status. Automake now does this for us.
Replace instances of @FOO@ with $(FOO) where appropriate -- this
allows automake to do a better job checking the makefile.
Add some files to DISTCLEANFILES where appropriate
* Makefile.am: use the DISTCHECK_CONFIGURE_FLAGS variable to
ensure that --enable-gtk-doc is passed to configure during a
distcheck. Remove the custom distcheck, since the standard one
will now do.
* gobject/Makefile.am: switch to BUILT_SOURCES, since that now
works.
2003-02-25 Tor Lillqvist <tml@iki.fi>
* glib/glib.def: Add a couple of missing entries, thanks to Cedric
Gustin. Thread initialization function changes according to
Sebastian Wilhelmi's changes below (2003-02-14).
2003-02-18 Sebastian Wilhelmi <seppi@seppi.de>
* configure.in: Make glib_thread_test not unnecessarily convert
between int and void*. (#106278). Let main return int.
* configure.in: Add an argument to specify the default thread
attribute to glib_thread_test. Disappeared somewhere between 2.0
and 2.2.
2003-02-14 Sebastian Wilhelmi <seppi@seppi.de>
Fixes for #101264 and #99372:
* glib/gconvert.h, glib/gmain.c, glib/gmem.c, glib/gmessages.c,
glib/grand.c: Include gthreadinit.h and rename the thread
initialization functions a bit and let them start with _, so that
later we can stop exporting them.
* glib/gmem.c, glib/gmessages.c: Move the g_private_new() calls to
new functions. They have to be called after setting
g_threads_got_initialized to TRUE (see #101264).
* glib/gthread.c: Include gthreadinit.h. Renamed g_mutex_init() to
g_thread_init_glib(). Call the thread initialization functions
(which are not allowed to call g_private_new), then set
g_threads_got_initialized to TRUE, then call the other thread
initialization functions (which must not call anything but
g_private_new()).
* glib/gthreadinit.h: New private header to cleanly declare all
thread initialization functions.
* gthread/gthread-impl.c: Include gthreadinit.h. In
g_thread_init() just call g_thread_init_glib(), which in turn calls the
other functions (see #99372).
* glib/Makefile.am: Added gthreadinit.h.
2003-02-04 Tor Lillqvist <tml@iki.fi>
* glib/giowin32.c (g_io_channel_unix_new): Fix typo: Should be
SOCKET_ERROR, not SO_ERROR. Noticed by Daniel Kaufmann.
Merge from stable branch:
Fix for bug #104014, reported by Alex Shaduri:
* glib/gspawn-win32.c (protect_argv): New function. Add
double-quotes around argv elements that need it, and escape
embedded double-quotes with backslash.
(do_spawn_with_pipes) Call protect_argv().
* glib/gspawn-win32-helper.c (WinMain): Call protect_argv().
* glib/gspawn.c (g_spawn_async_with_pipes): Document argument
vector vs. command line details on Win32.
(g_spawn_command_line_sync): Improve documentation about
backslashes in the command line on Windows.
Tue Jan 28 16:08:56 2003 Owen Taylor <otaylor@redhat.com>
* m4macros/glib-gettext.m4: If msgfmt isn't found,
unset gt_cv_have_gettext. (#102552, Tim Mooney)
Tue Jan 28 15:18:24 2003 Owen Taylor <otaylor@redhat.com>
* autogen.sh (have_automake): Fix version in complaint
message about automake. (#104366, Rich Burridge)
2003-01-21 Christian Rose <menthos@menthos.com>
* configure.in: Added "mn" to ALL_LINGUAS.
* po/mn.po: Added Mongolian translation by
Sanlig Badral <badral@chinggis.com>.
2003-01-05 Tor Lillqvist <tml@iki.fi>
* README.win32: Updates.
* configure.in: Don't use -lm in TRIO_LIBS on Windows, with no
libm. (Mingw has a dummy libm.a, but the .pc file should be
useable by MSVC users, too.)
2003-01-04 Tor Lillqvist <tml@iki.fi>
* {glib,gmodule,gobject,gthread}/Makefile.am:
[Win32] Install also the .def files, to help users generate
import libraries for other compilers. Uninstall, too.
* glib-zip.in: Include .def files from above.
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)