Include gerror.h before it is used for some g_thread_* functions.
[platform/upstream/glib.git] / ChangeLog.pre-2-10
index bdb39d6..e24e2e5 100644 (file)
@@ -1,3 +1,346 @@
+2000-09-01  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
+
+       * gerror.c, gerror.h (g_propagte_error): Added function
+       g_propagte_error to hand over local errors to the calling
+       function.
+
+       * glib.h: Include gerror.h before it is used for some g_thread_*
+       functions.
+
+       * gthread.c, gthreadpool.c, glib.h: Enable error reporting for
+       thread creation, namly for g_thread_create, g_thread_pool_new,
+       g_thread_pool_push and g_thread_pool_set_max_threads.
+
+       * tests/thread-test.c, tests/threadpool-test.c: Adapted
+       accordingly.
+       
+2000-08-31  Tor Lillqvist  <tml@iki.fi>
+
+       * glib.h
+       * glib.def
+       * giowin32.c (g_io_channel_win32_make_pollfd): New function, to
+       make a GPollFD from a GIOChannel. Creates the events and starts
+       the reader thread if necessary.
+
+       * glib.h
+       * giowin32.c (g_io_channel_win32_poll): No use for separate
+       condition parameter.
+
+       * gmain.c (g_get_current_time): (Win32): Simplify, use
+       GetSystemTimeAsFileTime().
+
+2000-08-27  Tor Lillqvist  <tml@iki.fi>
+
+       * giowin32.c (g_io_channel_win32_poll): New function, otherwise
+       like g_io_channel_win32_wait_for_condition(), but accept several
+       GPollFDs.
+       (g_io_channel_win32_wait_for_condition): Call
+       g_io_channel_win32_poll().
+
+       * glib.h: Declare g_io_channel_win32_poll().
+
+       * gwin32.c (g_win32_error_message): Don't believe return value
+       from FormatMessage.
+
+2000-08-25 Elliot Lee <sopwith@redhat.com>
+       * glib.h, gunicode.h, gmodule/gmodule.h:
+       : Mark the following functions G_GNUC_CONST (to allow
+       optimization) because their results are a function of only their parameters:
+       g_int_hash, g_int_equal, g_direct_hash, g_direct_equal, g_quark_to_string,
+       g_date_is_leap_year, g_date_days_in_month, g_date_monday_weeks_in_year,
+       g_date_sunday_weeks_in_year, g_spaced_primes_closest, g_unichar_is*,
+       g_unichar_to*, g_unichar_*digit_value, g_unichar_type
+
+2000-08-21 Elliot Lee <sopwith@redhat.com>
+       * gobject/Makefile.am, gobject/gobject-query.c, gobject/gparamspecs.c: Fix inclusion of
+       config.h
+
+Mon Aug 21 14:46:23 2000  Owen Taylor  <otaylor@redhat.com>
+
+       * tests/gio-test.c: Fix a couple of trivial bugs that
+       were causing warnings.
+
+Mon Aug 21 14:39:36 2000  Owen Taylor  <otaylor@redhat.com>
+
+       * glib.h: Use C99 varargs macros where possible 
+       (check __STDC_VERSION__), otherwise, on gcc, use an alternate 
+       form of gcc varargs which is more likely
+       to be supported going forward. (Based on some code
+       from Raja Harinath)
+
+2000-08-17  Darin Adler  <darin@eazel.com>
+
+       * glib.h:
+       * garray.c: (g_array_free), (g_ptr_array_free),
+       (g_byte_array_free): Return the data left behind.
+       * gstring.c: (g_string_free): Return the data left behind.
+
+       Changed the free calls that leave data behind so they
+       return a pointer to the left-behind data, NULL if told not
+       to leave anything behind. This makes these calls easier
+       to use correctly, without any incompatible API change for
+       callers that don't know about the return value. Of course,
+       it would be even clearer if the free calls weren't dual-purpose
+       in the first place.
+
+2000-08-12  Tor Lillqvist  <tml@iki.fi>
+
+       * giowin32.c: Some indentation and spacing fixes. Add some more
+       logging.
+       (g_io_win32_add_watch): New function, with common code from
+       g_io_win32_fd_add_watch and g_io_win32_sock_add_watch. Don't start
+       more than one reader thread for a GIOChannel. We should obviously
+       have just one reader thread reading a file descriptor or socket.
+
+2000-08-10  Havoc Pennington  <hp@redhat.com>
+
+       * gthread-2.0.pc.in (Cflags): don't duplicate glib Cflags
+
+       * gmodule-2.0.pc.in (Cflags): don't duplicate glib Cflags
+
+       * gobject-2.0.pc.in (Cflags): don't duplicate Cflags from glib
+       itself
+
+2000-08-10  Havoc Pennington  <hp@redhat.com>
+
+       * glib-2.0.pc.in (Cflags): Look in glib-2.0/include for
+       glibconfig.h
+
+2000-08-07  Tor Lillqvist  <tml@iki.fi>
+
+       * tests/gio-test.c (shutdown_source): New function, that calls
+       g_source_remove(). Check return value of g_source_remove(), and
+       decrement running subprocess counter only if g_source_remove()
+       actually did remove the source.
+
+       (recv_message): Call shutdown_source() on EOF condition. Return
+       FALSE on G_IO_HUP and G_IO_ERR condition. Fix printf format typo.
+
+Sun Aug  6 20:06:02 2000  Tim Janik  <timj@gtk.org>
+
+        * gmessages.c (g_log_domain_check_free): keep *last updated while
+        running through the domain list, so we don't screw up the removal,
+        patch provided by Gady Kozma <gadykozma@hotmail.com>.
+
+Sun Aug  6 20:03:41 2000  Tim Janik  <timj@gtk.org>
+
+        * gmessages.c (g_log_remove_handler): keep *last updated while running
+        through the handler list, so we don't screw up the removal.
+
+Sun Jul 30 16:54:13 2000  Owen Taylor  <otaylor@redhat.com>
+
+        * gunicode.h: Fix stray character
+       
+       * gutf8.c (g_unichar_to_utf8): Allow outbuf to be NULL, in
+       which case we just compute the length.
+
+2000-07-31  Havoc Pennington  <hp@redhat.com>
+
+       * Makefile.am (EXTRA_DIST): forgot to add .pc.in to EXTRA_DIST
+
+2000-07-31  Havoc Pennington  <hp@redhat.com>
+
+        * glib-2.0.pc.in, gobject-2.0.pc.in, gmodule-2.0.pc.in,
+       gobject-2.0.pc.in: pkg-config data files         
+       
+       * Makefile.am: Install/dist the .pc files
+
+       * configure.in: Output the .pc files
+
+2000-07-31  Tor Lillqvist  <tml@iki.fi>
+
+       * giowin32.c (buffer_read): The code didn't compile (must
+       have been sleepy when committing). "return" instead of "break"
+
+       (g_io_win32_fd_add_watch): Cannot check if the file descriptor is
+       readable by calling ReadFile to read zero bytes. ReadFile blocks
+       on NT even if trying to read nothing at all. So, don't check if
+       file descriptor is readable; assume this function isn't called
+       otherwise.
+
+Sun Jul 30 10:44:16 2000  Tim Janik  <timj@gtk.org>
+
+       * gmain.c (g_get_current_time): fix tor's recent changes which
+       got rid of a required variable in the non-windows path.
+
+2000-07-30  Tor Lillqvist  <tml@iki.fi>
+
+       Finally, a new and improved IO Channel and condition watch
+       implementation for Win32. Based on code provided by Craig Setera.
+
+       When watching file descriptors, for which there is no select()
+       like functionality on Win32 that would work on all Win32 platforms
+       for all types of file descriptors (including anonymous pipes), we
+       start a new thread that blocks while trying to read from the file
+       descriptor. When the read returns, a Win32 Event is signalled that
+       the polling routine eventually notices. Meanwhile, the data being
+       read is stored in a circular buffer, from where the IO channel's
+       read() method picks it up.
+       If the buffer fills up the reading thread has to wait for space
+       becoming available. For this another Win32 Event is used. The IO
+       Channel's read() method signals this when it has read some data
+       out of the buffer.
+
+       The separate reader thread(s), and the circular buffer(s) with
+       associated events mean lots of possibilities for fun parallellism
+       errors. But it seems to work OK, i.e. GIMP runs.
+
+       * gmain.c: Small changes to the Win32 polling function.
+       (g_main_win32_get_poll_func): New function. Perhaps it would be a
+       good idea to provide this on all platforms.
+
+       * giowin32.c: The bulk of the new implementation.
+       (g_io_channel_win32_wait_for_condition): New function. To be used
+       where on Unix one does a select() on the channel's fd, like
+       libgimp's gimp_extension_process(). Could be provided on all
+       platforms.
+
+       * glib.h: Update documentation for IO Channels on Win32. Remove
+       the declarations for the as of now obsolete old functions related
+       to IO Channels for pipes with "wakeup" messages.
+       
+       * glib.def: Some new functions.
+       
+       * tests/gio-test.c: New file, to test GIOChannel and main loop.
+
+       * tests/Makefile.am
+       * tests/makefile.mingw.in: Add it.
+
+       (Later the same night:)
+
+       * giowin32.c: Compile in the debugging code all the time, but only
+       output debug messages if told so. Add (unadvertised) function to
+       turn on/off debug messages for a channel.
+       
+       (buffer_read): Don't loop. It is expected behaviour to return a
+       short read occasionally, for instance when reading from
+       pipes. It's the calling code that should loop if it *knows* how
+       much the writer has written.
+
+       * tests/gio-test.c: Correct the program's name in the output.
+       (recv_message): Loop calling g_io_channel_read() (in a new
+       function read_all()) until we have all the bytes we want (that we
+       know the writer has written/will write).
+       
+Thu Jul 27 05:15:11 2000  Tim Janik  <timj@gtk.org>
+
+       * gstrfuncs.c (g_strlcpy, g_strlcat): completed tor's fix
+       to cover both #ifdef branches.
+
+2000-07-26  Tor Lillqvist  <tml@iki.fi>
+
+       * gstrfuncs.c (g_strlcpy, g_strlcat): Return 0 on error, not NULL.
+
+       * glib.def: Add g_strlcpy, g_strlcat.
+
+       * glibconfig.h.win32.in: Add gsize and gssize.
+
+Wed Jul 26 12:59:31 2000  Tim Janik  <timj@gtk.org>
+
+       * *.[hc]: applied patch from Andreas Persenius <ndap@swipnet.se> that
+       updates the license headers to the GNU Lesser General Public License,
+       as well as updating the copyright year to 2000.
+
+Wed Jul 26 05:47:48 2000  Tim Janik  <timj@gtk.org>
+
+       * configure.in:
+       * testglib.c:
+       * gstrfuncs.c:
+       * glib.h: added g_strlcat() and g_strlcpy() wrappers, supplied by
+       David Wheeler <dwheeler@ida.org>:
+
+        * glib.h, gstrfuncs.c: added g_strlcpy and g_strlcat to support
+          safe manipulation of fixed-length string buffers.
+          These functions were originally developed by Todd Miller to simplify
+          development of security-related programs, and
+          are available on many (but not all) Unix-like systems,
+          including OpenBSD, FreeBSD, and Solaris.  See
+          ftp://ftp.openbsd.org/pub/OpenBSD/src/lib/libc/string/strlcpy.3
+          and http://www.openbsd.org/security.html.
+          If there's a strlcpy/strlcat on the system, it's called, otherwise
+          an implementation is provided.
+
+        * testglib.c: Added tests for g_strlcpy, g_strlcat.
+
+Wed Jul 26 05:03:24 2000  Tim Janik  <timj@gtk.org>
+
+       * acglib.m4 (GLIB_SIZEOF): include <stdlib.h> and <stddef.h> if
+       STDC_HEADERS is defined.
+
+       * glib.h:
+       * glibconfig.h: define gsize and gssize in terms of GLIB_SIZEOF_SIZE_T
+
+       * glib.h (g_return_if_reached): applied darin's fix for copy'n
+       paste error in the macro implementation.
+
+Wed Jul 26 00:46:03 2000  Tim Janik  <timj@gtk.org>
+
+       * glib.h: applied patch from Darin Adler <darin@eazel.com> which
+       supplies g_return_if_reached(), g_return_val_if_reached() and
+       g_critical().
+
+2000-07-22  Tor Lillqvist  <tml@iki.fi>
+
+       * build-dll: Fix resource handling, the resource file got left out
+       from the DLL after all... Remove the WIN32APIHEADERS, not needed
+       with current windres.
+
+       * glib.def: Add new functions.
+
+2000-07-20  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
+
+       * gutils.c, glib.h: Mark the functions g_basename and g_dirname
+       deprecated. They will issue an warning once, when compiled with
+       G_ENABLE_DEBUG, but continue to work as before. Instead the
+       functions g_path_get_basename and g_path_get_dirname should be
+       used, which BOTH return newly allocated memory, that has to freed
+       by g_free. The new g_path_get_basename now strips trailing slashes
+       from the path. This fixes #5097. For discussion see
+       http://mail.gnome.org/pipermail/gtk-devel-list/2000-April/003139.html
+
+       * gwin32.c, testglib.c, tests/dirname-test.c: Use the new
+       functions instead of the old ones.
+
+       * ghash.c, gscanner.c, glib.h: Mark the functions
+       g_hash_table_freeze, g_hash_table_thaw and thus
+       g_scanner_freeze_symbol_table and g_scanner_thaw_symbol_table
+       deprecated. They will issue an warning once, when compiled with
+       G_ENABLE_DEBUG. This fixes Bug #3883. For discussion see
+       http://mail.gnome.org/pipermail/gtk-devel-list/2000-April/003139.html
+       
+2000-07-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
+
+       * configure.in, glib.h: glibconfig.h and glib.h now include files
+       outside of the extern "C" block. Makes some C++ compiler
+       happy. Reported by Denis Vakatov <vakatov@peony.nlm.nih.gov>.
+
+Sat Jul 15 23:49:03 2000  Owen Taylor  <otaylor@redhat.com>
+
+       * glib/glib.texi: Remove incomplete start of info file -
+       real docs are in RDP.   
+
+Sat Jul 15 22:44:22 2000  Owen Taylor  <otaylor@redhat.com>
+
+       * configure.in: Add build/Makefile and 
+       build/win32/Makefile to AC_OUTPUT() so things build
+       again.
+
+Sat Jul 15 09:11:46 2000  Tim Janik  <timj@gtk.org>
+
+       * gstrfuncs.c (g_strncasecmp): fixed an off by 0 error (yeah,
+       the function went off when the while (n--) loop failed due to
+       n==0 ;), reported by Jean-Louis HAMEL <jlhamel@club-internet.fr>.
+
+2000-07-15  Tor Lillqvist  <tml@iki.fi>
+
+       * Makefile.am (SUBDIRS): Include the "build" module in GLib, too,
+       to make it more self-contained. If your CVS client doesn't
+       automatically get it, do a cvs get build in glib.
+
+       * */makefile.mingw.in: Include make.mingw from build in the glib
+       source directory.
+
 Fri Jul 14 16:26:35 2000  Owen Taylor  <otaylor@redhat.com>
 
        * Release 1.3.1