1 2000-09-21 Tor Lillqvist <tml@iki.fi>
3 * makefile.mingw.in: Add gconvert.o. Use libiconv.
5 * config.h.win32.in: Define HAVE_GETCWD.
7 * glib.def: Add new entry points.
9 2000-09-21 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
11 * configure.in: The last released automake (1.4) still requires
12 AM_PROG_LIBTOOL instead of AC_PROG_LIBTOOL, so use that for the
15 2000-09-19 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
17 * acconfig.h, configure.in, gutils.c: Test for the existence of
18 getcwd, and use it only when found.
20 * glib.h: Only use the gcc-variable-macro-argument-extension for
21 gcc >= 2.4. Both patches from Jonas Oberg <jonas@gnu.org>.
23 Mon Sep 18 10:58:21 2000 Owen Taylor <otaylor@redhat.com>
25 * gutf8.c: Implement g_ucs4_to_utf8 which was in
26 the header file but not implemented.
28 Sun Sep 17 2000 Elliot Lee <sopwith@redhat.com>
30 * glib.h configure.in: Define g_alloca() as an
31 alloca-that-works-anywhere.
33 * gconvert.c: Fix warnings which could have caused problems on
36 Sun Sep 10 12:37:40 2000 Owen Taylor <otaylor@redhat.com>
38 * glib.h gconvert.c (g_convert): Havoc Pennington's implementation
39 of convenient character set conversion using iconv, with
40 the addition of GError. We probably need a fallback that
41 just does conversions between, say UTF-8,16,32 and ISO-8859-1
42 for targets without iconv at all.
44 Also add g_convert_with_fallback() to take care of conversions
45 where we accept some loss going to the target encoding.
47 2000-09-10 Havoc Pennington <hp@redhat.com>
49 * gutf8.c (g_utf8_validate): Add this function.
51 Sat Sep 9 18:50:42 2000 Owen Taylor <otaylor@redhat.com>
53 * gstrfuncs.c (g_strescape): Add a missing g_return_if_fail().
55 Mon Aug 21 03:57:46 2000 Tim Janik <timj@gtk.org>
57 * glib.h (G_BREAKPOINT): for non-i386 and non-alpha, or non gcc,
58 implement BREAKPOINT() as raise (5 /* SIGTRAP */);
60 * glib.h: provide user-definable switch G_IMPLEMENT_INLINES,
61 to turn on compilation of inline function implementations provided
62 in header files with extern linkage.
63 wrap inline function implementations into ifdef __G_UTILS_C__, so we
64 really only compile them for gutils.c and not also into arbitrary user
65 code that wants to make use of G_IMPLEMENT_INLINES.
66 adjusted comment apropriately.
68 * gutils.c: to turn on compilation of inline functions, provide
69 #define G_IMPLEMENT_INLINES 1 and #define __G_UTILS_C__.
71 2000-09-06 Havoc Pennington <hp@redhat.com>
75 * docs/reference/glib/tmpl/error_reporting.sgml: docs
77 Wed Sep 6 10:28:34 2000 Owen Taylor <otaylor@redhat.com>
79 * guniprop.c gunicode.h gutf8.c: Some inline docs fixes.
81 2000-09-06 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
83 * glib.h, gtimer.c, tests/thread-test.c:
84 s/G_MICROSEC/G_USEC_PER_SEC/
86 * glib.h: Removed G_G{U}{SHORT|INT|LONG}_FORMAT from glib.h, as
87 they are really superfluous.
89 Tue Sep 5 20:16:27 2000 Owen Taylor <otaylor@redhat.com>
91 * configure.in docs/Makefile.am: Add gtk-doc checks
92 for newly added docs/reference/ subdir.
94 2000-09-05 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
96 * gthread.c (g_thread_error_quark): Don't use a G_LOCK, as it
99 2000-09-01 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
101 * gstring.c (g_string_free): Use g_return_val_if_fail instead of
102 g_return_if_fail, as the function now is supposed to return
105 * gerror.c, gerror.h (g_propagte_error): Added function
106 g_propagte_error to hand over local errors to the calling
109 * glib.h: Include gerror.h before it is used for some g_thread_*
112 * gthread.c, gthreadpool.c, glib.h: Enable error reporting for
113 thread creation, namly for g_thread_create, g_thread_pool_new,
114 g_thread_pool_push and g_thread_pool_set_max_threads.
116 * tests/thread-test.c, tests/threadpool-test.c: Adapted
119 2000-08-31 Tor Lillqvist <tml@iki.fi>
123 * giowin32.c (g_io_channel_win32_make_pollfd): New function, to
124 make a GPollFD from a GIOChannel. Creates the events and starts
125 the reader thread if necessary.
128 * giowin32.c (g_io_channel_win32_poll): No use for separate
131 * gmain.c (g_get_current_time): (Win32): Simplify, use
132 GetSystemTimeAsFileTime().
134 2000-08-27 Tor Lillqvist <tml@iki.fi>
136 * giowin32.c (g_io_channel_win32_poll): New function, otherwise
137 like g_io_channel_win32_wait_for_condition(), but accept several
139 (g_io_channel_win32_wait_for_condition): Call
140 g_io_channel_win32_poll().
142 * glib.h: Declare g_io_channel_win32_poll().
144 * gwin32.c (g_win32_error_message): Don't believe return value
147 2000-08-25 Elliot Lee <sopwith@redhat.com>
149 * glib.h, gunicode.h, gmodule/gmodule.h:
150 : Mark the following functions G_GNUC_CONST (to allow
151 optimization) because their results are a function of only their parameters:
152 g_int_hash, g_int_equal, g_direct_hash, g_direct_equal, g_quark_to_string,
153 g_date_is_leap_year, g_date_days_in_month, g_date_monday_weeks_in_year,
154 g_date_sunday_weeks_in_year, g_spaced_primes_closest, g_unichar_is*,
155 g_unichar_to*, g_unichar_*digit_value, g_unichar_type
157 2000-08-21 Elliot Lee <sopwith@redhat.com>
159 * gobject/Makefile.am, gobject/gobject-query.c, gobject/gparamspecs.c: Fix inclusion of
162 Mon Aug 21 14:46:23 2000 Owen Taylor <otaylor@redhat.com>
164 * tests/gio-test.c: Fix a couple of trivial bugs that
165 were causing warnings.
167 Mon Aug 21 14:39:36 2000 Owen Taylor <otaylor@redhat.com>
169 * glib.h: Use C99 varargs macros where possible
170 (check __STDC_VERSION__), otherwise, on gcc, use an alternate
171 form of gcc varargs which is more likely
172 to be supported going forward. (Based on some code
175 2000-08-17 Darin Adler <darin@eazel.com>
178 * garray.c: (g_array_free), (g_ptr_array_free),
179 (g_byte_array_free): Return the data left behind.
180 * gstring.c: (g_string_free): Return the data left behind.
182 Changed the free calls that leave data behind so they
183 return a pointer to the left-behind data, NULL if told not
184 to leave anything behind. This makes these calls easier
185 to use correctly, without any incompatible API change for
186 callers that don't know about the return value. Of course,
187 it would be even clearer if the free calls weren't dual-purpose
190 2000-08-12 Tor Lillqvist <tml@iki.fi>
192 * giowin32.c: Some indentation and spacing fixes. Add some more
194 (g_io_win32_add_watch): New function, with common code from
195 g_io_win32_fd_add_watch and g_io_win32_sock_add_watch. Don't start
196 more than one reader thread for a GIOChannel. We should obviously
197 have just one reader thread reading a file descriptor or socket.
199 2000-08-10 Havoc Pennington <hp@redhat.com>
201 * gthread-2.0.pc.in (Cflags): don't duplicate glib Cflags
203 * gmodule-2.0.pc.in (Cflags): don't duplicate glib Cflags
205 * gobject-2.0.pc.in (Cflags): don't duplicate Cflags from glib
208 2000-08-10 Havoc Pennington <hp@redhat.com>
210 * glib-2.0.pc.in (Cflags): Look in glib-2.0/include for
213 2000-08-07 Tor Lillqvist <tml@iki.fi>
215 * tests/gio-test.c (shutdown_source): New function, that calls
216 g_source_remove(). Check return value of g_source_remove(), and
217 decrement running subprocess counter only if g_source_remove()
218 actually did remove the source.
220 (recv_message): Call shutdown_source() on EOF condition. Return
221 FALSE on G_IO_HUP and G_IO_ERR condition. Fix printf format typo.
223 Sun Aug 6 20:06:02 2000 Tim Janik <timj@gtk.org>
225 * gmessages.c (g_log_domain_check_free): keep *last updated while
226 running through the domain list, so we don't screw up the removal,
227 patch provided by Gady Kozma <gadykozma@hotmail.com>.
229 Sun Aug 6 20:03:41 2000 Tim Janik <timj@gtk.org>
231 * gmessages.c (g_log_remove_handler): keep *last updated while running
232 through the handler list, so we don't screw up the removal.
234 Sun Jul 30 16:54:13 2000 Owen Taylor <otaylor@redhat.com>
236 * gunicode.h: Fix stray character
238 * gutf8.c (g_unichar_to_utf8): Allow outbuf to be NULL, in
239 which case we just compute the length.
241 2000-07-31 Havoc Pennington <hp@redhat.com>
243 * Makefile.am (EXTRA_DIST): forgot to add .pc.in to EXTRA_DIST
245 2000-07-31 Havoc Pennington <hp@redhat.com>
247 * glib-2.0.pc.in, gobject-2.0.pc.in, gmodule-2.0.pc.in,
248 gobject-2.0.pc.in: pkg-config data files
250 * Makefile.am: Install/dist the .pc files
252 * configure.in: Output the .pc files
254 2000-07-31 Tor Lillqvist <tml@iki.fi>
256 * giowin32.c (buffer_read): The code didn't compile (must
257 have been sleepy when committing). "return" instead of "break"
259 (g_io_win32_fd_add_watch): Cannot check if the file descriptor is
260 readable by calling ReadFile to read zero bytes. ReadFile blocks
261 on NT even if trying to read nothing at all. So, don't check if
262 file descriptor is readable; assume this function isn't called
265 Sun Jul 30 10:44:16 2000 Tim Janik <timj@gtk.org>
267 * gmain.c (g_get_current_time): fix tor's recent changes which
268 got rid of a required variable in the non-windows path.
270 2000-07-30 Tor Lillqvist <tml@iki.fi>
272 Finally, a new and improved IO Channel and condition watch
273 implementation for Win32. Based on code provided by Craig Setera.
275 When watching file descriptors, for which there is no select()
276 like functionality on Win32 that would work on all Win32 platforms
277 for all types of file descriptors (including anonymous pipes), we
278 start a new thread that blocks while trying to read from the file
279 descriptor. When the read returns, a Win32 Event is signalled that
280 the polling routine eventually notices. Meanwhile, the data being
281 read is stored in a circular buffer, from where the IO channel's
282 read() method picks it up.
284 If the buffer fills up the reading thread has to wait for space
285 becoming available. For this another Win32 Event is used. The IO
286 Channel's read() method signals this when it has read some data
289 The separate reader thread(s), and the circular buffer(s) with
290 associated events mean lots of possibilities for fun parallellism
291 errors. But it seems to work OK, i.e. GIMP runs.
293 * gmain.c: Small changes to the Win32 polling function.
294 (g_main_win32_get_poll_func): New function. Perhaps it would be a
295 good idea to provide this on all platforms.
297 * giowin32.c: The bulk of the new implementation.
298 (g_io_channel_win32_wait_for_condition): New function. To be used
299 where on Unix one does a select() on the channel's fd, like
300 libgimp's gimp_extension_process(). Could be provided on all
303 * glib.h: Update documentation for IO Channels on Win32. Remove
304 the declarations for the as of now obsolete old functions related
305 to IO Channels for pipes with "wakeup" messages.
307 * glib.def: Some new functions.
309 * tests/gio-test.c: New file, to test GIOChannel and main loop.
312 * tests/makefile.mingw.in: Add it.
314 (Later the same night:)
316 * giowin32.c: Compile in the debugging code all the time, but only
317 output debug messages if told so. Add (unadvertised) function to
318 turn on/off debug messages for a channel.
320 (buffer_read): Don't loop. It is expected behaviour to return a
321 short read occasionally, for instance when reading from
322 pipes. It's the calling code that should loop if it *knows* how
323 much the writer has written.
325 * tests/gio-test.c: Correct the program's name in the output.
326 (recv_message): Loop calling g_io_channel_read() (in a new
327 function read_all()) until we have all the bytes we want (that we
328 know the writer has written/will write).
330 Thu Jul 27 05:15:11 2000 Tim Janik <timj@gtk.org>
332 * gstrfuncs.c (g_strlcpy, g_strlcat): completed tor's fix
333 to cover both #ifdef branches.
335 2000-07-26 Tor Lillqvist <tml@iki.fi>
337 * gstrfuncs.c (g_strlcpy, g_strlcat): Return 0 on error, not NULL.
339 * glib.def: Add g_strlcpy, g_strlcat.
341 * glibconfig.h.win32.in: Add gsize and gssize.
343 Wed Jul 26 12:59:31 2000 Tim Janik <timj@gtk.org>
345 * *.[hc]: applied patch from Andreas Persenius <ndap@swipnet.se> that
346 updates the license headers to the GNU Lesser General Public License,
347 as well as updating the copyright year to 2000.
349 Wed Jul 26 05:47:48 2000 Tim Janik <timj@gtk.org>
354 * glib.h: added g_strlcat() and g_strlcpy() wrappers, supplied by
355 David Wheeler <dwheeler@ida.org>:
357 * glib.h, gstrfuncs.c: added g_strlcpy and g_strlcat to support
358 safe manipulation of fixed-length string buffers.
359 These functions were originally developed by Todd Miller to simplify
360 development of security-related programs, and
361 are available on many (but not all) Unix-like systems,
362 including OpenBSD, FreeBSD, and Solaris. See
363 ftp://ftp.openbsd.org/pub/OpenBSD/src/lib/libc/string/strlcpy.3
364 and http://www.openbsd.org/security.html.
365 If there's a strlcpy/strlcat on the system, it's called, otherwise
366 an implementation is provided.
368 * testglib.c: Added tests for g_strlcpy, g_strlcat.
370 Wed Jul 26 05:03:24 2000 Tim Janik <timj@gtk.org>
372 * acglib.m4 (GLIB_SIZEOF): include <stdlib.h> and <stddef.h> if
373 STDC_HEADERS is defined.
376 * glibconfig.h: define gsize and gssize in terms of GLIB_SIZEOF_SIZE_T
378 * glib.h (g_return_if_reached): applied darin's fix for copy'n
379 paste error in the macro implementation.
381 Wed Jul 26 00:46:03 2000 Tim Janik <timj@gtk.org>
383 * glib.h: applied patch from Darin Adler <darin@eazel.com> which
384 supplies g_return_if_reached(), g_return_val_if_reached() and
387 2000-07-22 Tor Lillqvist <tml@iki.fi>
389 * build-dll: Fix resource handling, the resource file got left out
390 from the DLL after all... Remove the WIN32APIHEADERS, not needed
391 with current windres.
393 * glib.def: Add new functions.
395 2000-07-20 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
397 * gutils.c, glib.h: Mark the functions g_basename and g_dirname
398 deprecated. They will issue an warning once, when compiled with
399 G_ENABLE_DEBUG, but continue to work as before. Instead the
400 functions g_path_get_basename and g_path_get_dirname should be
401 used, which BOTH return newly allocated memory, that has to freed
402 by g_free. The new g_path_get_basename now strips trailing slashes
403 from the path. This fixes #5097. For discussion see
404 http://mail.gnome.org/pipermail/gtk-devel-list/2000-April/003139.html
406 * gwin32.c, testglib.c, tests/dirname-test.c: Use the new
407 functions instead of the old ones.
409 * ghash.c, gscanner.c, glib.h: Mark the functions
410 g_hash_table_freeze, g_hash_table_thaw and thus
411 g_scanner_freeze_symbol_table and g_scanner_thaw_symbol_table
412 deprecated. They will issue an warning once, when compiled with
413 G_ENABLE_DEBUG. This fixes Bug #3883. For discussion see
414 http://mail.gnome.org/pipermail/gtk-devel-list/2000-April/003139.html
416 2000-07-19 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
418 * configure.in, glib.h: glibconfig.h and glib.h now include files
419 outside of the extern "C" block. Makes some C++ compiler
420 happy. Reported by Denis Vakatov <vakatov@peony.nlm.nih.gov>.
422 Sat Jul 15 23:49:03 2000 Owen Taylor <otaylor@redhat.com>
424 * glib/glib.texi: Remove incomplete start of info file -
425 real docs are in RDP.
427 Sat Jul 15 22:44:22 2000 Owen Taylor <otaylor@redhat.com>
429 * configure.in: Add build/Makefile and
430 build/win32/Makefile to AC_OUTPUT() so things build
433 Sat Jul 15 09:11:46 2000 Tim Janik <timj@gtk.org>
435 * gstrfuncs.c (g_strncasecmp): fixed an off by 0 error (yeah,
436 the function went off when the while (n--) loop failed due to
437 n==0 ;), reported by Jean-Louis HAMEL <jlhamel@club-internet.fr>.
439 2000-07-15 Tor Lillqvist <tml@iki.fi>
441 * Makefile.am (SUBDIRS): Include the "build" module in GLib, too,
442 to make it more self-contained. If your CVS client doesn't
443 automatically get it, do a cvs get build in glib.
445 * */makefile.mingw.in: Include make.mingw from build in the glib
448 Fri Jul 14 16:26:35 2000 Owen Taylor <otaylor@redhat.com>
452 Fri Jul 14 12:22:49 2000 Owen Taylor <otaylor@redhat.com>
454 * configure.in Makefile.am glib-config.m4 glib.m4: Move
455 glib-config to glib-config-2.0 move glib.m4 to
458 * Makefile.am gobject/Makefile.am gmodule/Makefile.am
459 gthread/Makefile.am tests/Makefile.am: Change
460 library names to libglib-1.3.la, etc, so that we
461 can distinguish glib-1.2 and glib-2.0 on the linkline.
463 * Makefile.am gobject/Makefile.am gmodule/Makefile.am:
464 Move include files into /usr/include/glib-2.0.
466 Thu Jul 6 18:54:49 2000 Owen Taylor <otaylor@redhat.com>
468 * docs/Makefile.am (EXTRA_DIST): Remove info files
471 2000-07-14 Tor Lillqvist <tml@iki.fi>
473 * glib.def: Add g_error functions.
475 * makefile.mingw.in: Add gbacktrace.o.
477 * gbacktrace.c: No need to include <process.h>.
479 2000-07-12 Havoc Pennington <hp@redhat.com>
481 * glib.h: #include <gerror.h>
483 * Makefile.am (include_HEADERS): Add gerror.h
484 (libglib_la_SOURCES): Add gbacktrace.c
486 * gbacktrace.c: Move g_on_error_query() in here (moved on the
487 server, so history is preserved)
489 * gerror.h: GError interface
491 * gerror.c: GError implementation replaces stuff that's now in
494 Sun Jul 9 21:20:45 2000 Owen Taylor <otaylor@redhat.com>
496 * gunicode.h: Include stddef.h instead of stdlib.h
498 2000-07-08 Tor Lillqvist <tml@iki.fi>
500 * glib.h (GLIB_VAR): Rename the GUTILS_C_VAR macro to GLIB_VAR.
502 * gunicode.h: Mark the g_utf8_skip array with GLIB_VAR.
504 * glib.def: Add two missing entry points.
506 Thu Jul 6 15:35:28 2000 Owen Taylor <otaylor@redhat.com>
510 * Makefile.am (EXTRA_DIST): Dist fixes.
512 * configure.in: Moderate the warnings just a little bit.
514 2000-07-05 Tor Lillqvist <tml@iki.fi>
516 * README.win32: Update.
518 Mon Jul 3 17:58:02 2000 Owen Taylor <otaylor@redhat.com>
520 * gutf8.c (g_utf8_get_charset_internal): Fix up
521 to correspond to configure.in checks.
523 Mon Jul 3 17:18:19 2000 Owen Taylor <otaylor@redhat.com>
525 * glib.h: Comment g_get_codeset() out of the header file
526 temporarily. (Very similar to g_get_charset(), need
529 2000-07-01 Tor Lillqvist <tml@iki.fi>
531 * glib.def: Add new entry points.
533 * makefile.{mingw,msc}.in: Add the new Unicode object files.
535 Thu Jun 29 15:57:28 2000 Owen Taylor <otaylor@redhat.com>
539 * Makefile.am: added snapcheck target to go along with snapshot
541 * gstring.c glib.h (g_string_hash): Add g_string_hash to
542 go along with g_string_equal.
544 Tue Jun 27 12:40:23 EDT 2000 David A. Wheeler <dwheeler@dwheeler.com>
546 * glib.h: Added g_string_equal for comparing GStrings;
547 changed g_str_equal so it returns gboolean (instead of gint).
549 * gstring.c: Modified GString implementation to support embedded
550 ASCII NUL ('\0') characters, and implemented g_string_equal.
552 * testglib.c tests/string-test.c: Added tests for g_string_equal
553 and tests for proper handling of embedded ASCII NUL characters.
555 Wed Jun 28 22:52:00 2000 Owen Taylor <otaylor@redhat.com>
557 * Makefile.am (libglib_la_SOURCES): Fix
558 gunichartable.h => gunichartables.h. (From Eric Limings)
560 Fri Jun 23 17:20:26 2000 Tim Janik <timj@gtk.org>
562 * glib.h: define gstring in terms of gchar*. this typedef reflects
563 the type name of the primitive G_TYPE_STRING in the gobject module.
565 Wed Jun 21 12:09:03 2000 Owen Taylor <otaylor@redhat.com>
567 * gunicode.h gutf8.c guniprop.c gunidecomp.[ch] gunichartables.h
568 Makefile.am glib.h: Initial pass at adding unicode support
569 functions. A few things still need to be implemented, a bit
570 of cleanup needs to be done, tests need to be added, and
571 the docs need to be finished, but this should allow replacing
572 most or all use of libunicode.
574 2000-06-06 Tor Lillqvist <tml@iki.fi>
576 * giowin32.c (g_io_channel_win32_pipe_readable): If we are
577 watching the same pipe for different conditions (with different
578 callbacks), check them all. Only call the callback for G_IO_IN
579 from here. (This bug popped up when a watch for G_IO_ERR|G_IO_HUP
580 was added to gimplib.)
582 2000-05-30 Tor Lillqvist <tml@iki.fi>
584 * gutils.c (g_locale_get_codeset): Implement on Win32.
586 * glib.def: Add g_get_codeset.
588 * tests/Makefile.am (EXTRA_DIST): makefile.cygwin* has been
589 renamed to makefile.mingw*.
591 Tue May 30 16:01:32 2000 Owen Taylor <otaylor@redhat.com>
593 * glib.h gutils.c: Move the g_locale_get_codeset() up in the
594 header file to correspond to to comments about memory
595 management. Rename to g_get_codeset() to avoid
596 polluting the g_locale_* namespace, which probably
597 would have g_locale_get_codeset (GLocale *locale).
600 Mon May 29 14:10:35 2000 Owen Taylor <otaylor@redhat.com>
602 * gutils.c (g_locale_get_codeset): Add function to get the
603 codeset name for the current locale.
605 * configure.in acconfig.h: Add check for nl_langinfo(CODESET);
607 Fri May 19 11:39:29 2000 Tim Janik <timj@gtk.org>
609 * gutils.c (g_snprintf):
610 (g_vsnprintf): added argument assertments.
612 * gstring.c (g_string_assign): added argument assertments.
613 (g_string_truncate): make len a guint.
615 Fri May 19 09:00:44 2000 Tim Janik <timj@gtk.org>
617 * gmem.c (g_free): fixed SIZEOF_LONG==4 assumption with
618 ENABLE_MEM_CHECK, from Art Haas <ahaas@neosoft.com>.
620 * gslist.c (g_slist_reverse): shut up compiler.
622 * gscanner.c (g_scanner_get_token_ll): removed inline assignment.
624 * garray.c: remove index>=0 checks for unsigned indices.
626 * gmain.c (g_idle_prepare): timeout assignment fix.
628 * gtree.c (g_tree_node_rotate_right): shut up compiler.
630 2000-05-13 Tor Lillqvist <tml@iki.fi>
633 * tests/makefile.mingw.in
634 * build-dll: Rename makefile.cygwin(.in) to
635 makefile.mingw(.in), which better describes what it is. Move the
636 build of gmodule, gthread and gobject DLLs to makefiles in those
637 directories. Move resource file handling and build number bump to
638 build-dll, where it sits much cleaner.
641 * Makefile.am (EXTRA_DIST): Update accordingly.
643 * glib.h: Add G_PI, G_PI_2, G_PI_4, G_E, G_LN2, G_LN10 and
644 G_SQRT2. M_PI etc aren't necessarily in <math.h> in strict ISO C
647 * glib.def: Add g_strcanon.
649 * gtree.c (g_tree_node_rotate_left): Remove unused variables.
651 * gwin32.c (g_win32_opendir): Remove unneeded statement.
653 Thu May 4 02:04:46 2000 Tim Janik <timj@gtk.org>
655 * configure.in (STRIP_DUMMY): some Make 3.79 $(strip ) versions are
656 broken and require an empty arg, give it to them.
658 Fri Apr 28 23:54:35 2000 Tim Janik <timj@gtk.org>
660 * setup things for a new sub-library libgobject:
662 * Makefile.am (SUBDIRS): added gobject
664 * glib-config.in: feature -lgobject.
666 * configure.in (AC_OUTPUT): generate gobject/Makefile.
668 * glib.m4 (AM_PATH_GLIB): feature gobject module.
670 * glib.spec.in: added %{prefix}/lib/libgobject-1.3.so.*
672 Fri Apr 28 21:41:49 2000 Tim Janik <timj@gtk.org>
674 * glib.h: added G_STRLOC macro.
675 G_STRUCT_OFFSET(): signedness corrections.
676 (G_CSET_DIGITS): list 0-9.
677 * gscanner.c (g_scanner_config_template): use G_CSET_DIGITS.
683 (g_strreverse): return the modified string instead of void, so
684 calls to these functions can be nested.
685 (g_strcanon): new function, canonicalizes string according to
686 a given character set.
688 Fri Apr 28 19:45:16 2000 Tim Janik <timj@gtk.org>
690 * gasyncqueue.c (g_async_queue_unref): get rid of an unused variable.
692 Wed May 10 19:52:44 2000 Owen Taylor <otaylor@redhat.com>
694 * glib.m4: Print found version when test succeeds.
696 2000-05-04 Tor Lillqvist <tml@iki.fi>
699 * tests/makefile.cygwin.in: Include the common makefile snippet
702 Maybe CVSROOT/modules should be changed so that the 'build' module
703 is included within the glib module (and gtk+, and gimp, and maybe
704 others later), in the same way as the 'macros' module is included
705 in lots of GNOME CVS modules?
707 2000-05-02 Tor Lillqvist <tml@iki.fi>
709 * glib.def: Add new functions.
711 * makefile.{cygwin,msc}.in (glib_OBJECTS): Add new object files.
713 * tests/makefile.{cygwin,msc}.in: Add threadpool-test.
715 2000-04-28 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
717 * gasyncqueue.c: New File implementing an asynchronous queue to be
718 used for asynchronous inter-thread communication.
720 * gthreadpool.c: New File implementing a thread pool to be used
721 for distributing work among several threads.
723 * glib.h: Added the type and function declarations for these two
726 * tests/threadpool-test.c: New File implementing a test for the
727 thread pool. This also checks the asynchronous queue underlying
730 * tests/Makefile.am: Changed accordingly.
732 2000-04-26 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
734 * configure.in: Look for both pthread_create and pthread_join in
735 the thread library. Some systems define one of them, but not both
736 in libc. Arghh. Now we really start a thread and join it later and
737 check, whether the thread to actually ran.
739 * glib.h, gcache.c, gtree.c: Changed the 'value' parameter of
740 g_cache_remove from gpointer to gconstpointer. Dito for the 'key'
741 parameter of g_tree_lookup and g_tree_remove and the 'data'
742 parameter of g_tree_search. This function now takes a function of
743 type GCompareFunc instead of GSearchFunc. This fixes Bug
744 #8267. Thanks to Juan Toledo <toledo@users.sourceforge.net> for
747 * glib.h: Removed declaration of GSearchFunc.
749 * gmem.c: s/GSearchFunc/GCompareFunc/.
751 2000-04-19 Tor Lillqvist <tml@iki.fi>
753 * glib.def: Update entry point list.
755 2000-04-19 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
757 * glib.h (G_TRYLOCK): Made the debugging G_TRYLOCK call also work
758 for compilers with funny G_STMT_(START|END) macros.
760 * tests/thread-test.c: Implemented a check for that.
762 * gutils.c (g_getenv): Changed the win32 part of this function to
763 be thread safe and to make the returned environment string
764 persistent to match the UN*X behavior. This is again a response to
767 * glib.h (G_LOCK_NAME): Removed parentheses around the lock name,
768 as that seems to cause problems for some compilers and really
771 Wed Apr 19 08:32:32 2000 Tim Janik <timj@gtk.org>
773 * gscanner.c (g_scanner_new): make sure that
774 scanner->config->cset_skip_characters is "" instead of NULL, so we
775 don't segfault further on.
777 2000-04-18 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
779 * glib.h, glist.h, gslist.h: Changed the 'data' parameters from
780 gpointer to gconstpointer for the functions
781 g_(list|slist)_(remove|find|find_custom|index), as they do not
782 change this parameter. This fixes bug #4836.
784 * glib.h: Changed comment for g_getenv to reflect, that the
785 returned memory must not be freed. Fixes bug #8983.
787 2000-04-17 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
789 * configure.in, acconfig.h: Add configure test for garbage
790 collector friendliness for GLib. If enabled, ENABLE_GC_FRIENDLY
793 * garray.c, ghash.c, glist.c, gmain.c, gmem.c, gnode.c, gqueue.c,
794 gslist.c, gtree.c: If ENABLE_GC_FRIENDLY is defined, NULLify all
795 memory released by the user, but cached by GLib. This lets a
796 garbage collector have a more correct view of the actually used
799 * garray.c, glib.h: Added g_(array|ptr_array|byte_array)_sized_new
800 functions, that reserve a certain amount of memeory for the array
801 at creation time to avoid reallocation. Fixes bug #6707 from
802 Charles Kerr <ckerr@osserver1.nssl.noaa.gov>.
804 * glib.h, gqueue.c, tests/queue-test.c (main): Renamed
805 g_queue_create to g_queue_new in conformance to all other GLib
808 2000-04-07 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
810 * grand.c (g_rand_new): Fixed bug. Thanks to Marko Kreen
811 <marko@l-t.ee> for reporting that.
813 2000-03-26 Tor Lillqvist <tml@iki.fi>
815 * README.win32: Tell about using the mingw-based gcc, which is
816 much easier than modifying the cygwin gcc to product mingw code
817 for the msvcrt runtime.
819 * makefile.cygwin.in (WIN32APIHEADERS): Kludge to make it work
820 with a "pure" mingw gcc, too.
822 2000-03-24 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
824 * garray.c: Made GArray behave correctly. Now zero_terminated
825 really means, that the element array->data[array->len] exists and
826 is zeroed, and clear means that any unassigned elements obtained
827 through g_array_set_size (the only way to get unassigned elements
828 AFAICT) are zeroed. Added some macros to make the code more
829 obvoius. Also made GPtrArray zero elements after
830 g_ptr_array_set_size. This is done in a portbale way (assignment
831 of NULL instead of just memsetting it to zero), though that might
832 be more portability than we actually want.
834 * Makefile.am, gthread/Makefile.am, gmodule/Makefile.am,
835 tests/Makefile.am: Added various win32 related *.in files to
836 EXTRA_DIST to let 'make distcheck' procude all the corresponding
837 files, which it silently fails to do currently.
839 2000-03-23 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
841 * configure.in: After finding the right thread library (containing
842 e.g. pthread_create) we now search for the right realtime library
843 (containing e.g. sched_get_priority_max). Makes the output of the
844 thread related libraries correct.
846 * gtimer.c (g_usleep): The current implementation of g_usleep
847 (simply calling select) doesn't work reliable for multi-threaded
848 programs on some platforms (bad omen for the main loop....), so I
849 changed the implementation for thread-using programs to wait for a
850 GCond for the specified amount of time (NB: sleep and usleep are
851 not MT-safe in general, because they often use signals).
853 Wed Mar 22 16:49:57 2000 Owen Taylor <otaylor@redhat.com>
855 * gmem.c (g_mem_chunk_area_compare): Fix indentation.
857 2000-03-22 Elliot Lee <sopwith@redhat.com>
859 * gmem.c (g_mem_chunk_area_compare): Fix 64-bitness bug in
860 comparing two pointers more than 4G apart.
862 2000-03-22 Tor Lillqvist <tml@iki.fi>
864 * gutils.c: Move Win32-only includes after inclusion of glib.h, so
865 that G_OS_WIN32 is defined.
867 * glibconfig.h.win32.in: Add GSystemThread.
869 2000-03-22 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
871 * gutils.c (g_get_current_dir): Ok, Marcus Brinkmann
872 <Marcus.Brinkmann@ruhr-uni-bochum.de> convinced me, that 128 KB
873 path length might not be enough for the HURD. So I changed the
874 loop to at least avoid an integer overflow, which could happen at
877 * configure.in: Test for sched_yield as the native yield function
878 first. Corrected typo g_thread_sleep -> g_usleep. Corrected
879 message for the pthread_create test. Negative Priorities are
880 allowed (and used on Solaris), so consider
881 sched_get_priority_min failed only if it returns -1, not <0. Check
882 for sched_get_priority_min also in -lrt, if not found in -lpthread
883 alone and add -lrt to G_THREAD_LIBS then. Remove special case
884 handling of priorities for older solaris versions and posix
885 threads. Thanks to Wan-Teh Chang <wtc@netscape.com> for suggesting
886 some of those changes.
888 * config.guess, config.sub, ltconfig, ltmain.sh:
889 Upgrade to libtool 1.3.4.
891 2000-03-21 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
893 * glib.h, configure.in, gutils.h: always define G_GNUC_EXTENSION,
894 even when not needed by GLib. That's actually also the way, the
895 GLib reference manual describes that macro. Therefore I had to
896 remove the lonesome #include <glibconfig.h> in gutils.c, which
897 doesn't seem to be needed there however. This change should make
898 Ben Gertzfield <che@debian.org> happy.
900 * gutils.c: Furthermore two warnings in gutils.c were voided,
901 which crept in due to my last change.
903 * gutils.c (g_get_current_dir): Allocate only up to 128KB for a
904 pathname. While this is an arbitrary value just like 2048, it
905 seems to be enough (after all, even 4GB is an arbitrary value).
907 2000-03-20 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
909 * gmain.c (g_main_poll): Warn in case of an error during the call
910 to poll(2). Closes Bug#7564 as reported by David Helder
913 * gutils.c (g_get_current_dir): Make g_get_current_dir work on
914 systems with unlimited pathname length like the HURD (It worked
915 there before, but only for pathes shorter than 2048). Closes
916 Bug#4525 as reported by Marcus Brinkmann
917 <Marcus.Brinkmann@ruhr-uni-bochum.de>.
919 2000-03-17 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
921 * giounix.c (g_io_unix_write, g_io_unix_read): Interpret EINTR as
924 2000-03-17 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
926 * configure.in: Added the missing POSIX_NO_YIELD and
927 POSIX_NO_PRIORITIES warning messages.
929 * configure.in: Use AC_TRY_RUN instead of AC_TRY_LINK, to test for
930 real thread support. On solaris pthread_create can be linked to
931 even in -lc, but it doesn't work then.
933 * configure.in: Don't use priorities for threads, when the
934 minimal/maximal priorities couldn't be determined at configure
937 * configure.in, gthread.c: Always define GSystemThread in
938 glibconfig.h to represent a system thread.
940 * configure.in: Do not use native recursive threads, when
941 possibe. We use some features, that they do not expose (namely the
944 * glib.h, gthread.c: Redefined GStaticRecMutex. The functions are
945 now implemented in a different way, which should be way
946 faster. Alsothere are now functions g_static_rec_mutex_unlock_full
947 and g_static_rec_mutex_lock_full to leave/enter a recursive mutex
950 * gthread.c (g_thread_self): Do not test the system_thread to be
951 non-zero to speed things up.
953 * gthread.c (g_mutex_init): Therefore set the system_thread of the
956 * tests/thread-test.c: Rerun all tests once again, but this time
957 we fool the system into thinking, that the available thread system
958 is not native, but userprovided.
960 2000-03-13 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
962 * gqueue.c (g_queue_push_tail_link, g_queue_push_head_link): We
963 want the next and prev pointer of the inserted link to be NULL.
965 2000-03-06 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
967 * configure.in: Another small change to the pthread_.. search
968 pattern. Should work *now* for AIX.
970 2000-03-04 Tor Lillqvist <tml@iki.fi>
972 * gwin32.c (g_win32_error_message): New function that returns the
973 message string for a Win32 error code.
975 * glib.h: Declare it.
977 * glib.def: Export it, plus g_node_copy.
979 2000-03-03 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
981 * configure.in: Make the search for pthread_attr_... prototypes
982 find names at the start of a line also, like it is on AIX. Thanks
983 to Valdis Kletnieks <Valdis.Kletnieks@vt.edu> for the info.
985 Wed Mar 1 10:39:39 2000 Tim Janik <timj@gtk.org>
987 * gslist.c (g_slist_reverse): minor optimization.
989 * testglib.c (g_node_test): added a couple of tests for
993 * gnode.c (g_node_copy): new function to copy subtrees,
994 supplied by dbsears@ix.netcom.com.
995 changed iterator to walk the children list backwards, so
996 we get down from O(n^2) to O(n).
998 * gnode.c (g_node_first_sibling): applied patch from
999 dbsears@ix.netcom.com to optimize access if node->parent
1002 * gutils.c (g_get_any_init): backed out HAVE_PW_GECOS check around
1003 assignment of g_real_name, sicne HAVE_PW_GECOS is never defined and
1004 thus breaks the original code.
1006 * merged changes from 1.2.7.
1008 Fri Jan 28 11:37:41 2000 Owen Taylor <otaylor@redhat.com>
1010 Bug #4156 - Changes vaguely modelled after Scott Gifford's patch
1012 * gtimer.c (g_timer_elapsed): Never report negative times -
1015 * gmain.c (g_timeout_prepare): Guard against unexpected
1016 clock shifts by never setting a timeout of more than
1017 data->interval msecs.
1019 2000-02-27 Tor Lillqvist <tml@iki.fi>
1021 * glib.def: Add new functions.
1023 2000-02-23 Tor Lillqvist <tml@iki.fi>
1025 * README.win32: Add a missing step to the setup instructions for
1026 gcc-2.95.2. Thanks to Arnaud Charlet.
1028 * glib.def: Add missing entry point.
1030 2000-02-18 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
1032 * configure.in: Changed GCC version test to also accept major
1033 versions > 2. Thanks to Ben Gertzfield <che@debian.org> for
1036 Thu Feb 17 12:53:44 2000 Tim Janik <timj@gtk.org>
1038 * gstring.c: changed g_str_hash() to a 31 bit version based on
1039 a submission by Karl Nelson and hand optimized ad absurdum by
1042 * gstring.c: applied patch from havoc for new gstring functions,
1043 added some more sanity checks, coding style fixups.
1045 2000-02-13 Havoc Pennington <hp@pobox.com>
1047 * tests/string-test.c (main): Add tests for the new GString
1050 * testglib.c (main): Add tests for the new GString features
1052 * gstring.c (g_string_insert_len): New function; insert
1053 a given length of string at a given position.
1054 (g_string_append): reimplement in terms of g_string_insert_len
1055 (g_string_append_len): new function
1056 (g_string_insert_c): accept -1 for "pos" arg to mean "append"
1057 (g_string_append_c): reimplement in terms of g_string_insert_c
1058 (g_string_prepend): reimplement in terms of g_string_insert_len
1059 (g_string_prepend_len): new function
1060 (g_string_prepend_c): reimplement in terms of g_string_insert_c
1061 (g_string_insert): reimplement in terms of g_string_insert_len
1063 * glib.h: Declare g_string_insert_len, g_string_append_len,
1064 g_string_prepend_len
1066 Sun Feb 13 08:16:47 2000 Tim Janik <timj@gtk.org>
1068 * configure.in: wtf??? someone destroyed the configure.in, reverting to
1069 an older version from Feb 4 which apears to still work.
1071 2000-02-07 Tor Lillqvist <tml@iki.fi>
1073 * gmodule.rc.in gthread.rc.in: Move to corresponding subdirectories.
1076 * gmodule/Makefile.am
1077 * gthread/Makefile.am: Change accordingly.
1079 * makefile.cygwin: Corresponding changes, some cleanup.
1081 2000-02-05 Tor Lillqvist <tml@iki.fi>
1083 * glib.rc.in gmodule.rc.in gthread.rc.in: New files, for putting
1084 version info in the DLLs on Win32.
1086 * Makefile.am: Generate corresponding *.rc files and distribute
1089 * makefile.cygwin.in: Add rules to automatically bump a "build
1090 number" in the version info in the rc files each time the DLL is
1091 built. But do this only for the person who releases binaries. If
1092 others build the DLLs, the build number is set to zero.
1094 Fri Feb 4 19:36:05 2000 Tim Janik <timj@gtk.org>
1097 * gdataset.c: return stolen data from g_datalist_id_remove_no_notify()
1098 and g_dataset_id_remove_no_notify() to avoid second lookup for common
1101 2000-02-01 Tor Lillqvist <tml@iki.fi>
1104 * gstrfuncs.c (g_filename_to_utf8, g_filename_from_utf8): New
1105 functions for conversion between UTF-8 and the encoding expected
1106 by C runtime functions like open() and stat(), and returned by
1109 Implement them on Win32 where we use the system "ANSI" codepage,
1110 which might be single-byte or double-byte. On Unix, just skip the
1111 issue for now and provide dummy implementations that return a copy
1116 * glib.def: Minor updates.
1118 Wed Jan 26 05:24:38 2000 Tim Janik <timj@gtk.org>
1121 * gmain.c: s/current_time/dispatch_time/ for the dispatch() handlers.
1122 refetch the current time after invocation of poll() to cover up for
1123 the time spent in that function call.
1125 Fri Jan 21 10:18:24 2000 Owen Taylor <otaylor@redhat.com>
1127 * glib.h (G_N_ELEMENTS): Added G_N_ELEMENTS macro to determine
1128 the number of elements in an array.
1130 Sun Jan 9 13:28:36 2000 Tim Janik <timj@gtk.org>
1132 * gstrfuncs.c (g_strtod): correctly fetch the current locale,
1135 1999-12-16 Tor Lillqvist <tml@iki.fi>
1137 * gmodule/gmodule-win32.c: Use FormatMessage to translate system
1138 error codes into textual messages.
1140 1999-11-25 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
1142 * glib.h (G_TRYLOCK): This of course should return TRUE in a
1143 program with a thread-disabled GLib.
1145 1999-11-18 Tor Lillqvist <tml@iki.fi>
1147 * glib.def: g_strjoin was missing.
1149 1999-11-16 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
1151 * acconfig.h, config.h.win32.in, configure.in: Renamed
1152 GLIB_SIZEOF_PTHREAD_T to GLIB_SIZEOF_SYSTEM_THREAD to reflect
1155 * configure.in: Cope with systems, that have a pthread_t type,
1156 that is not a pointer. Hint from Karl Nelson
1157 <kenelson@ece.ucdavis.edu>. Define GLIB_SIZEOF_SYSTEM_THREAD to 4
1158 for Solaris. Cope with systems, that have no default mutex
1159 initialize, like obviously most DCE systems.
1161 * glib.h, gthread.c: Changed the prototype of thread_create and
1162 thread_self to return the system thread into provided memory
1163 instead of a return value. This is necessary, as HPUX has a
1164 pthread_t, that is bigger than the biggest integral type there.
1166 * gthread.c: system_thread is no longer a pointer, but an memory
1167 area of size GLIB_SIZEOF_SYSTEM_THREAD. Changed the
1168 zeroinitialization and the tests for zeroness accordingly.
1170 1999-11-09 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
1172 * configure.in: Create docs/glib-config.1 from
1173 docs/glib-config.1.in. Makes 'make distcheck' happy (and me too).
1175 * glib-config.1: Removed from CVS, as it is a generated file.
1177 1999-11-08 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
1179 * configure.in: Make the test for getpwuid_r work on newer AIX
1180 versions, too. Still works on Solaris and Linux. Patch from Craig
1181 Rodrigues <rodrigc@mediaone.net>.
1183 1999-11-08 Tor Lillqvist <tml@iki.fi>
1185 * gwin32.c (g_win32_getlocale): Look at env vars LC_ALL, LC_CTYPE
1186 and LANG first. Some refinements to the sublanguage logic.
1188 1999-11-04 Tor Lillqvist <tml@iki.fi>
1190 * makefile.{cygwin,msc}.in: Add gwin32 object. Add rule to make .i
1191 (preprocessed source) files.
1193 1999-11-01 Tor Lillqvist <tml@iki.fi>
1196 * glib.def: Rename Win32-only functions from gwin_* to g_win32_*
1197 to match the GLib naming conventions.
1202 * Makefile.am: Move the Win32-only functions to the new
1205 1999-10-31 Tor Lillqvist <tml@iki.fi>
1207 * gutils.c (gwin_getlocale): New Win32-specific function, returns
1208 a Unixish current locale string (en, zh_TW etc).
1210 * glib.h: Declare it.
1212 * glib.def: Export it.
1214 * testglib.c: Test it.
1216 * gmessages.c (Win32: ensure_stdout_valid): Some improvements,
1217 make sure we don't call AllocConsole several times, which I think
1220 Sun Oct 31 18:55:01 1999 ape@spacetec.no (Asbjorn Pettersen)
1222 * gcache.c (g_cache_remove): Test if node is NULL.
1223 If not tested, GIMP's script-fu will crash.
1225 Sun Oct 17 18:11:40 1999 Tim Janik <timj@gtk.org>
1227 * gdataset.c (g_data_set_internal): remove g_dataset_global_lock around
1228 destroy() notification here as well.
1230 1999-10-15 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
1232 * gdataset.c (g_datalist_clear_i): Avoid Freezing, when g_datalist
1233 is called recursivly. Reported by Ola Andersson <rand@ling.umu.se>.
1235 Tue Oct 12 14:17:12 1999 Tim Janik <timj@gtk.org>
1237 * glib.h: removed useless g_string(x) macro that cluttered the namespace
1238 and was just a poor wrapper around the cpp '#' symbol, use #x if you
1239 need to work around this.
1240 added new macro G_STRINGIFY(arg) that will convert arg to a string,
1241 no matter whether it contains macros or not.
1243 1999-10-12 Tor Lillqvist <tml@iki.fi>
1245 * config.h.win32.in: Define the new GLIB_SIZEOF_* constants here,
1248 * glib.h: Small Win32 comments improvement.
1250 Tue Oct 12 12:16:12 1999 Tim Janik <timj@gtk.org>
1252 * gmessages.c (g_printf_string_upper_bound): completly new implementation
1253 for printf string upper bounds calculation.
1254 we handle all glibc 2.1 format specifiers now, except for positional
1255 parameters (%nn$...) and wide char strings, plus some obscure upper
1256 case variants of the standard conversions. this fixes a lot of
1257 bugs in the old code, i.e.
1258 - NULL format strings
1259 - floats with exponents >+24
1261 - precision specifications in general
1262 - negative field widths
1263 - %p for SIZEOF_VOID_P > 4 platforms
1264 we now issue warnigns in places where the old code would have
1265 caused buffer overruns anyways. warnings are suppressed when invoked
1266 from glogv(), to avoid infinite recursions if someone passes a log
1267 message that comes with really obscure format specifications.
1269 Tue Oct 12 11:49:00 1999 Tim Janik <timj@gtk.org>
1271 * gstrfuncs.c: nuked old g_printf_string_upper_bound() version.
1273 Tue Oct 12 03:34:40 1999 Tim Janik <timj@gtk.org>
1275 * glib.h: added GFloatIEEE754 and GDoubleIEEE754 unions to access sign,
1276 mantissa and exponent of IEEE floats and doubles (required by the new
1277 version of g_printf_string_upper_bound). the unions are endian specific,
1278 we handle G_LITTLE_ENDIAN and G_BIG_ENDIAN as of currently. ieee floats
1279 and doubles are supported (used for storage) by at least intel, ppc and
1281 http://twister.ou.edu/workshop.docs/common-tools/numerical_comp_guide/ncg_math.doc.html
1283 Mon Oct 11 18:01:49 1999 Tim Janik <timj@gtk.org>
1285 * configure.in: added additional checks to figure sizes of size_t,
1286 ptrdiff_t and intmax_t (required by g_printf_string_upper_bound).
1288 Wed Oct 6 12:44:23 PDT 1999 Manish Singh <yosh@gimp.org>
1290 * configure.in: blah. use G_WITH_CYGWIN instead of G_HAVE_CYGWIN
1292 1999-10-05 Tor Lillqvist <tml@iki.fi>
1294 * glib.h: (Win32) Drop the mapping of POSIX function names to the
1295 underscored versions, it's unnecessary after all. With MSVC we get
1296 them from oldnames.lib, with gcc-2.95 and mingw32 from
1297 -lmoldname-msvc. Add comment about what headers to include for
1300 * glibconfig.h.win32.in: Don't define WIN32 and NATIVE_WIN32.
1302 * gerror.c (g_on_error_query): (Win32) Slightly increased verbosity.
1304 * build-dll: Don't strip.
1306 * tests/string-test.c tests/dirname-test.c: Use G_OS_WIN32.
1308 * glib.def: Add g_thread_use_default_impl.
1310 Sun Oct 3 19:46:55 PDT 1999 Manish Singh <yosh@gimp.org>
1312 * configure.in: use G_HAVE_CYGWIN instead of G_OS_FEATURE_CYGWIN
1314 Sun Oct 3 19:25:42 PDT 1999 Manish Singh <yosh@gimp.org>
1318 * glibconfig.h.win32: G_OS_FOO #defines. I *think* I got the cygwin
1319 and beos stuff right, but I haven't tested it. The respective
1320 porters should fix any screwups
1330 * testglib.c: use G_OS stuff
1332 Wed Sep 22 01:53:18 1999 Tim Janik <timj@gtk.org>
1334 * glib.h (NULL): define NULL as (0L) if __cplusplus is defined, to
1335 avoid "ANSI C++ forbids implicit conversion from `void *' in argument
1336 passing" errors upon NULL usage in C++ programs (gcc-2.95 is on crack
1337 for erroring out on this, instead of just issueing a warning).
1339 * glib.h (g_trash_stack_pop): use uncasted NULL again.
1341 Fri Sep 17 10:24:45 1999 Tim Janik <timj@gtk.org>
1343 * gmem.c (g_mem_chunk_compute_size) (g_mem_chunk_new): applied patch
1344 from Soeren Sandmann <sandmann@daimi.au.dk>, to force mem chunk's area
1345 sizes to be a multitiple of atom_size, and to eliminate the MAX_MEM_AREA
1346 restriction of 65536 bytes. we also catch cases where users pass an area
1347 size < atom size with a return_if_fail statement now (which is ok,
1348 because previously this lead to memory corruption anyways).
1350 Thu Sep 16 13:19:54 1999 Tim Janik <timj@gtk.org>
1352 * glib.h (g_trash_stack_pop): add explicit (GTrashStack*) cast for NULL
1353 pointer to cure ANSI C++ error.
1355 Mon Sep 13 23:25:59 1999 Tim Janik <timj@gtk.org>
1357 * gmessages.c (g_logv): in case we have to abort the program,
1358 debugging is enabled and we are not called recursively, try
1359 to abort with raise (SIGTRAP) first, so developers may ignore
1360 certain failure conditions during debugging stage.
1362 Thu Aug 26 15:09:36 1999 Tim Janik <timj@gtk.org>
1365 * gmodule/Makefile.am:
1366 * gthread/Makefile.am: added --export-dynamic so we can load dynmic
1367 modules, (required, according to the libtool 1.3.3 docu).
1369 1999-07-23 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
1371 * grand.c (g_rand_new): Use /dev/urandom, as it doesn't block,
1372 which /dev/random might do. Do not XOR the time, when getting the
1373 seed form /dev/urandom, as this is good itself. Prevent the
1374 initial seed from being zero, which causes the PRNG to produce
1375 only zeros. Hints from Colin Plumb <colin@pgp.com>.
1377 1999-08-17 Tor Lillqvist <tml@iki.fi>
1379 * glib.h (g_trash_stack_push): Add a cast.
1382 * glist.c: Make the inline functions static inline, and add
1383 separate extern wrappers. Not all compilers produce callable entry
1384 points for inline functions, even if gcc does.
1386 Sun Aug 15 02:47:14 1999 Tim Janik <timj@gtk.org>
1388 * glib.h (g_trash_stack_pop): eliminate memset() call, since string.h
1389 has not neccessarily been included prior to glib.h.
1391 Mon Aug 2 21:03:10 1999 Tim Janik <timj@gtk.org>
1393 * configure.in: added --enable-msg-prefix option.
1395 * gmessages.c (g_log_default_handler): feature "prg_name (pid:%u): "
1396 if --enable-msg-prefix was selected (use "(process:%u): " if
1397 g_get_prgname () returns NULL, along the lines of g_on_error_query).
1399 1999-08-03 Tor Lillqvist <tml@iki.fi>
1403 * tests/strfunc-test.c: Rename g_strccpy to g_strcompress and
1404 g_strecpy to g_strescape per Tim Janik's suggestion. Dropped the
1405 destination parameter, always g_malloc a new string. Fix bug in
1406 g_strcompress, octal digits were gobbled up without limit, should
1409 Sources that use g_strescape must have ifdefs to be compilable
1410 both with GLib 1.2 and 1.3.
1412 Sat Jul 31 17:52:03 PDT 1999 Manish Singh <yosh@gimp.org>
1415 * gstrfuncs.c: the #define for g_strescape interfered with the
1416 compilation of the function, so just remove the function and
1417 note that it's deprecated in the header
1419 1999-08-01 Tor Lillqvist <tml@iki.fi>
1421 * gstrfuncs.c (g_strccpy, g_strecpy): New functions.
1423 * glib.h: Declare and document them. Define the deprecated
1424 g_strescape as a macro that calls g_strecpy.
1426 * tests/strfunc-test.c (main): Test them.
1428 * makefile.{cygwin,msc}.in
1429 * tests/makefile.{cygwin,msc}.in: Remove gstack and its test
1432 * glib.def: Additions and removals.
1434 * README.win32: Improve gcc build instructions.
1436 * build-dll: Also build import library for MSVC.
1438 Sat Jul 24 20:11:35 1999 Tim Janik <timj@gtk.org>
1440 * merged GLib 1.3.0 with glib-1.2.3 from Fri Jul 16 22:18:36.
1441 * incorporated proposed cleanups from gtk-devel-list.
1443 * bumped version number to GLib-1.3.1
1449 removed string tokenisation (we got g_strsplit() and g_strjoin()
1450 already) and readline functions.
1451 s/g_list_delete/g_list_delete_link.
1452 implemented g_slist_delete_link.
1453 removed notion of g_ATEXIT() macro in glib.h, this is an *internal*
1454 macro, g_atexit() is provided for public consumption.
1455 added GTrashStack inline utility functions.
1456 reimplement double eneded queues.
1457 removed GStack implementation, people can use a queue or a (singly)
1458 linked list for this task.
1459 deprecated g_strescape(), we need the SunOS variants here.
1461 * gdate.c: added DEBUG_MSG() macro to wrap old messages.
1465 * upgrade to libtool 1.3.3.
1467 1999-07-21 Tor Lillqvist <tml@iki.fi>
1469 Win32: With the latest gcc (2.95, pre-release), we can have binary
1470 compatibility with MSVC by using the switch -fnative-struct. No
1471 longer build DLLs with .gcc in the name when using gcc.
1473 * README.win32: Renew gcc build instructions.
1475 * build-dll: Comments change, handle also .a files.
1477 * makefile.cygwin.in
1478 * tests/makefile.cygwin.in: Remove .gcc from DLL name.
1480 1999-07-13 Tor Lillqvist <tml@iki.fi>
1482 * README.win32: Correct URL for mingw runtime sources.
1484 * build-dll: Combine commands with &&.
1486 * glib.h: Map also rmdir() and hypot() for MSVCRT library.
1488 * makefile.cygwin.in
1489 * tests/makefile.cygwin.in: New DLL naming style. GCC-compiled DLLs are
1490 now called *.gcc.dll, to avoid binary incompatibilities with
1491 MSVC-compiled versions.
1493 * makefile.msc.in: Cosmetics.
1495 1999-07-07 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
1497 * configure.in: Test for pthread_join rather than for
1498 pthread_create to determine the right thread-lib. Makes it work on
1499 mips-sgi-irix6.5. Hitn from to Jari Vuoksenranta
1500 <javu@piano.ux.phys.jyu.fi>.
1502 1999-07-02 Tor Lillqvist <tml@iki.fi>
1504 * README.win32: Note about need to fix another bug in the mingw32
1507 * makefile.msc.in: Debugging turned on via an nmake variable,
1508 no need to edit the makefile.
1510 1999-07-01 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
1512 * configure.in, acconfig.h, gutils.c: Added a g_memmove
1513 replacement for platforms without memmove, where bcopy can't
1514 handle overlapping copies and the corresponding checks, which is
1515 taken form the PERL Configure routine.
1517 * glib.h: Updated the commentary about g_memmove to be right and
1520 * configure.in: Removed test for rand_r, as it isn't used anymore.
1522 1999-06-30 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
1524 * glib.h, grand.c: Finally removed the g_random_normal and
1525 g_rand_normal functions.
1527 1999-06-28 Tor Lillqvist <tml@iki.fi>
1529 * glib.def: Add missing export of g_strncasecmp.
1531 1999-06-21 Jose Mercado <jmercado@mit.edu>
1533 * glib.spec.in: Changed version number (1.1->1.3) in files section
1534 to allow rpm to build packages again.
1536 1999-06-21 Tor Lillqvist <tml@iki.fi>
1538 * README.win32: Update the pthreads snapshot version we want.
1539 Advice how to hand-expand the makefile.*.in files.
1541 * config.h.win32.in: Define values needed by Sebastian Wilhelmi's
1544 * glib.def: Add new functions.
1546 * glibconfig.h.win32.in: Update the pthreads snapshot version.
1549 * gthread.c: Include config.h, guard inclusion of unistd.h. When
1550 using gcc on Win32, g_thread_functions_for_glib_use must be marked
1551 for export here, too.
1553 * gtimer.c: Implement g_usleep on native Win32 using Sleep (which
1554 only has millisecond granularity, though).
1556 * makefile.cygwin.in
1557 * makefile.msc.in: Update pthreads snapshot version. File
1558 name changes. Remove testgthread.
1560 * tests/makefile.cygwin.in
1561 * tests/makefile.msc.in: Add thread-test. Link with gthread lib.
1563 1999-06-18 Jeff Garzik <jgarzik@pobox.com>
1565 * tests/Makefile.am: Re-order tests in alpha order.
1567 1999-06-18 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
1569 * configure.in: Changed test for pthread_attr_setstacksize from
1570 AC_TRY_COMPILE to AC_TRY_LINK.
1572 1999-06-17 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
1574 * configure.in, acglib.m4, acconfig.h, glib.h, gthread.c:
1575 Completed the thread support in GLib. Thread creation,
1576 prioritizing threads, yielding, joining threads as well as
1577 reader/writer locks and recursive mutexes are now in place. Please
1578 test heavily on your platform. It is so far tested on
1579 Linux/i386/pthreads, Solaris/Sparc/pthreads and
1580 Solaris/Sparc/solaristhreads.
1582 * gtimer.c, glib.h: Implement g_usleep (gulong microseconds) for
1583 thread safe sleeping. (sleep() is not MT-safe at all!)
1585 * gutils.c: Avoid compiler warning.
1587 * tests/Makefile.am, tests/thread-test.c: New program to test some
1588 aspects of the thread implementation.
1590 * gthread.c, Makefile.am: Renamed from gmutex.c to reflect the
1593 * configure.in: Purged all appearances of nspr.
1595 Wed Jun 2 11:42:46 PDT 1999 Manish Singh <yosh@gimp.org>
1601 * ltmain.sh: upgrade to libtool 1.3.2 (BeOS changes merged)
1603 1999-05-29 Tor Lillqvist <tml@iki.fi>
1605 * gstrfuncs.c (g_strescape): Backslashify also '"' characters.
1607 * glib.h: Document g_strescape.
1609 1999-05-12 Tor Lillqvist <tml@iki.fi>
1611 * glib.h (Win32): Map fileno to _fileno for mingw32. Map fstat to
1614 * README.win32: Advice also to remove -lmoldname in the
1615 patch to the egcs-1.1.2 spec file.
1617 Wed May 12 00:23:55 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
1619 * gmodule/Makefile.am: Another small fix.
1621 1999-05-08 Tor Lillqvist <tml@iki.fi>
1623 * Makefile.am tests/Makefile.am: Correct rules for making the
1624 win32-related files that are made from corresponding .in files.
1625 Is there a cleaner way than explicitly writing rules that invoke
1628 Fri Jul 16 22:18:36 PDT 1999 Manish Singh <yosh@gimp.org>
1631 * ltmain.sh: upgrade to libtool 1.3.3
1633 1999-06-18 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
1635 * gdate.c, gstrfuncs.c, gstring.c: Fixed the use of the
1636 is..... and to..... macros, which take unsigned chars, not chars!
1637 Thanks to Morten Welinder <terra@diku.dk> for pointing this out.
1639 Thu Jun 3 16:30:31 PDT 1999 Manish Singh <yosh@gimp.org>
1641 * gerror.c (g_on_error_query): check isatty() before querying so
1642 we don't loop endlessly
1644 Sat May 29 11:16:29 PDT 1999 Manish Singh <yosh@gimp.org>
1650 * ltmain.sh: upgrade to libtool 1.3.2
1652 1999-05-26 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
1654 * gmain.c: provide a poll prototype for SunOS, as they do not do
1655 it self. Hint from Christian Parg <cparg@fs-design.de>.
1657 Tue May 25 12:23:07 1999 Owen Taylor <otaylor@redhat.com>
1659 * gstrfuncs.c (g_strchug): Use g_memmove() not memmove().
1660 (Reported by Charles Levert <charles@comm.polymtl.ca>)
1662 Mon May 10 22:03:52 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
1664 * Released GLib 1.2.3
1666 1999-05-08 Tor Lillqvist <tml@iki.fi>
1668 * Makefile.am tests/Makefile.am: Correct rules for making the
1669 win32-related files that are made from corresponding .in files.
1670 Is there a cleaner way than explicitly writing rules that invoke
1673 Sat May 1 10:18:01 PDT 1999 Manish Singh <yosh@gimp.org>
1679 * ltmain.sh: upgrade to libtool 1.3
1681 1999-04-30 Tor Lillqvist <tml@iki.fi>
1683 * Makefile.am: Don't distribute glibconfig.h.win32.in, but
1684 glibconfig.h.win32. Generate it when making a dist. Also generate
1685 makefile.msc and config.h.win32 from corresponding .in files when
1688 * configure.in: Also substitute @GLIB_INTERFACE_AGE@ and
1689 @GLIB_BINARY_AGE@ (needed in config.h.win32).
1691 * glibconfig.h.win32.in: Use static mutex structure and initial
1692 value corresponding to the 1999-04-07 snapshot of pthreads-win32.
1694 * tests/Makefile.am: Distribute makefile.msc. Generate it when
1697 * tests/makefile.msc.in: New file.
1699 * tests/node-test.c: Include <stdlib.h> for exit().
1701 Thu Apr 29 02:16:36 1999 Tim Janik <timj@gtk.org>
1703 * gstrfuncs.c: minor code cleanups.
1705 Tue Apr 27 13:11:29 1999 Owen Taylor <otaylor@redhat.com>
1707 * gmain.c (g_main_poll): Mask out ERR HUP and NVAL from
1708 the events field so we don't give IRIX fits.
1710 Tue Apr 20 08:42:22 1999 Tim Janik <timj@gtk.org>
1712 * gscanner.c (g_scanner_unexp_token): behave conservative with
1713 G_TOKEN_IDENTIFIER_NULL and always assume scanner->value.v_string
1714 to be "null" in that case.
1716 1999-04-20 Havoc Pennington <hp@pobox.com>
1718 * gutils.c (g_vsnprintf): When using the vsnprintf()
1719 implementation, '\0'-terminate the resulting string
1720 and return its length rather than -1.
1722 Mon Apr 19 13:42:21 1999 Owen Taylor <otaylor@redhat.com>
1724 * gmain.c (g_main_iterate): Added missing
1725 #ifdef G_THREADS_ENABLED. (I never liked G_THREADS_ENABLED in
1728 1999-04-18 Havoc Pennington <hp@pobox.com>
1730 * gutils.c (g_snprintf): When using the vsnprintf()
1731 implementation, '\0'-terminate the resulting string
1732 and return its length rather than -1.
1734 Fri Apr 16 06:52:07 1999 Tim Janik <timj@gtk.org>
1736 * gscanner.c (g_scanner_unexp_token): feature G_TOKEN_EOF as a valid
1737 expected token as well, so we get "- expected end of file" instead of
1738 "- expected (unknown) token <0>".
1740 Tue Apr 13 16:16:14 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
1742 * Released GLib 1.2.2
1744 1999-04-12 Elliot Lee <sopwith@mh69.mh.cuc.edu>
1746 * g_strchug(): s/strcpy/memmove/
1748 1999-04-12 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
1750 * configure.in: Adjusted the test for an unimplemented
1751 getpwuid_r. Info from Michael Pruett <mikep@ugcs.caltech.edu>.
1753 Sun Apr 11 15:07:34 1999 Tim Janik <timj@gtk.org>
1755 * configure.in: bumped versin number to GLib 1.2.2, interface 2,
1760 Sun Apr 11 14:37:06 1999 Tim Janik <timj@gtk.org>
1762 * gstrfuncs.c (g_strcasecmp): always check for s1, s2 != NULL.
1764 Sat Apr 10 19:30:50 1999 Tim Janik <timj@gtk.org>
1766 * glib.h: removed braces around inline strings for the G_GNUC_FUNCTION
1767 and G_GNUC_PRETTY_FUNCTION macros, so the macros can be used for compile
1768 time string concatenation.
1770 Thu Apr 8 19:53:19 1999 Owen Taylor <otaylor@redhat.com>
1772 * gmain.c (g_main_iterate): Check for two threads
1773 calling g_main_iterate at once.
1775 * gmain.c: If the set of poll file descriptors changes
1776 during a call to poll(), abort that call, and start
1777 a new poll. My test program still segfaults
1778 obscurely on glibc 2.0 (in read()!!!), but now it works on
1779 glibc 2.1, so I'll blame something else for the other segfault.
1781 1999-03-31 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
1783 * configure.in: Fixed slight bug, that made configure hang on some
1784 systems. Please do not merge this into 1.3 branch. It's taken care
1785 of differently there. Info from J. Rhett Aultman
1786 <cuplan@alley.gator.net>
1788 Wed Mar 24 21:23:47 CST 1999 Shawn T. Amundson <amundson@gtk.org>
1790 * Released GLib 1.2.1
1795 sanity_check: updated
1797 * glibconfig.h.win32.in:
1799 docs/glib-config.1.in:
1800 docs/Makefile.am: Added files used to generate new files.
1802 * glibconfig.h.win32:
1803 docs/glib-config.1: Removed, now generated.
1805 * configure.in: Added to output now-generated files.
1807 Tue Mar 23 13:43:39 PST 1999 Manish Singh <yosh@gimp.org>
1809 * giounix.c: add user_data param to check and prepare functions
1811 Mon Mar 22 03:54:43 1999 Tim Janik <timj@gtk.org>
1814 * gmain.c: add user_data to the GSource ->check and ->prepare functions,
1815 so it can be used to e.g. pass a GPollFd.
1816 (g_main_poll): only add poll records with an events mask != 0 to the
1817 fd_array. don't even bother calling poll_func() if fds=timeout=0.
1818 added debugging printouts around poll_func() invokation that can be
1819 enabled with #define G_MAIN_POLL_DEBUG.
1821 Fri Mar 19 16:29:50 PST 1999 Manish Singh <yosh@gimp.org>
1827 * ltmain.sh: upgrade to libtool 1.2f
1829 * autogen.sh: libtool is not required to autogen glib
1831 * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly
1834 1999-03-18 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
1836 * gmem.c: Fixed another stupid fault of mine: Did
1837 s/g_static_/g_private_/g
1839 Wed Mar 17 03:17:42 1999 Tim Janik <timj@gtk.org>
1841 * configure.in bumped versin number to GLib 1.2.1, interface 1,
1846 * glib.h: added GLIB_CHECK_VERSION() macro similar to
1847 GTK_CHECK_VERSION().
1849 Sun Mar 14 17:50:35 1999 Tim Janik <timj@gtk.org>
1851 * gmem.c (g_mem_chunk_*): changed a bunch of g_assert() statements
1852 to g_return_if_fail().
1854 (g_mem_chunk_print):
1855 (g_mem_chunk_info): removed some extraneous "\n"s at the end of the log
1858 * gtimer.c (g_timer_*): changed a bunch of g_assert() statements
1859 to g_return_if_fail().
1860 * grel.c (g_*): changed a bunch of g_assert() statements to
1861 g_return_if_fail() and added some extra ones to check relation != NULL.
1863 1999-03-12 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
1865 * configure.in: Also accept _Pctime_r instead of ctime_r, while
1866 seraching for the right `_REENTRANT' flag. This is for Digital
1867 UNIX 4.0d. Thanks to Sascha Brawer <sb@adasys.ch>.
1869 Tue Mar 9 23:25:50 1999 Tim Janik <timj@gtk.org>
1871 * configure.in: check for working realloc (NULL,).
1872 * gmem.c (g_realloc): use malloc() for initial allocation on systems
1873 where realloc(NULL,) will not work (this is the case on SunOS, reported
1876 Mon Mar 8 07:42:08 1999 Tim Janik <timj@gtk.org>
1878 * ghook.c (g_hook_unref): when !hook_list->is_setup, wrap the
1879 flag around the call to g_hook_free() to avoid spurious
1880 warnings (happens during destruction phase).
1882 1999-03-03 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
1884 * glibconfig.h.win32, config.h.win32: Moved G_THREADS_IMPL_POSIX
1885 from config.h.win32 to glibconfig.h.win32
1887 * acconfig.h, configure.in, config.h.win32: Added test for DCE
1888 versions of mutex_trylock and cond_timedwait. The win32 versions
1889 are posix, aren't they?
1891 1999-03-02 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
1893 * gmem.c: Fixed a stupid cut'n'paste error of mine. Thanks to
1894 Friedrich Dominicus <Friedrich.Dominicus@inka.de>
1896 1999-03-01 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
1898 * gutils.c (g_get_any_init): Fixed yet another bloody
1899 implementation of getpwuid_r on AIX. Thanks to Olaf Dietsche
1900 <olaf.dietsche+list.gtk@netcologne.de>. I would like a configure
1901 test better than that, but have no idea, how to do that easily.
1903 Sun Feb 21 22:11:51 CST 1999 Shawn T. Amundson <amundson@gtk.org>
1905 * Released GLib 1.2.0
1909 Wed Feb 24 00:08:42 CST 1999 Shawn T. Amundson <amundson@gtk.org>
1911 * *.[ch]: inserted additional note to look for ChangeLog and
1912 AUTHORS file for a log of modifications.
1914 Sun Feb 21 14:01:00 1999 Dr Mike <drmike@redhat.com>
1916 * Made specfile generated, tweaked slightly
1918 Sat May 8 06:00:17 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
1922 gthread/Makefile.am: Better testing reveals better
1923 methods. Fixes for BeOS.
1925 Sat May 8 01:52:29 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
1936 gmodule/gmoduleconf.h.in
1937 gmodule/gmodule-beos.c
1938 gthread/Makefile.am: Port to BeOS by myself and Richard Offer.
1940 1999-05-06 Tor Lillqvist <tml@iki.fi>
1942 * makefile.msc.in makefile.cygwin.in glibconfig.h.win32.in
1943 config.h.win32.in tests/makefile.msc.in tests/makefile.cygwin.in:
1944 New files, used to generate corresponding non-.in files when
1945 making a dist. This is just so the version numbers will be kept in
1946 synch automatically.
1948 * configure.in: Also substitute @GLIB_MAJOR_VERSION@,
1949 @GLIB_MINOR_VERSION@, and @GLIB_INTERFACE_AGE@.
1951 * Makefile.am tests/Makefile.am: Also distribute makefile.cygwin.
1953 * gerror.c (g_on_error_query): On Win32, put up a MessageBox and
1956 * glib.def: Add a couple of functions.
1958 Sat May 1 10:26:20 PDT 1999 Manish Singh <yosh@gimp.org>
1964 * ltmain.sh: upgrade to libtool 1.3
1966 1999-04-25 Tor Lillqvist <tml@iki.fi>
1968 * README.win32: More editing.
1969 * build-dll: Use gcc, not ld to link.
1970 * glib.h: On native Win32 use _unlink().
1971 * gscanner.c: Use corrent NATIVE_WIN32 feature test macro,
1973 * gstring.c: Include <io.h> on Win32 for _read prototype.
1974 * gutils.c: Remove old IO channel code (was in #if 0).
1975 * makefile.cygwin: Don't need to link with kernel32 and msvcrt
1976 explicitly, they are included anyway.
1978 1999-04-24 Tor Lillqvist <tml@iki.fi>
1980 Support added for building using a GNU toolchain on Win32,
1981 i.e. gcc -mno-cygwin on cygwin (a.k.a. mingw32, using egcs-1.1.2).
1983 * README.win32: Updated.
1984 * build-dll makefile.cygwin tests/makefile.cygwin: New files.
1985 * glib.h glib.def glibconfig.h.win32: Slight updates.
1986 * gmain.c: No need to include <fcntl.h> and <io.h> on Win32.
1987 * gmain.c gutils.c testglib.c tests/string-test.c: Test for
1988 NATIVE_WIN32, not _MSC_VER.
1989 * gmutex.c: Must declare g_thread_functions_for_glib_use as
1990 exported (using the GUTILS_C_VAR macro).
1991 * gutils.c gmodule/libgplugin_[ab].c: LibMain not needed.
1992 * gmodule/gmoduleconf.h.win32: Need underscore with gcc.
1993 * gthread/gthread.c: With gcc on Win32, must use memcpy to assign
1994 value of g_thread_functions_for_glib_use (?).
1995 * makefile.msc tests/makefile.msc: Cosmetics.
1997 Fri Apr 23 14:29:25 BST 1999 Tony Gale <gale@gtk.org>
1999 * glib.h: Fix typo in g_string_ncasecmp macro (by me).
2000 Add b_string_strncasecmp macro.
2002 1999-04-22 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
2004 * gutils.c (g_get_any_init): use sysconf (_SC_GETPW_R_SIZE_MAX) as
2005 the new initinal bufsize for getpwuid_r on systems, that support
2006 this. Hint from Holger Duerer <H.Duerer@zait.uni-bremen.de>.
2008 Sat Apr 17 20:55:13 BST 1999 Tony Gale <gale@gtk.org>
2010 * glib.h, gstring.c: Add new g_string functions for reading
2011 from file/socket descriptors, and tokenising strings.
2013 Added various g_string macros.
2015 Tue Apr 13 23:28:32 1999 Tor Lillqvist <tml@iki.fi>
2017 * README.win32: Mention the tests directory.
2019 * glib.def: Add the functions from grand.c.
2021 * glibconfig.h.win32: Add unsigned max values, and the format
2024 * makefile.msc: Add grand.
2026 * tests/{date-test,node-test}.c: Include <stdlib.h> for exit().
2028 * tests/makefile.msc: New file.
2030 1999-04-12 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
2032 * glib.h: Moved struct declaration up. Style fixes.
2034 * grand.c: Style fixes. Only try to open /dev/random once.
2036 * tests/rand-test.c (main): New tests; Slight bug fix.
2038 1999-04-09 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
2040 * grand.c, tests/rand-test.c: New files to implement the Mersenne
2041 Twister Pseudo Random Number Generator.
2043 * glib.h, AUTHORS, Makefile.am, tests/Makefile.am: Changed
2046 Thu Apr 8 21:12:30 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
2048 * Released GLib 1.3.0
2050 1999-03-30 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
2052 * configure.in: Added a check for the right format to printf and
2053 scanf long longs. It is %qi instead of %lli on FreeBSD for
2056 1999-03-28 Raja R Harinath <harinath@cs.umn.edu>
2058 * Makefile.am (glibconfig.h): Make sure `glibconfig.h' exists
2059 after the rule is fired.
2060 (install-exec-local): Install glibconfig.h only if the contents
2061 are different from the currently installed glibconfig.h.
2063 1999-03-26 Raja R Harinath <harinath@cs.umn.edu>
2065 * Makefile.am (configexecincludedir): Rename from
2066 configincludedir so that glibconfig.h will be installed
2067 as part of `make install-exec'.
2069 Thu Mar 25 22:45:47 1999 Tor Lillqvist <tml@iki.fi>
2071 * config.h.win32: Update version numbers.
2073 * glibconfig.h.win32: Update version numbers and pthreads-win32-
2074 related magic values.
2076 * README.win32: Some improvements.
2078 * makefile.msc: Add gqueue and gstack. Correct version number.
2080 Fri Mar 19 16:29:50 PST 1999 Manish Singh <yosh@gimp.org>
2086 * ltmain.sh: upgrade to libtool 1.2f
2088 * autogen.sh: libtool is not required to autogen glib
2090 * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly
2093 1999-03-18 Jeff Garzik <jgarzik@pobox.com>
2095 * glib.def: Add new g_list, g_stack, g_queue functions.
2097 1999-03-18 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
2099 * configure.in: added new AC_SUBST(GTHREAD_COMPILE_IMPL_DEFINES)
2100 to hold various defines to get the right thread implementation on
2101 different platforms. Also look in -ldce for pthread_create. Should
2102 make it work on HP-UX 10.x. Information from "D. Emilio Grimaldo
2103 Tunon" <emilio_tunon@nl.compuware.com>.
2105 1999-03-17 Jeff Garzik <jgarzik@pobox.com>
2107 * gstack.c, gqueue.c:
2108 Add copyright, clean up code a bit.
2110 1999-03-17 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
2112 * configure.in: Added missing values for G_MAXU(SHORT|INT|LONG) on
2113 platforms with only /usr/include/values.h.
2115 * acconfig.h: Removed unnecessary macros.
2117 * glibconfig.h.win32, config.h.win32: Moved G_THREADS_IMPL_POSIX
2118 from config.h.win32 to glibconfig.h.win32. Taken from glib 1.2
2121 * configure.in: Also accept _Pctime_r instead of ctime_r, while
2122 seraching for the right `_REENTRANT' flag. This is for Digital
2123 UNIX 4.0d. Taken from glib 1.2 branch.
2125 Wed Mar 17 03:14:56 1999 Tim Janik <timj@gtk.org>
2127 * glib.h: added GLIB_CHECK_VERSION() macro similar to
2128 GTK_CHECK_VERSION().
2130 Wed Mar 17 01:46:28 1999 Tim Janik <timj@gtk.org>
2132 * merges from glib-1-2:
2134 Sun Mar 14 17:50:35 1999 Tim Janik <timj@gtk.org>
2136 * gmem.c (g_mem_chunk_*): changed a bunch of g_assert() statements
2137 to g_return_if_fail().
2139 (g_mem_chunk_print):
2140 (g_mem_chunk_info): removed some extraneous "\n"s at the end of the log
2143 * gtimer.c (g_timer_*): changed a bunch of g_assert() statements
2144 to g_return_if_fail().
2145 * grel.c (g_*): changed a bunch of g_assert() statements to
2146 g_return_if_fail() and added some extra ones to check relation != NULL.
2148 Tue Mar 9 23:25:50 1999 Tim Janik <timj@gtk.org>
2150 * configure.in: check for working realloc (NULL,).
2151 * gmem.c (g_realloc): use malloc() for initial allocation on systems
2152 where realloc(NULL,) will not work (this is the case on SunOS, reported
2155 Mon Mar 8 07:42:08 1999 Tim Janik <timj@gtk.org>
2157 * ghook.c (g_hook_unref): when !hook_list->is_setup, wrap the
2158 flag around the call to g_hook_free() to avoid spurious
2159 warnings (happens during destruction phase).
2161 1999-03-02 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
2163 * gmem.c: Fixed a stupid cut'n'paste error of mine. Thanks to
2164 Friedrich Dominicus <Friedrich.Dominicus@inka.de>
2166 1999-03-16 Timur Bakeyev <mc@bat.ru>
2168 * configure.in: Fix problem with pthread_create in libc, as running
2169 "gcc test.c -l " is not legal.
2171 1999-03-16 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
2173 * tests/type-test.c: Added a test for the
2174 G_(U)?INT(16|32|64)_FORMAT and G_(MIN|MAX|MAXU)(SHORT|INT|LONG)
2177 * configure.in: Removed G_(U)?INT8_FORMAT again, as it can't be
2180 * configure.in: Added the macros G_MAXU(SHORT|INT|LONG). I do not
2181 know how to handle these on platforms with /usr/include/values.h,
2182 but without /usr/include/limits.h. Please someone add this.
2185 1999-03-15 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
2187 * configure.in: Added the macros G_(U)?INT(8|16|32|64)_FORMAT to
2188 use for printf and (much more important) scanf format strings for
2189 the corresponding GLib types.
2191 * glib.h Added G_(U)?(SHORT|INT|LONG)_FORMAT for consistency. It
2192 however makes no sense to also provide G_(FLOAT|DOUBLE)_FORMAT, as
2193 they are different for printf (f for both) and scanf (f for float,
2194 lf for double). Defining G_INT_FORMAT makes sense however, as we
2195 might want to define gint to something different than int someday
2196 in the future. Idea from Sascha Brawer <sb@adasys.ch>.
2198 1999-03-14 Jeff Garzik <jgarzik@pobox.com>
2201 Commented out debugging output.
2203 * tests/Makefile.am, tests/date-test.c:
2204 Added test of the GDate module, based closely on testgdate.c.
2206 * tests/Makefile.am:
2207 Bugfix - compile tests with @GLIB_DEBUG_FLAGS@.
2209 1999-03-14 Raja R Harinath <harinath@cs.umn.edu>
2211 * configure.in (glibconfig.h): Remove widechar tests and defines.
2212 (fd_set): Change the grep for `fd_mask' to search for `fd_set'.
2213 * gerror.c (fd_mask): Remove conditional typedef. It is not used
2214 elsewhere in the file.
2215 * gmain.c (fd_mask): Likewise.
2217 1999-03-12 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
2219 * configure.in: Test for posix threads first, then for dce threads.
2221 1999-03-11 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
2223 * configure.in: Revamped the thread configure stuff. Now dce
2224 threads (old posix draft) are recogniced. This is necessary,
2225 because dce threads are in fact working quite differently from
2226 posix threads. Also changed the conditions for checking for MT
2227 safe functions a bit, because G_THREADS_IMPL_NONE still have to
2228 compile thread safe. NOTE: Please do not commit my change to
2229 glib-1-2/{acconfig.h,configure.in,config.h.win32} from 1999-03-03,
2230 as the current change will take care of that too.
2232 Tue Mar 9 14:37:32 1999 Jeff Garzik <jgarzik@pobox.com>
2234 * Makefile.am, glib.h, gstack.c, gqueue.c,
2235 tests/Makefile.am, tests/queue-test.c, tests/stack-test.c:
2236 Added stack, queue ADTs and related tests.
2239 New g_list_delete() function.
2241 Sat Mar 6 11:03:08 1999 Asbjorn Pettersen <ape@lrdpf.spacetec.no>
2243 * gutils.c (g_get_any_init): add OS/2 changes.
2244 change '\\' in HOME to '/'.
2246 1999-03-03 Josh MacDonald <jmacd@spin.dsl.pacbell.net>
2248 * glib.def: g_spaced_primes_closest was omitted here, so I
2249 couldn't build Xdelta on Windows.
2251 1999-03-01 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
2253 * gutils.c (g_get_any_init): Fixed yet another bloody
2254 implementation of getpwuid_r on AIX. Thanks to Olaf Dietsche
2255 <olaf.dietsche+list.gtk@netcologne.de>. I would like a configure
2256 test better than that, but have no idea, how to do that easily.
2258 Sat Feb 27 01:18:47 1999 Tim Janik <timj@gtk.org>
2260 * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started
2263 * configure.in: set glib version to 1.3.0.