* glib/gdebug.h: New header containing GTK_DEBUG-style debugging
support for GLib. Currently only the fatal_warnings debug option exists.
* glib/gmessages.c (g_log_msg_prefix_init): New one-shot function
for parsing G_MESSAGES_PREFIXED.
(_g_debug_init): New one-shot function for parsing G_DEBUG.
(g_log_write_prefix): Use g_log_msg_prefix_init().
(g_messages_init): Use g_log_msg_prefix_init() and _g_debug_init().
* glib/Makefile.am (libglib_1_3_la_SOURCES): Add gdebug.h.
* glib/Makefile.am (IGNORE_HFILES): Add gdebug.h.
* glib/running.sgml: Document the G_DEBUG environment variable.
* glib/tmpl/threads.sgml: Replace g_thread_wait() by
g_thread_join() in two places.
Fixes from Miroslaw Dobrzanski-Neumann (#71963)
* glib/giounix.c (g_io_channel_new_file): Fix trailing comma
in enum.
* configure.in: Check for unsetenv.
* test/uri-test.c: Fall back to trying putenv(VARNAME) if
unsetenv isn't present.
2002-02-20 Daniel Elstner <daniel.elstner@gmx.net>
* glib/gstring.[ch] (g_string_erase): Use gssize instead of gsize as type of the pos and len arguments. (#71964)
2002-02-19 Tor Lillqvist <tml@iki.fi>
* glib/gspawn-win32.c: Include <config.h> first here, too. Use
g_io_channel_read_chars() instead of (deprecated)
g_io_channel_read(). Set encoding to NULL for the channels used
for the pipes from the child.
* glib/giowin32.c (buffer_read): Do return G_IO_STATUS_EOF when
EOF has been reached. Otherwise, with the above change to
gspawn-win32.c, spawn-test hangs.
Mon Feb 18 20:18:23 2002 Owen Taylor <otaylor@redhat.com>
* glib/libcharset/Makefile.am (EXTRA_DIST): Remove
charset.alias from EXTRA_DIST; we don't want the
charset.alias from the make distcheck machine
on the target system!. (#70974, reported by
Ryan Lovett)
Mon Feb 18 12:40:36 2002 Owen Taylor <otaylor@redhat.com>
* configure.in: Turn off ISO varargs support for gcc-2.95
since it causes problems with ANSI and we we have GNUC
varargs. (#70024, reported by Morten Welinder, fix from
James Henstridge)
Sun Feb 17 11:37:06 2002 Owen Taylor <otaylor@redhat.com>
* 1.3.14
* glib/glibintl.h: Error out of config.h wasn't included
rather than including it, since config.h must be the
first thing included.
* glib/gconvert.c glib/gmarkup.c glib/gshell.c glib/gspawn.c
glib/gunibreak.c glib/gunidecomp.c glib/guniprop.c:
Include config.h as the first thing. (#71704, Morten
Welinder)
Fri Feb 15 10:41:51 2002 Owen Taylor <otaylor@redhat.com>
* NEWS: Updated.
* configure.in: Require autoconf-2.52, run AC_SYS_LARGEFILE.
(#71410, Sven Neumann)
* glib/giounix.c glib/giowin32.c glib/giochannel.[ch]:
Change offset type for g_io_channel_seek[_position] to
gint64.
2002-02-15 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
* tests/thread-test.c: Do not assume, that after
g_usleep(G_USEC_PER_SEC) the newly started thread began
running. Spotted by Miroslaw Dobrzanski-Neumann
<mne@mosaic-ag.com>. Make the test_g_static_rw_lock_thread threads
wait a random time. Make the test_g_static_rw_lock test run 5
seconds, not 1.
2002-02-14 Tor Lillqvist <tml@iki.fi>
* glib/gmessages.c (g_logv): Use the #if branch with
G_BREAKPOINT() also on Win32. Remove the separate __asm int 3 for
MSVC, G_BREAKPOINT() does exactly that.
2002-02-14 James Henstridge <james@daa.com.au>
* m4macros/glib-gettext.m4: add third argument to the AC_DEFINE
calls, so users of the macro don't need to add entries to
acconfig.h in their package.
2002-02-13 Havoc Pennington <hp@redhat.com>
* glib/gmain.c (g_main_context_check): never dispatch sources of
mixed priority, because while iterating over the dispatch array a
new source with more priority may be added, while a source with
less priority remains in the dispatch array
* glib/gmessages.h: Use "if (expr) { } else" as I meant to in the
first place. The other form can trigger warnings in some compilers
that suspect a ";" after "if (expr)" is an error.
* tests/markups/valid-4.gmarkup: Test attribute value delimiters.
* glib/gmarkup.c (g_markup_parse_context_parse): Support
' and " as attribute value delimiters. (#70677)
2002-02-09 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
* configure.in: Make --disable-threads work again. (#71034)
* gthread-impl.c: Only compile most of this file, if
G_THREAD_ENABLED is set.
Fri Feb 8 23:52:27 2002 Owen Taylor <otaylor@redhat.com>
* gobject/gvaluetransform.c: Register transformations for
gint64, guint64. (#70780, patch from Andy Wingo)
* configure.in: Handle missing G_GINT64_FORMAT,
G_GUINT64_FORMAT ... harder to require GNU libc than GCC.
* NEWS: Some cleanups that I had setting around.
* glib/gconvert.h: Make hostname parameter const char *.
* glib/gconvert.c: (g_unescape_uri_string): Added a new
"ASCII must not be escaped" feature, and some missing error
checking.
(is_escalphanum): New.
(is_escalpha): New.
(hostname_validate): New.
(g_filename_from_uri): Don't allow hostnames to include
escaped ASCII, validate hostnames with the new
hostname_validate.
(g_filename_to_uri): Validate hostnames with the new
hostname_validate.
* tests/uri-test.c: Updated tests to reflect the hostname
validation changes above.
* glib/gdate.c: (g_date_fill_parse_tokens): Remove the
<ctype.h> include and do isdigit -> g_ascii_isdigit.
Fri Feb 8 12:32:14 2002 Owen Taylor <otaylor@redhat.com>
* tests/hash-test.c (second_hash_test): Fix access to
freed memory in test case (Miroslaw Dobrzanski-Neumann).
Re-enable and debug some commented out code.
2002-02-08 Michael Natterer <mitch@gimp.org>
* glib/gdir.c: g_dir_open: added g_return_val_if_fail() to prevent
us from calling opendir(NULL) (which simply crashes).
2002-02-07 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
* glib/gfileutils.c (g_file_test): Do not follow symbolic links
for G_FILE_TEST_SYMLINK. Also fixed the correct "OR"-behaviour for
G_FILE_TEST_IS_EXECUTABLE and G_FILE_TEST_EXISTS. (#60048)
Wed Feb 6 14:44:18 2002 Owen Taylor <otaylor@redhat.com>
* glib/gmain.c (g_main_context_prepare): Handle
NULL entries (already dispatched) in pending_dispatches array
(pointed out by Manish Singh)
2002-02-04 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
* glib/gthread.c (g_thread_create_full): Delay allocation until
after all g_return_val_if_fail ().
* glib/gthread.h: Make depth member guint for cosmetic reasons.
* glib/gthread.c: (g_static_rec_mutex_unlock_full): depth should
be unsigned. All that spotted by Jrgen Viksell
<jorgen.viksell@telia.com>
2002-01-21 Jeffrey Stedfast <fejj@ximian.com>
* glib/gconvert.c (open_converter): Rewritten to cache iconv
conversion descriptors. On at least some Unix systems like
Solaris, iconv_open() must dlopen the necessary charset modules in
order to setup the descriptor. This can take a major toll on
performace if you are constantly opening and closing conversion
descriptors for the same charset conversions over and over.
(g_convert_with_fallback): Use close_converter() rather than
g_iconv_close() since open_converter() now caches iconv
descriptors.
Tue Jan 29 11:18:44 2002 Owen Taylor <otaylor@redhat.com>
* 1.3.13
* NEWS: Updated.
* configure.in: Micro == 13, binary age, interface age 0.
[ binary breakage was return type of g_signal_connect_object(),
probably could have used binary age == 0, but a little safer not to.]
* configure.in: Remove configure warning.
2002-01-28 Havoc Pennington <hp@pobox.com>
* glib/gmarkup.c (add_attribute): NULL-terminate
context->attr_values so g_strfreev() is safe.
Would previously crash if parsing was ended prior
to ending the start tag.
(g_markup_parse_context_parse): add a couple assertions
Mon Jan 28 17:56:10 2002 Owen Taylor <otaylor@redhat.com>
* glib/gmacros.h: Only use __FUNCTION__, __PRETTY_FUNCTION__ for
G_GNUC_FUNCTION, G_GNUC_PRETTY_FUNCTION, G_STRLOC when __GNUC__ <
3, since in 3.0.3 the semantics of these functions were changed in
an incompatible way. (#69097)
2002-01-23 Laszlo Peter <laca@ireland.sun.com>
* glib/gmessages.c (g_printf_string_upper_bound): return 1 more
for the trailing \0 when using vsnprintf. (#69474)
2002-01-23 Tor Lillqvist <tml@iki.fi>
* glib/gconvert.c: (strdup_len): Not used on Windows, don't even
compile it then.
(acceptable): Improve comments for the _acceptable_ table: put
each ASCII char above the hex number for it.
(g_escape_file_uri): On Windows, turn backslashes in the file name
into plain ("forward") slashes.
(g_filename_from_uri): On Windows, don't return the hostname
"localhost", because we can not be 100% sure it will be recognized
in all cases anyway, so simpler to turn it into a null
hostname.
Change slashes in the filename into backslashes, as that is the
more canonical separator.
Recognize drive letters (either followed by a colon or a vertical
bar, as used by some browsers), and if the filename part starts
with a such, don't include any (back)slash.
Don't drop any extra leading slash in the filename on Unix.
(g_filename_to_uri): On Windows, if the hostname is "localhost",
don't use it, for consistency with g_filename_from_uri().
tests/uri-test.c: Change accordingly, so that all tests pass on
Windows. Unix, too, I hope, though I couldn't check that now.
(main): Unset the G_BROKEN_FILENAMES environment variable on Unix,
as some tests require that filenames are in UTF-8. Is unsetenv()
portable?
These changes should fix bugs #59387, #59652, #59657 and #59658.